mailarchive of the ptxdist mailing list
 help / color / mirror / Atom feed
* [ptxdist] [PATCH] websocat: new package
@ 2023-08-08 12:39 jonringle
  2023-08-09  6:00 ` Michael Olbrich
  0 siblings, 1 reply; 2+ messages in thread
From: jonringle @ 2023-08-08 12:39 UTC (permalink / raw)
  To: ptxdist; +Cc: Jon Ringle

From: Jon Ringle <jringle@gridpoint.com>

Netcat, curl and socat for WebSockets

Signed-off-by: Jon Ringle <jringle@gridpoint.com>
---
 rules/websocat.cargo.make | 1265 +++++++++++++++++++++++++++++
 rules/websocat.in         |    8 +
 rules/websocat.make       |   65 ++
 3 files changed, 1338 insertions(+)
 create mode 100644 rules/websocat.cargo.make
 create mode 100644 rules/websocat.in
 create mode 100644 rules/websocat.make

diff --git a/rules/websocat.cargo.make b/rules/websocat.cargo.make
new file mode 100644
index 0000000..97adc28
--- /dev/null
+++ b/rules/websocat.cargo.make
@@ -0,0 +1,1265 @@
+# -*-makefile-*-
+#
+# Copyright (C) 2023 by Jon Ringle <jringle@gridpoint.com>
+#
+# For further information about the PTXdist project and license conditions
+# see the README file.
+#
+
+#
+# WARNING: This file is generated with 'ptxdist cargosync websocat' and
+# should not be modified manually!
+#
+
+WEBSOCAT_CARGO_LOCK_MD5 := 12054b940a10e3a1fe8de99c07d8fed4
+
+WEBSOCAT_ADLER_1_0_2_MD5		:= 669215548c64019c08c92b2c1afd3deb
+WEBSOCAT_ADLER_1_0_2_URL		:= https://crates.io/api/v1/crates/adler/1.0.2/download
+WEBSOCAT_ADLER_1_0_2_SOURCE	:= $(SRCDIR)/adler-1.0.2.crate
+$(WEBSOCAT_ADLER_1_0_2_SOURCE)	:= WEBSOCAT_ADLER_1_0_2
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_ADLER_1_0_2_SOURCE)
+
+WEBSOCAT_AEAD_0_4_3_MD5		:= d8996d67ebb969d68c8b35ed1858171b
+WEBSOCAT_AEAD_0_4_3_URL		:= https://crates.io/api/v1/crates/aead/0.4.3/download
+WEBSOCAT_AEAD_0_4_3_SOURCE	:= $(SRCDIR)/aead-0.4.3.crate
+$(WEBSOCAT_AEAD_0_4_3_SOURCE)	:= WEBSOCAT_AEAD_0_4_3
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_AEAD_0_4_3_SOURCE)
+
+WEBSOCAT_ANYMAP_0_12_1_MD5		:= 64a3aad83a83e6ec727a4d896dcbc077
+WEBSOCAT_ANYMAP_0_12_1_URL		:= https://crates.io/api/v1/crates/anymap/0.12.1/download
+WEBSOCAT_ANYMAP_0_12_1_SOURCE	:= $(SRCDIR)/anymap-0.12.1.crate
+$(WEBSOCAT_ANYMAP_0_12_1_SOURCE)	:= WEBSOCAT_ANYMAP_0_12_1
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_ANYMAP_0_12_1_SOURCE)
+
+WEBSOCAT_ARGON2_0_4_1_MD5		:= ac28d5811a10ea72ad763bc48e9595f6
+WEBSOCAT_ARGON2_0_4_1_URL		:= https://crates.io/api/v1/crates/argon2/0.4.1/download
+WEBSOCAT_ARGON2_0_4_1_SOURCE	:= $(SRCDIR)/argon2-0.4.1.crate
+$(WEBSOCAT_ARGON2_0_4_1_SOURCE)	:= WEBSOCAT_ARGON2_0_4_1
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_ARGON2_0_4_1_SOURCE)
+
+WEBSOCAT_ATTY_0_2_14_MD5		:= 142cb4b9a653e56e56311f0c883b8582
+WEBSOCAT_ATTY_0_2_14_URL		:= https://crates.io/api/v1/crates/atty/0.2.14/download
+WEBSOCAT_ATTY_0_2_14_SOURCE	:= $(SRCDIR)/atty-0.2.14.crate
+$(WEBSOCAT_ATTY_0_2_14_SOURCE)	:= WEBSOCAT_ATTY_0_2_14
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_ATTY_0_2_14_SOURCE)
+
+WEBSOCAT_AUTOCFG_0_1_8_MD5		:= 9563ddbf0d01fb162d94707f57ad9f40
+WEBSOCAT_AUTOCFG_0_1_8_URL		:= https://crates.io/api/v1/crates/autocfg/0.1.8/download
+WEBSOCAT_AUTOCFG_0_1_8_SOURCE	:= $(SRCDIR)/autocfg-0.1.8.crate
+$(WEBSOCAT_AUTOCFG_0_1_8_SOURCE)	:= WEBSOCAT_AUTOCFG_0_1_8
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_AUTOCFG_0_1_8_SOURCE)
+
+WEBSOCAT_AUTOCFG_1_1_0_MD5		:= 05d77ef52e90ad161fdd41b252420467
+WEBSOCAT_AUTOCFG_1_1_0_URL		:= https://crates.io/api/v1/crates/autocfg/1.1.0/download
+WEBSOCAT_AUTOCFG_1_1_0_SOURCE	:= $(SRCDIR)/autocfg-1.1.0.crate
+$(WEBSOCAT_AUTOCFG_1_1_0_SOURCE)	:= WEBSOCAT_AUTOCFG_1_1_0
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_AUTOCFG_1_1_0_SOURCE)
+
+WEBSOCAT_BASE64_0_9_3_MD5		:= 496ce53f8d4d95bf19e48bb2f31e4a7e
+WEBSOCAT_BASE64_0_9_3_URL		:= https://crates.io/api/v1/crates/base64/0.9.3/download
+WEBSOCAT_BASE64_0_9_3_SOURCE	:= $(SRCDIR)/base64-0.9.3.crate
+$(WEBSOCAT_BASE64_0_9_3_SOURCE)	:= WEBSOCAT_BASE64_0_9_3
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_BASE64_0_9_3_SOURCE)
+
+WEBSOCAT_BASE64_0_10_1_MD5		:= 9ed1fef898024a6aaf3e3878cd83c103
+WEBSOCAT_BASE64_0_10_1_URL		:= https://crates.io/api/v1/crates/base64/0.10.1/download
+WEBSOCAT_BASE64_0_10_1_SOURCE	:= $(SRCDIR)/base64-0.10.1.crate
+$(WEBSOCAT_BASE64_0_10_1_SOURCE)	:= WEBSOCAT_BASE64_0_10_1
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_BASE64_0_10_1_SOURCE)
+
+WEBSOCAT_BASE64CT_1_5_2_MD5		:= d38fbb0f30a2b79d97ac31be7f52300e
+WEBSOCAT_BASE64CT_1_5_2_URL		:= https://crates.io/api/v1/crates/base64ct/1.5.2/download
+WEBSOCAT_BASE64CT_1_5_2_SOURCE	:= $(SRCDIR)/base64ct-1.5.2.crate
+$(WEBSOCAT_BASE64CT_1_5_2_SOURCE)	:= WEBSOCAT_BASE64CT_1_5_2
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_BASE64CT_1_5_2_SOURCE)
+
+WEBSOCAT_BITFLAGS_1_3_2_MD5		:= a295edb6953237ebbdfa8e731229f9a3
+WEBSOCAT_BITFLAGS_1_3_2_URL		:= https://crates.io/api/v1/crates/bitflags/1.3.2/download
+WEBSOCAT_BITFLAGS_1_3_2_SOURCE	:= $(SRCDIR)/bitflags-1.3.2.crate
+$(WEBSOCAT_BITFLAGS_1_3_2_SOURCE)	:= WEBSOCAT_BITFLAGS_1_3_2
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_BITFLAGS_1_3_2_SOURCE)
+
+WEBSOCAT_BLAKE2_0_10_4_MD5		:= e5aa1c3290f0c0aebc33c39e07838561
+WEBSOCAT_BLAKE2_0_10_4_URL		:= https://crates.io/api/v1/crates/blake2/0.10.4/download
+WEBSOCAT_BLAKE2_0_10_4_SOURCE	:= $(SRCDIR)/blake2-0.10.4.crate
+$(WEBSOCAT_BLAKE2_0_10_4_SOURCE)	:= WEBSOCAT_BLAKE2_0_10_4
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_BLAKE2_0_10_4_SOURCE)
+
+WEBSOCAT_BLOCK_BUFFER_0_7_3_MD5		:= a885637c56c780044d778f18420687cc
+WEBSOCAT_BLOCK_BUFFER_0_7_3_URL		:= https://crates.io/api/v1/crates/block-buffer/0.7.3/download
+WEBSOCAT_BLOCK_BUFFER_0_7_3_SOURCE	:= $(SRCDIR)/block-buffer-0.7.3.crate
+$(WEBSOCAT_BLOCK_BUFFER_0_7_3_SOURCE)	:= WEBSOCAT_BLOCK_BUFFER_0_7_3
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_BLOCK_BUFFER_0_7_3_SOURCE)
+
+WEBSOCAT_BLOCK_BUFFER_0_10_3_MD5		:= 7caa371ca22e7a14288920a69c081d40
+WEBSOCAT_BLOCK_BUFFER_0_10_3_URL		:= https://crates.io/api/v1/crates/block-buffer/0.10.3/download
+WEBSOCAT_BLOCK_BUFFER_0_10_3_SOURCE	:= $(SRCDIR)/block-buffer-0.10.3.crate
+$(WEBSOCAT_BLOCK_BUFFER_0_10_3_SOURCE)	:= WEBSOCAT_BLOCK_BUFFER_0_10_3
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_BLOCK_BUFFER_0_10_3_SOURCE)
+
+WEBSOCAT_BLOCK_PADDING_0_1_5_MD5		:= 95414d4f9c612bbe8a061dd2ff0bc519
+WEBSOCAT_BLOCK_PADDING_0_1_5_URL		:= https://crates.io/api/v1/crates/block-padding/0.1.5/download
+WEBSOCAT_BLOCK_PADDING_0_1_5_SOURCE	:= $(SRCDIR)/block-padding-0.1.5.crate
+$(WEBSOCAT_BLOCK_PADDING_0_1_5_SOURCE)	:= WEBSOCAT_BLOCK_PADDING_0_1_5
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_BLOCK_PADDING_0_1_5_SOURCE)
+
+WEBSOCAT_BYTE_TOOLS_0_3_1_MD5		:= 4bd3c3b61fe602e6078615a491e5050a
+WEBSOCAT_BYTE_TOOLS_0_3_1_URL		:= https://crates.io/api/v1/crates/byte-tools/0.3.1/download
+WEBSOCAT_BYTE_TOOLS_0_3_1_SOURCE	:= $(SRCDIR)/byte-tools-0.3.1.crate
+$(WEBSOCAT_BYTE_TOOLS_0_3_1_SOURCE)	:= WEBSOCAT_BYTE_TOOLS_0_3_1
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_BYTE_TOOLS_0_3_1_SOURCE)
+
+WEBSOCAT_BYTEORDER_1_4_3_MD5		:= 1e704be5ddde9d6b5383ef1035309f91
+WEBSOCAT_BYTEORDER_1_4_3_URL		:= https://crates.io/api/v1/crates/byteorder/1.4.3/download
+WEBSOCAT_BYTEORDER_1_4_3_SOURCE	:= $(SRCDIR)/byteorder-1.4.3.crate
+$(WEBSOCAT_BYTEORDER_1_4_3_SOURCE)	:= WEBSOCAT_BYTEORDER_1_4_3
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_BYTEORDER_1_4_3_SOURCE)
+
+WEBSOCAT_BYTES_0_4_12_MD5		:= 1d02fa9f0fca9470a24a05e7c155993d
+WEBSOCAT_BYTES_0_4_12_URL		:= https://crates.io/api/v1/crates/bytes/0.4.12/download
+WEBSOCAT_BYTES_0_4_12_SOURCE	:= $(SRCDIR)/bytes-0.4.12.crate
+$(WEBSOCAT_BYTES_0_4_12_SOURCE)	:= WEBSOCAT_BYTES_0_4_12
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_BYTES_0_4_12_SOURCE)
+
+WEBSOCAT_CC_1_0_73_MD5		:= 8e3a4d0980acef2c4e74485a45de29a9
+WEBSOCAT_CC_1_0_73_URL		:= https://crates.io/api/v1/crates/cc/1.0.73/download
+WEBSOCAT_CC_1_0_73_SOURCE	:= $(SRCDIR)/cc-1.0.73.crate
+$(WEBSOCAT_CC_1_0_73_SOURCE)	:= WEBSOCAT_CC_1_0_73
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_CC_1_0_73_SOURCE)
+
+WEBSOCAT_CFG_IF_0_1_10_MD5		:= 882dbbc613a93f64c3709b0a2bd0d6dc
+WEBSOCAT_CFG_IF_0_1_10_URL		:= https://crates.io/api/v1/crates/cfg-if/0.1.10/download
+WEBSOCAT_CFG_IF_0_1_10_SOURCE	:= $(SRCDIR)/cfg-if-0.1.10.crate
+$(WEBSOCAT_CFG_IF_0_1_10_SOURCE)	:= WEBSOCAT_CFG_IF_0_1_10
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_CFG_IF_0_1_10_SOURCE)
+
+WEBSOCAT_CFG_IF_1_0_0_MD5		:= 74634128440dbc3766bda76fdf0aaa05
+WEBSOCAT_CFG_IF_1_0_0_URL		:= https://crates.io/api/v1/crates/cfg-if/1.0.0/download
+WEBSOCAT_CFG_IF_1_0_0_SOURCE	:= $(SRCDIR)/cfg-if-1.0.0.crate
+$(WEBSOCAT_CFG_IF_1_0_0_SOURCE)	:= WEBSOCAT_CFG_IF_1_0_0
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_CFG_IF_1_0_0_SOURCE)
+
+WEBSOCAT_CHACHA20_0_8_2_MD5		:= c91eb059dc49ce8c5145967b492cd7f8
+WEBSOCAT_CHACHA20_0_8_2_URL		:= https://crates.io/api/v1/crates/chacha20/0.8.2/download
+WEBSOCAT_CHACHA20_0_8_2_SOURCE	:= $(SRCDIR)/chacha20-0.8.2.crate
+$(WEBSOCAT_CHACHA20_0_8_2_SOURCE)	:= WEBSOCAT_CHACHA20_0_8_2
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_CHACHA20_0_8_2_SOURCE)
+
+WEBSOCAT_CHACHA20POLY1305_0_9_1_MD5		:= 5abf1bc1fb30b1a546e9c2636386e0b8
+WEBSOCAT_CHACHA20POLY1305_0_9_1_URL		:= https://crates.io/api/v1/crates/chacha20poly1305/0.9.1/download
+WEBSOCAT_CHACHA20POLY1305_0_9_1_SOURCE	:= $(SRCDIR)/chacha20poly1305-0.9.1.crate
+$(WEBSOCAT_CHACHA20POLY1305_0_9_1_SOURCE)	:= WEBSOCAT_CHACHA20POLY1305_0_9_1
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_CHACHA20POLY1305_0_9_1_SOURCE)
+
+WEBSOCAT_CIPHER_0_3_0_MD5		:= 5f2578209a4d7964623462e402375ac0
+WEBSOCAT_CIPHER_0_3_0_URL		:= https://crates.io/api/v1/crates/cipher/0.3.0/download
+WEBSOCAT_CIPHER_0_3_0_SOURCE	:= $(SRCDIR)/cipher-0.3.0.crate
+$(WEBSOCAT_CIPHER_0_3_0_SOURCE)	:= WEBSOCAT_CIPHER_0_3_0
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_CIPHER_0_3_0_SOURCE)
+
+WEBSOCAT_CLAP_2_34_0_MD5		:= 59ae9122b2946d4d52bc48a1da5c5e06
+WEBSOCAT_CLAP_2_34_0_URL		:= https://crates.io/api/v1/crates/clap/2.34.0/download
+WEBSOCAT_CLAP_2_34_0_SOURCE	:= $(SRCDIR)/clap-2.34.0.crate
+$(WEBSOCAT_CLAP_2_34_0_SOURCE)	:= WEBSOCAT_CLAP_2_34_0
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_CLAP_2_34_0_SOURCE)
+
+WEBSOCAT_CLOUDABI_0_0_3_MD5		:= 1c8b50f8528dd37df7d984e0e4b61bd5
+WEBSOCAT_CLOUDABI_0_0_3_URL		:= https://crates.io/api/v1/crates/cloudabi/0.0.3/download
+WEBSOCAT_CLOUDABI_0_0_3_SOURCE	:= $(SRCDIR)/cloudabi-0.0.3.crate
+$(WEBSOCAT_CLOUDABI_0_0_3_SOURCE)	:= WEBSOCAT_CLOUDABI_0_0_3
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_CLOUDABI_0_0_3_SOURCE)
+
+WEBSOCAT_CORE_FOUNDATION_0_9_3_MD5		:= ae6dd0cd5319220586d8ace4c4be87ce
+WEBSOCAT_CORE_FOUNDATION_0_9_3_URL		:= https://crates.io/api/v1/crates/core-foundation/0.9.3/download
+WEBSOCAT_CORE_FOUNDATION_0_9_3_SOURCE	:= $(SRCDIR)/core-foundation-0.9.3.crate
+$(WEBSOCAT_CORE_FOUNDATION_0_9_3_SOURCE)	:= WEBSOCAT_CORE_FOUNDATION_0_9_3
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_CORE_FOUNDATION_0_9_3_SOURCE)
+
+WEBSOCAT_CORE_FOUNDATION_SYS_0_8_3_MD5		:= d05cbf26ed52299487a802688a1d22cb
+WEBSOCAT_CORE_FOUNDATION_SYS_0_8_3_URL		:= https://crates.io/api/v1/crates/core-foundation-sys/0.8.3/download
+WEBSOCAT_CORE_FOUNDATION_SYS_0_8_3_SOURCE	:= $(SRCDIR)/core-foundation-sys-0.8.3.crate
+$(WEBSOCAT_CORE_FOUNDATION_SYS_0_8_3_SOURCE)	:= WEBSOCAT_CORE_FOUNDATION_SYS_0_8_3
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_CORE_FOUNDATION_SYS_0_8_3_SOURCE)
+
+WEBSOCAT_CPUFEATURES_0_2_5_MD5		:= ebdc1f779823eaad615501b1cd3822b1
+WEBSOCAT_CPUFEATURES_0_2_5_URL		:= https://crates.io/api/v1/crates/cpufeatures/0.2.5/download
+WEBSOCAT_CPUFEATURES_0_2_5_SOURCE	:= $(SRCDIR)/cpufeatures-0.2.5.crate
+$(WEBSOCAT_CPUFEATURES_0_2_5_SOURCE)	:= WEBSOCAT_CPUFEATURES_0_2_5
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_CPUFEATURES_0_2_5_SOURCE)
+
+WEBSOCAT_CRC32FAST_1_3_2_MD5		:= a9d6492a1bd21d93dbc27c32eabd0c70
+WEBSOCAT_CRC32FAST_1_3_2_URL		:= https://crates.io/api/v1/crates/crc32fast/1.3.2/download
+WEBSOCAT_CRC32FAST_1_3_2_SOURCE	:= $(SRCDIR)/crc32fast-1.3.2.crate
+$(WEBSOCAT_CRC32FAST_1_3_2_SOURCE)	:= WEBSOCAT_CRC32FAST_1_3_2
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_CRC32FAST_1_3_2_SOURCE)
+
+WEBSOCAT_CROSSBEAM_DEQUE_0_7_4_MD5		:= 372d983bc911b6099ad1b8ed6087604f
+WEBSOCAT_CROSSBEAM_DEQUE_0_7_4_URL		:= https://crates.io/api/v1/crates/crossbeam-deque/0.7.4/download
+WEBSOCAT_CROSSBEAM_DEQUE_0_7_4_SOURCE	:= $(SRCDIR)/crossbeam-deque-0.7.4.crate
+$(WEBSOCAT_CROSSBEAM_DEQUE_0_7_4_SOURCE)	:= WEBSOCAT_CROSSBEAM_DEQUE_0_7_4
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_CROSSBEAM_DEQUE_0_7_4_SOURCE)
+
+WEBSOCAT_CROSSBEAM_EPOCH_0_8_2_MD5		:= 49b4b022e9fa4cc60376a79ecb39d04f
+WEBSOCAT_CROSSBEAM_EPOCH_0_8_2_URL		:= https://crates.io/api/v1/crates/crossbeam-epoch/0.8.2/download
+WEBSOCAT_CROSSBEAM_EPOCH_0_8_2_SOURCE	:= $(SRCDIR)/crossbeam-epoch-0.8.2.crate
+$(WEBSOCAT_CROSSBEAM_EPOCH_0_8_2_SOURCE)	:= WEBSOCAT_CROSSBEAM_EPOCH_0_8_2
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_CROSSBEAM_EPOCH_0_8_2_SOURCE)
+
+WEBSOCAT_CROSSBEAM_QUEUE_0_1_2_MD5		:= 7c90c5d981a715d9863d6bfcc984d6ed
+WEBSOCAT_CROSSBEAM_QUEUE_0_1_2_URL		:= https://crates.io/api/v1/crates/crossbeam-queue/0.1.2/download
+WEBSOCAT_CROSSBEAM_QUEUE_0_1_2_SOURCE	:= $(SRCDIR)/crossbeam-queue-0.1.2.crate
+$(WEBSOCAT_CROSSBEAM_QUEUE_0_1_2_SOURCE)	:= WEBSOCAT_CROSSBEAM_QUEUE_0_1_2
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_CROSSBEAM_QUEUE_0_1_2_SOURCE)
+
+WEBSOCAT_CROSSBEAM_QUEUE_0_2_3_MD5		:= 836bbd6315ea443caf33fe3394ea4991
+WEBSOCAT_CROSSBEAM_QUEUE_0_2_3_URL		:= https://crates.io/api/v1/crates/crossbeam-queue/0.2.3/download
+WEBSOCAT_CROSSBEAM_QUEUE_0_2_3_SOURCE	:= $(SRCDIR)/crossbeam-queue-0.2.3.crate
+$(WEBSOCAT_CROSSBEAM_QUEUE_0_2_3_SOURCE)	:= WEBSOCAT_CROSSBEAM_QUEUE_0_2_3
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_CROSSBEAM_QUEUE_0_2_3_SOURCE)
+
+WEBSOCAT_CROSSBEAM_UTILS_0_6_6_MD5		:= 66912c6b316cfec144c4fbcbf59bf862
+WEBSOCAT_CROSSBEAM_UTILS_0_6_6_URL		:= https://crates.io/api/v1/crates/crossbeam-utils/0.6.6/download
+WEBSOCAT_CROSSBEAM_UTILS_0_6_6_SOURCE	:= $(SRCDIR)/crossbeam-utils-0.6.6.crate
+$(WEBSOCAT_CROSSBEAM_UTILS_0_6_6_SOURCE)	:= WEBSOCAT_CROSSBEAM_UTILS_0_6_6
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_CROSSBEAM_UTILS_0_6_6_SOURCE)
+
+WEBSOCAT_CROSSBEAM_UTILS_0_7_2_MD5		:= ff67cf2eb9668167782b8012d3b48e7b
+WEBSOCAT_CROSSBEAM_UTILS_0_7_2_URL		:= https://crates.io/api/v1/crates/crossbeam-utils/0.7.2/download
+WEBSOCAT_CROSSBEAM_UTILS_0_7_2_SOURCE	:= $(SRCDIR)/crossbeam-utils-0.7.2.crate
+$(WEBSOCAT_CROSSBEAM_UTILS_0_7_2_SOURCE)	:= WEBSOCAT_CROSSBEAM_UTILS_0_7_2
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_CROSSBEAM_UTILS_0_7_2_SOURCE)
+
+WEBSOCAT_CRYPTO_COMMON_0_1_6_MD5		:= 89e88633cab0e4b6f3d3878b84dffe8b
+WEBSOCAT_CRYPTO_COMMON_0_1_6_URL		:= https://crates.io/api/v1/crates/crypto-common/0.1.6/download
+WEBSOCAT_CRYPTO_COMMON_0_1_6_SOURCE	:= $(SRCDIR)/crypto-common-0.1.6.crate
+$(WEBSOCAT_CRYPTO_COMMON_0_1_6_SOURCE)	:= WEBSOCAT_CRYPTO_COMMON_0_1_6
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_CRYPTO_COMMON_0_1_6_SOURCE)
+
+WEBSOCAT_DERIVATIVE_1_0_4_MD5		:= fdefb54850aeb1f31d201f0115aab3d4
+WEBSOCAT_DERIVATIVE_1_0_4_URL		:= https://crates.io/api/v1/crates/derivative/1.0.4/download
+WEBSOCAT_DERIVATIVE_1_0_4_SOURCE	:= $(SRCDIR)/derivative-1.0.4.crate
+$(WEBSOCAT_DERIVATIVE_1_0_4_SOURCE)	:= WEBSOCAT_DERIVATIVE_1_0_4
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_DERIVATIVE_1_0_4_SOURCE)
+
+WEBSOCAT_DIGEST_0_8_1_MD5		:= b00352aced738d455145117157604783
+WEBSOCAT_DIGEST_0_8_1_URL		:= https://crates.io/api/v1/crates/digest/0.8.1/download
+WEBSOCAT_DIGEST_0_8_1_SOURCE	:= $(SRCDIR)/digest-0.8.1.crate
+$(WEBSOCAT_DIGEST_0_8_1_SOURCE)	:= WEBSOCAT_DIGEST_0_8_1
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_DIGEST_0_8_1_SOURCE)
+
+WEBSOCAT_DIGEST_0_10_5_MD5		:= ebf95279270dfefc495cdf5192faaf4c
+WEBSOCAT_DIGEST_0_10_5_URL		:= https://crates.io/api/v1/crates/digest/0.10.5/download
+WEBSOCAT_DIGEST_0_10_5_SOURCE	:= $(SRCDIR)/digest-0.10.5.crate
+$(WEBSOCAT_DIGEST_0_10_5_SOURCE)	:= WEBSOCAT_DIGEST_0_10_5
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_DIGEST_0_10_5_SOURCE)
+
+WEBSOCAT_ENV_LOGGER_0_6_2_MD5		:= 034a5cb6f2dd0fe6602fbe95806b678b
+WEBSOCAT_ENV_LOGGER_0_6_2_URL		:= https://crates.io/api/v1/crates/env_logger/0.6.2/download
+WEBSOCAT_ENV_LOGGER_0_6_2_SOURCE	:= $(SRCDIR)/env_logger-0.6.2.crate
+$(WEBSOCAT_ENV_LOGGER_0_6_2_SOURCE)	:= WEBSOCAT_ENV_LOGGER_0_6_2
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_ENV_LOGGER_0_6_2_SOURCE)
+
+WEBSOCAT_FAKE_SIMD_0_1_2_MD5		:= 1aef0dd636d3ef234e4f035fc26c0069
+WEBSOCAT_FAKE_SIMD_0_1_2_URL		:= https://crates.io/api/v1/crates/fake-simd/0.1.2/download
+WEBSOCAT_FAKE_SIMD_0_1_2_SOURCE	:= $(SRCDIR)/fake-simd-0.1.2.crate
+$(WEBSOCAT_FAKE_SIMD_0_1_2_SOURCE)	:= WEBSOCAT_FAKE_SIMD_0_1_2
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_FAKE_SIMD_0_1_2_SOURCE)
+
+WEBSOCAT_FASTRAND_1_8_0_MD5		:= d59e1fe9834d52c50e2414a34945e479
+WEBSOCAT_FASTRAND_1_8_0_URL		:= https://crates.io/api/v1/crates/fastrand/1.8.0/download
+WEBSOCAT_FASTRAND_1_8_0_SOURCE	:= $(SRCDIR)/fastrand-1.8.0.crate
+$(WEBSOCAT_FASTRAND_1_8_0_SOURCE)	:= WEBSOCAT_FASTRAND_1_8_0
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_FASTRAND_1_8_0_SOURCE)
+
+WEBSOCAT_FLATE2_1_0_24_MD5		:= a61e445efc8dde664a8cd0911ed7be6c
+WEBSOCAT_FLATE2_1_0_24_URL		:= https://crates.io/api/v1/crates/flate2/1.0.24/download
+WEBSOCAT_FLATE2_1_0_24_SOURCE	:= $(SRCDIR)/flate2-1.0.24.crate
+$(WEBSOCAT_FLATE2_1_0_24_SOURCE)	:= WEBSOCAT_FLATE2_1_0_24
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_FLATE2_1_0_24_SOURCE)
+
+WEBSOCAT_FNV_1_0_7_MD5		:= 8dab3b3ec00dc56cffde0b0c410d47b5
+WEBSOCAT_FNV_1_0_7_URL		:= https://crates.io/api/v1/crates/fnv/1.0.7/download
+WEBSOCAT_FNV_1_0_7_SOURCE	:= $(SRCDIR)/fnv-1.0.7.crate
+$(WEBSOCAT_FNV_1_0_7_SOURCE)	:= WEBSOCAT_FNV_1_0_7
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_FNV_1_0_7_SOURCE)
+
+WEBSOCAT_FOREIGN_TYPES_0_3_2_MD5		:= 78c898fdaa3968e23904bf8538c4a271
+WEBSOCAT_FOREIGN_TYPES_0_3_2_URL		:= https://crates.io/api/v1/crates/foreign-types/0.3.2/download
+WEBSOCAT_FOREIGN_TYPES_0_3_2_SOURCE	:= $(SRCDIR)/foreign-types-0.3.2.crate
+$(WEBSOCAT_FOREIGN_TYPES_0_3_2_SOURCE)	:= WEBSOCAT_FOREIGN_TYPES_0_3_2
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_FOREIGN_TYPES_0_3_2_SOURCE)
+
+WEBSOCAT_FOREIGN_TYPES_SHARED_0_1_1_MD5		:= 667e86b8b8d96ab4e9605627ce7dcc9a
+WEBSOCAT_FOREIGN_TYPES_SHARED_0_1_1_URL		:= https://crates.io/api/v1/crates/foreign-types-shared/0.1.1/download
+WEBSOCAT_FOREIGN_TYPES_SHARED_0_1_1_SOURCE	:= $(SRCDIR)/foreign-types-shared-0.1.1.crate
+$(WEBSOCAT_FOREIGN_TYPES_SHARED_0_1_1_SOURCE)	:= WEBSOCAT_FOREIGN_TYPES_SHARED_0_1_1
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_FOREIGN_TYPES_SHARED_0_1_1_SOURCE)
+
+WEBSOCAT_FUCHSIA_CPRNG_0_1_1_MD5		:= 27260b46db6b9ac40318143d70a80ba3
+WEBSOCAT_FUCHSIA_CPRNG_0_1_1_URL		:= https://crates.io/api/v1/crates/fuchsia-cprng/0.1.1/download
+WEBSOCAT_FUCHSIA_CPRNG_0_1_1_SOURCE	:= $(SRCDIR)/fuchsia-cprng-0.1.1.crate
+$(WEBSOCAT_FUCHSIA_CPRNG_0_1_1_SOURCE)	:= WEBSOCAT_FUCHSIA_CPRNG_0_1_1
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_FUCHSIA_CPRNG_0_1_1_SOURCE)
+
+WEBSOCAT_FUCHSIA_ZIRCON_0_3_3_MD5		:= dd7c80c2d04d2e9ceba82826cf69764d
+WEBSOCAT_FUCHSIA_ZIRCON_0_3_3_URL		:= https://crates.io/api/v1/crates/fuchsia-zircon/0.3.3/download
+WEBSOCAT_FUCHSIA_ZIRCON_0_3_3_SOURCE	:= $(SRCDIR)/fuchsia-zircon-0.3.3.crate
+$(WEBSOCAT_FUCHSIA_ZIRCON_0_3_3_SOURCE)	:= WEBSOCAT_FUCHSIA_ZIRCON_0_3_3
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_FUCHSIA_ZIRCON_0_3_3_SOURCE)
+
+WEBSOCAT_FUCHSIA_ZIRCON_SYS_0_3_3_MD5		:= 54cfab480b7a5f7302eadf44129d3f4b
+WEBSOCAT_FUCHSIA_ZIRCON_SYS_0_3_3_URL		:= https://crates.io/api/v1/crates/fuchsia-zircon-sys/0.3.3/download
+WEBSOCAT_FUCHSIA_ZIRCON_SYS_0_3_3_SOURCE	:= $(SRCDIR)/fuchsia-zircon-sys-0.3.3.crate
+$(WEBSOCAT_FUCHSIA_ZIRCON_SYS_0_3_3_SOURCE)	:= WEBSOCAT_FUCHSIA_ZIRCON_SYS_0_3_3
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_FUCHSIA_ZIRCON_SYS_0_3_3_SOURCE)
+
+WEBSOCAT_FUTURES_0_1_31_MD5		:= a2506255208617c2cb4f52fcd6a739dd
+WEBSOCAT_FUTURES_0_1_31_URL		:= https://crates.io/api/v1/crates/futures/0.1.31/download
+WEBSOCAT_FUTURES_0_1_31_SOURCE	:= $(SRCDIR)/futures-0.1.31.crate
+$(WEBSOCAT_FUTURES_0_1_31_SOURCE)	:= WEBSOCAT_FUTURES_0_1_31
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_FUTURES_0_1_31_SOURCE)
+
+WEBSOCAT_GENERIC_ARRAY_0_12_4_MD5		:= 668f0eda79c119d7c79f1e49c0afbeeb
+WEBSOCAT_GENERIC_ARRAY_0_12_4_URL		:= https://crates.io/api/v1/crates/generic-array/0.12.4/download
+WEBSOCAT_GENERIC_ARRAY_0_12_4_SOURCE	:= $(SRCDIR)/generic-array-0.12.4.crate
+$(WEBSOCAT_GENERIC_ARRAY_0_12_4_SOURCE)	:= WEBSOCAT_GENERIC_ARRAY_0_12_4
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_GENERIC_ARRAY_0_12_4_SOURCE)
+
+WEBSOCAT_GENERIC_ARRAY_0_14_6_MD5		:= e3480971fb7f7462149056fd70df74e2
+WEBSOCAT_GENERIC_ARRAY_0_14_6_URL		:= https://crates.io/api/v1/crates/generic-array/0.14.6/download
+WEBSOCAT_GENERIC_ARRAY_0_14_6_SOURCE	:= $(SRCDIR)/generic-array-0.14.6.crate
+$(WEBSOCAT_GENERIC_ARRAY_0_14_6_SOURCE)	:= WEBSOCAT_GENERIC_ARRAY_0_14_6
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_GENERIC_ARRAY_0_14_6_SOURCE)
+
+WEBSOCAT_GETRANDOM_0_2_7_MD5		:= 62864db03072aaae4f855126d502b8c7
+WEBSOCAT_GETRANDOM_0_2_7_URL		:= https://crates.io/api/v1/crates/getrandom/0.2.7/download
+WEBSOCAT_GETRANDOM_0_2_7_SOURCE	:= $(SRCDIR)/getrandom-0.2.7.crate
+$(WEBSOCAT_GETRANDOM_0_2_7_SOURCE)	:= WEBSOCAT_GETRANDOM_0_2_7
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_GETRANDOM_0_2_7_SOURCE)
+
+WEBSOCAT_HECK_0_3_3_MD5		:= d4310bba2bdd940077329f6fca3fde78
+WEBSOCAT_HECK_0_3_3_URL		:= https://crates.io/api/v1/crates/heck/0.3.3/download
+WEBSOCAT_HECK_0_3_3_SOURCE	:= $(SRCDIR)/heck-0.3.3.crate
+$(WEBSOCAT_HECK_0_3_3_SOURCE)	:= WEBSOCAT_HECK_0_3_3
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_HECK_0_3_3_SOURCE)
+
+WEBSOCAT_HERMIT_ABI_0_1_19_MD5		:= 0b7994d1256215201bdfb810a357ffa2
+WEBSOCAT_HERMIT_ABI_0_1_19_URL		:= https://crates.io/api/v1/crates/hermit-abi/0.1.19/download
+WEBSOCAT_HERMIT_ABI_0_1_19_SOURCE	:= $(SRCDIR)/hermit-abi-0.1.19.crate
+$(WEBSOCAT_HERMIT_ABI_0_1_19_SOURCE)	:= WEBSOCAT_HERMIT_ABI_0_1_19
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_HERMIT_ABI_0_1_19_SOURCE)
+
+WEBSOCAT_HEX_0_4_3_MD5		:= 1d3e530a3410fc95a6987d70f84a6332
+WEBSOCAT_HEX_0_4_3_URL		:= https://crates.io/api/v1/crates/hex/0.4.3/download
+WEBSOCAT_HEX_0_4_3_SOURCE	:= $(SRCDIR)/hex-0.4.3.crate
+$(WEBSOCAT_HEX_0_4_3_SOURCE)	:= WEBSOCAT_HEX_0_4_3
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_HEX_0_4_3_SOURCE)
+
+WEBSOCAT_HTTP_0_1_21_MD5		:= 495ec7bcfa5f016979d56c6e6d0e0367
+WEBSOCAT_HTTP_0_1_21_URL		:= https://crates.io/api/v1/crates/http/0.1.21/download
+WEBSOCAT_HTTP_0_1_21_SOURCE	:= $(SRCDIR)/http-0.1.21.crate
+$(WEBSOCAT_HTTP_0_1_21_SOURCE)	:= WEBSOCAT_HTTP_0_1_21
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_HTTP_0_1_21_SOURCE)
+
+WEBSOCAT_HTTP_BYTES_0_1_0_MD5		:= efed5c546894d13822d881b03a886d35
+WEBSOCAT_HTTP_BYTES_0_1_0_URL		:= https://crates.io/api/v1/crates/http-bytes/0.1.0/download
+WEBSOCAT_HTTP_BYTES_0_1_0_SOURCE	:= $(SRCDIR)/http-bytes-0.1.0.crate
+$(WEBSOCAT_HTTP_BYTES_0_1_0_SOURCE)	:= WEBSOCAT_HTTP_BYTES_0_1_0
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_HTTP_BYTES_0_1_0_SOURCE)
+
+WEBSOCAT_HTTPARSE_1_8_0_MD5		:= 92968aee56cb2f162a55008fedddbb78
+WEBSOCAT_HTTPARSE_1_8_0_URL		:= https://crates.io/api/v1/crates/httparse/1.8.0/download
+WEBSOCAT_HTTPARSE_1_8_0_SOURCE	:= $(SRCDIR)/httparse-1.8.0.crate
+$(WEBSOCAT_HTTPARSE_1_8_0_SOURCE)	:= WEBSOCAT_HTTPARSE_1_8_0
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_HTTPARSE_1_8_0_SOURCE)
+
+WEBSOCAT_HYPER_0_10_16_MD5		:= 87bfa5b74e84c418684711ebd2a1652e
+WEBSOCAT_HYPER_0_10_16_URL		:= https://crates.io/api/v1/crates/hyper/0.10.16/download
+WEBSOCAT_HYPER_0_10_16_SOURCE	:= $(SRCDIR)/hyper-0.10.16.crate
+$(WEBSOCAT_HYPER_0_10_16_SOURCE)	:= WEBSOCAT_HYPER_0_10_16
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_HYPER_0_10_16_SOURCE)
+
+WEBSOCAT_IDNA_0_1_5_MD5		:= 89cabfcb37602a7b200b1a9cd660ee2e
+WEBSOCAT_IDNA_0_1_5_URL		:= https://crates.io/api/v1/crates/idna/0.1.5/download
+WEBSOCAT_IDNA_0_1_5_SOURCE	:= $(SRCDIR)/idna-0.1.5.crate
+$(WEBSOCAT_IDNA_0_1_5_SOURCE)	:= WEBSOCAT_IDNA_0_1_5
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_IDNA_0_1_5_SOURCE)
+
+WEBSOCAT_INSTANT_0_1_12_MD5		:= 5f153f7135dceb02f88266121c836b4e
+WEBSOCAT_INSTANT_0_1_12_URL		:= https://crates.io/api/v1/crates/instant/0.1.12/download
+WEBSOCAT_INSTANT_0_1_12_SOURCE	:= $(SRCDIR)/instant-0.1.12.crate
+$(WEBSOCAT_INSTANT_0_1_12_SOURCE)	:= WEBSOCAT_INSTANT_0_1_12
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_INSTANT_0_1_12_SOURCE)
+
+WEBSOCAT_IOVEC_0_1_4_MD5		:= f1c40b9836035b69e464df711a1d2950
+WEBSOCAT_IOVEC_0_1_4_URL		:= https://crates.io/api/v1/crates/iovec/0.1.4/download
+WEBSOCAT_IOVEC_0_1_4_SOURCE	:= $(SRCDIR)/iovec-0.1.4.crate
+$(WEBSOCAT_IOVEC_0_1_4_SOURCE)	:= WEBSOCAT_IOVEC_0_1_4
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_IOVEC_0_1_4_SOURCE)
+
+WEBSOCAT_ITOA_0_4_8_MD5		:= 06e7dbde9932c6a9bac63d9288670678
+WEBSOCAT_ITOA_0_4_8_URL		:= https://crates.io/api/v1/crates/itoa/0.4.8/download
+WEBSOCAT_ITOA_0_4_8_SOURCE	:= $(SRCDIR)/itoa-0.4.8.crate
+$(WEBSOCAT_ITOA_0_4_8_SOURCE)	:= WEBSOCAT_ITOA_0_4_8
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_ITOA_0_4_8_SOURCE)
+
+WEBSOCAT_KERNEL32_SYS_0_2_2_MD5		:= 9d033cc2daa6924420a4a89e6705773f
+WEBSOCAT_KERNEL32_SYS_0_2_2_URL		:= https://crates.io/api/v1/crates/kernel32-sys/0.2.2/download
+WEBSOCAT_KERNEL32_SYS_0_2_2_SOURCE	:= $(SRCDIR)/kernel32-sys-0.2.2.crate
+$(WEBSOCAT_KERNEL32_SYS_0_2_2_SOURCE)	:= WEBSOCAT_KERNEL32_SYS_0_2_2
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_KERNEL32_SYS_0_2_2_SOURCE)
+
+WEBSOCAT_LANGUAGE_TAGS_0_2_2_MD5		:= 70d98bc08018458ae5f7109b52aa1acc
+WEBSOCAT_LANGUAGE_TAGS_0_2_2_URL		:= https://crates.io/api/v1/crates/language-tags/0.2.2/download
+WEBSOCAT_LANGUAGE_TAGS_0_2_2_SOURCE	:= $(SRCDIR)/language-tags-0.2.2.crate
+$(WEBSOCAT_LANGUAGE_TAGS_0_2_2_SOURCE)	:= WEBSOCAT_LANGUAGE_TAGS_0_2_2
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_LANGUAGE_TAGS_0_2_2_SOURCE)
+
+WEBSOCAT_LAZY_STATIC_1_4_0_MD5		:= fba3b040a55c01be7376d3dd5c4d4920
+WEBSOCAT_LAZY_STATIC_1_4_0_URL		:= https://crates.io/api/v1/crates/lazy_static/1.4.0/download
+WEBSOCAT_LAZY_STATIC_1_4_0_SOURCE	:= $(SRCDIR)/lazy_static-1.4.0.crate
+$(WEBSOCAT_LAZY_STATIC_1_4_0_SOURCE)	:= WEBSOCAT_LAZY_STATIC_1_4_0
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_LAZY_STATIC_1_4_0_SOURCE)
+
+WEBSOCAT_LIBC_0_2_133_MD5		:= cd6868b580f6901cfb16071a0f1e3833
+WEBSOCAT_LIBC_0_2_133_URL		:= https://crates.io/api/v1/crates/libc/0.2.133/download
+WEBSOCAT_LIBC_0_2_133_SOURCE	:= $(SRCDIR)/libc-0.2.133.crate
+$(WEBSOCAT_LIBC_0_2_133_SOURCE)	:= WEBSOCAT_LIBC_0_2_133
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_LIBC_0_2_133_SOURCE)
+
+WEBSOCAT_LOCK_API_0_3_4_MD5		:= 19466d8edb3c032438026125770b17f9
+WEBSOCAT_LOCK_API_0_3_4_URL		:= https://crates.io/api/v1/crates/lock_api/0.3.4/download
+WEBSOCAT_LOCK_API_0_3_4_SOURCE	:= $(SRCDIR)/lock_api-0.3.4.crate
+$(WEBSOCAT_LOCK_API_0_3_4_SOURCE)	:= WEBSOCAT_LOCK_API_0_3_4
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_LOCK_API_0_3_4_SOURCE)
+
+WEBSOCAT_LOCK_API_0_4_9_MD5		:= 426eb9e22cbb36480e13fd265be87b4c
+WEBSOCAT_LOCK_API_0_4_9_URL		:= https://crates.io/api/v1/crates/lock_api/0.4.9/download
+WEBSOCAT_LOCK_API_0_4_9_SOURCE	:= $(SRCDIR)/lock_api-0.4.9.crate
+$(WEBSOCAT_LOCK_API_0_4_9_SOURCE)	:= WEBSOCAT_LOCK_API_0_4_9
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_LOCK_API_0_4_9_SOURCE)
+
+WEBSOCAT_LOG_0_3_9_MD5		:= 33f0dff2bb670d9307fea18d579b5494
+WEBSOCAT_LOG_0_3_9_URL		:= https://crates.io/api/v1/crates/log/0.3.9/download
+WEBSOCAT_LOG_0_3_9_SOURCE	:= $(SRCDIR)/log-0.3.9.crate
+$(WEBSOCAT_LOG_0_3_9_SOURCE)	:= WEBSOCAT_LOG_0_3_9
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_LOG_0_3_9_SOURCE)
+
+WEBSOCAT_LOG_0_4_17_MD5		:= b31bf94ffe7e0f2ada93afae1076eaeb
+WEBSOCAT_LOG_0_4_17_URL		:= https://crates.io/api/v1/crates/log/0.4.17/download
+WEBSOCAT_LOG_0_4_17_SOURCE	:= $(SRCDIR)/log-0.4.17.crate
+$(WEBSOCAT_LOG_0_4_17_SOURCE)	:= WEBSOCAT_LOG_0_4_17
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_LOG_0_4_17_SOURCE)
+
+WEBSOCAT_MATCHES_0_1_9_MD5		:= 5ac809692422b722eaded90be3c4d9c2
+WEBSOCAT_MATCHES_0_1_9_URL		:= https://crates.io/api/v1/crates/matches/0.1.9/download
+WEBSOCAT_MATCHES_0_1_9_SOURCE	:= $(SRCDIR)/matches-0.1.9.crate
+$(WEBSOCAT_MATCHES_0_1_9_SOURCE)	:= WEBSOCAT_MATCHES_0_1_9
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_MATCHES_0_1_9_SOURCE)
+
+WEBSOCAT_MAYBE_UNINIT_2_0_0_MD5		:= b5cf10e268e8a3bee2de8a734104245e
+WEBSOCAT_MAYBE_UNINIT_2_0_0_URL		:= https://crates.io/api/v1/crates/maybe-uninit/2.0.0/download
+WEBSOCAT_MAYBE_UNINIT_2_0_0_SOURCE	:= $(SRCDIR)/maybe-uninit-2.0.0.crate
+$(WEBSOCAT_MAYBE_UNINIT_2_0_0_SOURCE)	:= WEBSOCAT_MAYBE_UNINIT_2_0_0
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_MAYBE_UNINIT_2_0_0_SOURCE)
+
+WEBSOCAT_MEMCHR_2_5_0_MD5		:= 94b8bf179385ff071bdc33b58bf047c0
+WEBSOCAT_MEMCHR_2_5_0_URL		:= https://crates.io/api/v1/crates/memchr/2.5.0/download
+WEBSOCAT_MEMCHR_2_5_0_SOURCE	:= $(SRCDIR)/memchr-2.5.0.crate
+$(WEBSOCAT_MEMCHR_2_5_0_SOURCE)	:= WEBSOCAT_MEMCHR_2_5_0
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_MEMCHR_2_5_0_SOURCE)
+
+WEBSOCAT_MEMOFFSET_0_5_6_MD5		:= 5d9532411dde9442741983efd0961351
+WEBSOCAT_MEMOFFSET_0_5_6_URL		:= https://crates.io/api/v1/crates/memoffset/0.5.6/download
+WEBSOCAT_MEMOFFSET_0_5_6_SOURCE	:= $(SRCDIR)/memoffset-0.5.6.crate
+$(WEBSOCAT_MEMOFFSET_0_5_6_SOURCE)	:= WEBSOCAT_MEMOFFSET_0_5_6
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_MEMOFFSET_0_5_6_SOURCE)
+
+WEBSOCAT_MIME_0_2_6_MD5		:= 6d1fc428d2446b4975d8c1788c73e72c
+WEBSOCAT_MIME_0_2_6_URL		:= https://crates.io/api/v1/crates/mime/0.2.6/download
+WEBSOCAT_MIME_0_2_6_SOURCE	:= $(SRCDIR)/mime-0.2.6.crate
+$(WEBSOCAT_MIME_0_2_6_SOURCE)	:= WEBSOCAT_MIME_0_2_6
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_MIME_0_2_6_SOURCE)
+
+WEBSOCAT_MINIZ_OXIDE_0_5_4_MD5		:= cc0dc636c0dfcfddbbbff21a699b25d8
+WEBSOCAT_MINIZ_OXIDE_0_5_4_URL		:= https://crates.io/api/v1/crates/miniz_oxide/0.5.4/download
+WEBSOCAT_MINIZ_OXIDE_0_5_4_SOURCE	:= $(SRCDIR)/miniz_oxide-0.5.4.crate
+$(WEBSOCAT_MINIZ_OXIDE_0_5_4_SOURCE)	:= WEBSOCAT_MINIZ_OXIDE_0_5_4
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_MINIZ_OXIDE_0_5_4_SOURCE)
+
+WEBSOCAT_MIO_0_6_23_MD5		:= 257e573f323c639630b31f147671b627
+WEBSOCAT_MIO_0_6_23_URL		:= https://crates.io/api/v1/crates/mio/0.6.23/download
+WEBSOCAT_MIO_0_6_23_SOURCE	:= $(SRCDIR)/mio-0.6.23.crate
+$(WEBSOCAT_MIO_0_6_23_SOURCE)	:= WEBSOCAT_MIO_0_6_23
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_MIO_0_6_23_SOURCE)
+
+WEBSOCAT_MIO_NAMED_PIPES_0_1_7_MD5		:= 149e92d5fe1d4adde8dadfa37badf19a
+WEBSOCAT_MIO_NAMED_PIPES_0_1_7_URL		:= https://crates.io/api/v1/crates/mio-named-pipes/0.1.7/download
+WEBSOCAT_MIO_NAMED_PIPES_0_1_7_SOURCE	:= $(SRCDIR)/mio-named-pipes-0.1.7.crate
+$(WEBSOCAT_MIO_NAMED_PIPES_0_1_7_SOURCE)	:= WEBSOCAT_MIO_NAMED_PIPES_0_1_7
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_MIO_NAMED_PIPES_0_1_7_SOURCE)
+
+WEBSOCAT_MIO_UDS_0_6_8_MD5		:= 10e28d0be14899dcbad91142a228fb35
+WEBSOCAT_MIO_UDS_0_6_8_URL		:= https://crates.io/api/v1/crates/mio-uds/0.6.8/download
+WEBSOCAT_MIO_UDS_0_6_8_SOURCE	:= $(SRCDIR)/mio-uds-0.6.8.crate
+$(WEBSOCAT_MIO_UDS_0_6_8_SOURCE)	:= WEBSOCAT_MIO_UDS_0_6_8
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_MIO_UDS_0_6_8_SOURCE)
+
+WEBSOCAT_MIOW_0_2_2_MD5		:= 1fbbe598255c0addb31bdfbe3e76420d
+WEBSOCAT_MIOW_0_2_2_URL		:= https://crates.io/api/v1/crates/miow/0.2.2/download
+WEBSOCAT_MIOW_0_2_2_SOURCE	:= $(SRCDIR)/miow-0.2.2.crate
+$(WEBSOCAT_MIOW_0_2_2_SOURCE)	:= WEBSOCAT_MIOW_0_2_2
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_MIOW_0_2_2_SOURCE)
+
+WEBSOCAT_MIOW_0_3_7_MD5		:= 4604959975c2154a14f6b5e97444e2c8
+WEBSOCAT_MIOW_0_3_7_URL		:= https://crates.io/api/v1/crates/miow/0.3.7/download
+WEBSOCAT_MIOW_0_3_7_SOURCE	:= $(SRCDIR)/miow-0.3.7.crate
+$(WEBSOCAT_MIOW_0_3_7_SOURCE)	:= WEBSOCAT_MIOW_0_3_7
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_MIOW_0_3_7_SOURCE)
+
+WEBSOCAT_NATIVE_TLS_0_2_10_MD5		:= 83c88f2bd69c44122955bf94ad9377a1
+WEBSOCAT_NATIVE_TLS_0_2_10_URL		:= https://crates.io/api/v1/crates/native-tls/0.2.10/download
+WEBSOCAT_NATIVE_TLS_0_2_10_SOURCE	:= $(SRCDIR)/native-tls-0.2.10.crate
+$(WEBSOCAT_NATIVE_TLS_0_2_10_SOURCE)	:= WEBSOCAT_NATIVE_TLS_0_2_10
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_NATIVE_TLS_0_2_10_SOURCE)
+
+WEBSOCAT_NET2_0_2_37_MD5		:= ff6c054468eab826f0dab7cc9a3fe557
+WEBSOCAT_NET2_0_2_37_URL		:= https://crates.io/api/v1/crates/net2/0.2.37/download
+WEBSOCAT_NET2_0_2_37_SOURCE	:= $(SRCDIR)/net2-0.2.37.crate
+$(WEBSOCAT_NET2_0_2_37_SOURCE)	:= WEBSOCAT_NET2_0_2_37
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_NET2_0_2_37_SOURCE)
+
+WEBSOCAT_NUM_CPUS_1_13_1_MD5		:= c5e50e299295e662ad19c58428d6e085
+WEBSOCAT_NUM_CPUS_1_13_1_URL		:= https://crates.io/api/v1/crates/num_cpus/1.13.1/download
+WEBSOCAT_NUM_CPUS_1_13_1_SOURCE	:= $(SRCDIR)/num_cpus-1.13.1.crate
+$(WEBSOCAT_NUM_CPUS_1_13_1_SOURCE)	:= WEBSOCAT_NUM_CPUS_1_13_1
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_NUM_CPUS_1_13_1_SOURCE)
+
+WEBSOCAT_ONCE_CELL_1_15_0_MD5		:= 81bd380ba31052f9c84f5e71e8c0ee52
+WEBSOCAT_ONCE_CELL_1_15_0_URL		:= https://crates.io/api/v1/crates/once_cell/1.15.0/download
+WEBSOCAT_ONCE_CELL_1_15_0_SOURCE	:= $(SRCDIR)/once_cell-1.15.0.crate
+$(WEBSOCAT_ONCE_CELL_1_15_0_SOURCE)	:= WEBSOCAT_ONCE_CELL_1_15_0
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_ONCE_CELL_1_15_0_SOURCE)
+
+WEBSOCAT_OPAQUE_DEBUG_0_2_3_MD5		:= 797752fea1f2c8b458cf7383b61433c9
+WEBSOCAT_OPAQUE_DEBUG_0_2_3_URL		:= https://crates.io/api/v1/crates/opaque-debug/0.2.3/download
+WEBSOCAT_OPAQUE_DEBUG_0_2_3_SOURCE	:= $(SRCDIR)/opaque-debug-0.2.3.crate
+$(WEBSOCAT_OPAQUE_DEBUG_0_2_3_SOURCE)	:= WEBSOCAT_OPAQUE_DEBUG_0_2_3
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_OPAQUE_DEBUG_0_2_3_SOURCE)
+
+WEBSOCAT_OPAQUE_DEBUG_0_3_0_MD5		:= 653e04baa68a4484b3b839c19221e474
+WEBSOCAT_OPAQUE_DEBUG_0_3_0_URL		:= https://crates.io/api/v1/crates/opaque-debug/0.3.0/download
+WEBSOCAT_OPAQUE_DEBUG_0_3_0_SOURCE	:= $(SRCDIR)/opaque-debug-0.3.0.crate
+$(WEBSOCAT_OPAQUE_DEBUG_0_3_0_SOURCE)	:= WEBSOCAT_OPAQUE_DEBUG_0_3_0
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_OPAQUE_DEBUG_0_3_0_SOURCE)
+
+WEBSOCAT_OPENSSL_0_10_41_MD5		:= 728031c49b53e56dd6f7af19d4182975
+WEBSOCAT_OPENSSL_0_10_41_URL		:= https://crates.io/api/v1/crates/openssl/0.10.41/download
+WEBSOCAT_OPENSSL_0_10_41_SOURCE	:= $(SRCDIR)/openssl-0.10.41.crate
+$(WEBSOCAT_OPENSSL_0_10_41_SOURCE)	:= WEBSOCAT_OPENSSL_0_10_41
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_OPENSSL_0_10_41_SOURCE)
+
+WEBSOCAT_OPENSSL_MACROS_0_1_0_MD5		:= 73212ff5e0f8cd8844081a2461393707
+WEBSOCAT_OPENSSL_MACROS_0_1_0_URL		:= https://crates.io/api/v1/crates/openssl-macros/0.1.0/download
+WEBSOCAT_OPENSSL_MACROS_0_1_0_SOURCE	:= $(SRCDIR)/openssl-macros-0.1.0.crate
+$(WEBSOCAT_OPENSSL_MACROS_0_1_0_SOURCE)	:= WEBSOCAT_OPENSSL_MACROS_0_1_0
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_OPENSSL_MACROS_0_1_0_SOURCE)
+
+WEBSOCAT_OPENSSL_PROBE_0_1_5_MD5		:= 907244c0d3791f3f981c7cc8e4cad0a3
+WEBSOCAT_OPENSSL_PROBE_0_1_5_URL		:= https://crates.io/api/v1/crates/openssl-probe/0.1.5/download
+WEBSOCAT_OPENSSL_PROBE_0_1_5_SOURCE	:= $(SRCDIR)/openssl-probe-0.1.5.crate
+$(WEBSOCAT_OPENSSL_PROBE_0_1_5_SOURCE)	:= WEBSOCAT_OPENSSL_PROBE_0_1_5
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_OPENSSL_PROBE_0_1_5_SOURCE)
+
+WEBSOCAT_OPENSSL_SRC_111_22_0_1_1_1Q_MD5		:= 35a1d9588f33516552bc74a8ce9d52c2
+WEBSOCAT_OPENSSL_SRC_111_22_0_1_1_1Q_URL		:= https://crates.io/api/v1/crates/openssl-src/111.22.0+1.1.1q/download
+WEBSOCAT_OPENSSL_SRC_111_22_0_1_1_1Q_SOURCE	:= $(SRCDIR)/openssl-src-111.22.0+1.1.1q.crate
+$(WEBSOCAT_OPENSSL_SRC_111_22_0_1_1_1Q_SOURCE)	:= WEBSOCAT_OPENSSL_SRC_111_22_0_1_1_1Q
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_OPENSSL_SRC_111_22_0_1_1_1Q_SOURCE)
+
+WEBSOCAT_OPENSSL_SYS_0_9_75_MD5		:= 1a1faee558a8109ff8b9f7767410fded
+WEBSOCAT_OPENSSL_SYS_0_9_75_URL		:= https://crates.io/api/v1/crates/openssl-sys/0.9.75/download
+WEBSOCAT_OPENSSL_SYS_0_9_75_SOURCE	:= $(SRCDIR)/openssl-sys-0.9.75.crate
+$(WEBSOCAT_OPENSSL_SYS_0_9_75_SOURCE)	:= WEBSOCAT_OPENSSL_SYS_0_9_75
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_OPENSSL_SYS_0_9_75_SOURCE)
+
+WEBSOCAT_PARKING_LOT_0_9_0_MD5		:= 783499db4bc8bb10620a842c2f2d8d36
+WEBSOCAT_PARKING_LOT_0_9_0_URL		:= https://crates.io/api/v1/crates/parking_lot/0.9.0/download
+WEBSOCAT_PARKING_LOT_0_9_0_SOURCE	:= $(SRCDIR)/parking_lot-0.9.0.crate
+$(WEBSOCAT_PARKING_LOT_0_9_0_SOURCE)	:= WEBSOCAT_PARKING_LOT_0_9_0
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_PARKING_LOT_0_9_0_SOURCE)
+
+WEBSOCAT_PARKING_LOT_0_12_1_MD5		:= 1be45f99109d447849f4244b58c5a470
+WEBSOCAT_PARKING_LOT_0_12_1_URL		:= https://crates.io/api/v1/crates/parking_lot/0.12.1/download
+WEBSOCAT_PARKING_LOT_0_12_1_SOURCE	:= $(SRCDIR)/parking_lot-0.12.1.crate
+$(WEBSOCAT_PARKING_LOT_0_12_1_SOURCE)	:= WEBSOCAT_PARKING_LOT_0_12_1
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_PARKING_LOT_0_12_1_SOURCE)
+
+WEBSOCAT_PARKING_LOT_CORE_0_6_2_MD5		:= 521a4741dd82cd5667e866400c7a8e4f
+WEBSOCAT_PARKING_LOT_CORE_0_6_2_URL		:= https://crates.io/api/v1/crates/parking_lot_core/0.6.2/download
+WEBSOCAT_PARKING_LOT_CORE_0_6_2_SOURCE	:= $(SRCDIR)/parking_lot_core-0.6.2.crate
+$(WEBSOCAT_PARKING_LOT_CORE_0_6_2_SOURCE)	:= WEBSOCAT_PARKING_LOT_CORE_0_6_2
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_PARKING_LOT_CORE_0_6_2_SOURCE)
+
+WEBSOCAT_PARKING_LOT_CORE_0_9_3_MD5		:= f3c211bc33fcf71ca981d02f9fa2813c
+WEBSOCAT_PARKING_LOT_CORE_0_9_3_URL		:= https://crates.io/api/v1/crates/parking_lot_core/0.9.3/download
+WEBSOCAT_PARKING_LOT_CORE_0_9_3_SOURCE	:= $(SRCDIR)/parking_lot_core-0.9.3.crate
+$(WEBSOCAT_PARKING_LOT_CORE_0_9_3_SOURCE)	:= WEBSOCAT_PARKING_LOT_CORE_0_9_3
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_PARKING_LOT_CORE_0_9_3_SOURCE)
+
+WEBSOCAT_PASSWORD_HASH_0_4_2_MD5		:= 8b67ff1e021e9c6002ff6f6b750476cb
+WEBSOCAT_PASSWORD_HASH_0_4_2_URL		:= https://crates.io/api/v1/crates/password-hash/0.4.2/download
+WEBSOCAT_PASSWORD_HASH_0_4_2_SOURCE	:= $(SRCDIR)/password-hash-0.4.2.crate
+$(WEBSOCAT_PASSWORD_HASH_0_4_2_SOURCE)	:= WEBSOCAT_PASSWORD_HASH_0_4_2
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_PASSWORD_HASH_0_4_2_SOURCE)
+
+WEBSOCAT_PERCENT_ENCODING_1_0_1_MD5		:= 8a5fc6ba84f3ac8a7e43ecb99322866c
+WEBSOCAT_PERCENT_ENCODING_1_0_1_URL		:= https://crates.io/api/v1/crates/percent-encoding/1.0.1/download
+WEBSOCAT_PERCENT_ENCODING_1_0_1_SOURCE	:= $(SRCDIR)/percent-encoding-1.0.1.crate
+$(WEBSOCAT_PERCENT_ENCODING_1_0_1_SOURCE)	:= WEBSOCAT_PERCENT_ENCODING_1_0_1
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_PERCENT_ENCODING_1_0_1_SOURCE)
+
+WEBSOCAT_PKG_CONFIG_0_3_25_MD5		:= b478ee84018082806ea8da763f0b3f1f
+WEBSOCAT_PKG_CONFIG_0_3_25_URL		:= https://crates.io/api/v1/crates/pkg-config/0.3.25/download
+WEBSOCAT_PKG_CONFIG_0_3_25_SOURCE	:= $(SRCDIR)/pkg-config-0.3.25.crate
+$(WEBSOCAT_PKG_CONFIG_0_3_25_SOURCE)	:= WEBSOCAT_PKG_CONFIG_0_3_25
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_PKG_CONFIG_0_3_25_SOURCE)
+
+WEBSOCAT_POLY1305_0_7_2_MD5		:= 34d2cb51549a4e7236ec8dbfcf19236d
+WEBSOCAT_POLY1305_0_7_2_URL		:= https://crates.io/api/v1/crates/poly1305/0.7.2/download
+WEBSOCAT_POLY1305_0_7_2_SOURCE	:= $(SRCDIR)/poly1305-0.7.2.crate
+$(WEBSOCAT_POLY1305_0_7_2_SOURCE)	:= WEBSOCAT_POLY1305_0_7_2
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_POLY1305_0_7_2_SOURCE)
+
+WEBSOCAT_PPV_LITE86_0_2_16_MD5		:= ae91c97885d67994a342820cf7d59fb2
+WEBSOCAT_PPV_LITE86_0_2_16_URL		:= https://crates.io/api/v1/crates/ppv-lite86/0.2.16/download
+WEBSOCAT_PPV_LITE86_0_2_16_SOURCE	:= $(SRCDIR)/ppv-lite86-0.2.16.crate
+$(WEBSOCAT_PPV_LITE86_0_2_16_SOURCE)	:= WEBSOCAT_PPV_LITE86_0_2_16
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_PPV_LITE86_0_2_16_SOURCE)
+
+WEBSOCAT_PROC_MACRO2_0_4_30_MD5		:= 020c7d0be083642e24a1499122793006
+WEBSOCAT_PROC_MACRO2_0_4_30_URL		:= https://crates.io/api/v1/crates/proc-macro2/0.4.30/download
+WEBSOCAT_PROC_MACRO2_0_4_30_SOURCE	:= $(SRCDIR)/proc-macro2-0.4.30.crate
+$(WEBSOCAT_PROC_MACRO2_0_4_30_SOURCE)	:= WEBSOCAT_PROC_MACRO2_0_4_30
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_PROC_MACRO2_0_4_30_SOURCE)
+
+WEBSOCAT_PROC_MACRO2_1_0_43_MD5		:= 2c24d3b1b942a89c838bb60ef053d2d2
+WEBSOCAT_PROC_MACRO2_1_0_43_URL		:= https://crates.io/api/v1/crates/proc-macro2/1.0.43/download
+WEBSOCAT_PROC_MACRO2_1_0_43_SOURCE	:= $(SRCDIR)/proc-macro2-1.0.43.crate
+$(WEBSOCAT_PROC_MACRO2_1_0_43_SOURCE)	:= WEBSOCAT_PROC_MACRO2_1_0_43
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_PROC_MACRO2_1_0_43_SOURCE)
+
+WEBSOCAT_PROMETHEUS_0_13_2_MD5		:= 3956c4b6b2de601a9b86a7bf9cf57eeb
+WEBSOCAT_PROMETHEUS_0_13_2_URL		:= https://crates.io/api/v1/crates/prometheus/0.13.2/download
+WEBSOCAT_PROMETHEUS_0_13_2_SOURCE	:= $(SRCDIR)/prometheus-0.13.2.crate
+$(WEBSOCAT_PROMETHEUS_0_13_2_SOURCE)	:= WEBSOCAT_PROMETHEUS_0_13_2
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_PROMETHEUS_0_13_2_SOURCE)
+
+WEBSOCAT_PROMETHEUS_METRIC_STORAGE_0_5_0_MD5		:= aa527f2aaa77030ca61460fba55ed779
+WEBSOCAT_PROMETHEUS_METRIC_STORAGE_0_5_0_URL		:= https://crates.io/api/v1/crates/prometheus-metric-storage/0.5.0/download
+WEBSOCAT_PROMETHEUS_METRIC_STORAGE_0_5_0_SOURCE	:= $(SRCDIR)/prometheus-metric-storage-0.5.0.crate
+$(WEBSOCAT_PROMETHEUS_METRIC_STORAGE_0_5_0_SOURCE)	:= WEBSOCAT_PROMETHEUS_METRIC_STORAGE_0_5_0
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_PROMETHEUS_METRIC_STORAGE_0_5_0_SOURCE)
+
+WEBSOCAT_PROMETHEUS_METRIC_STORAGE_DERIVE_0_5_0_MD5		:= 8f13a2424f72460f28dded2a3873a5be
+WEBSOCAT_PROMETHEUS_METRIC_STORAGE_DERIVE_0_5_0_URL		:= https://crates.io/api/v1/crates/prometheus-metric-storage-derive/0.5.0/download
+WEBSOCAT_PROMETHEUS_METRIC_STORAGE_DERIVE_0_5_0_SOURCE	:= $(SRCDIR)/prometheus-metric-storage-derive-0.5.0.crate
+$(WEBSOCAT_PROMETHEUS_METRIC_STORAGE_DERIVE_0_5_0_SOURCE)	:= WEBSOCAT_PROMETHEUS_METRIC_STORAGE_DERIVE_0_5_0
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_PROMETHEUS_METRIC_STORAGE_DERIVE_0_5_0_SOURCE)
+
+WEBSOCAT_QUOTE_0_6_13_MD5		:= e6692d52f35aa3b9311d7d7748fa25ea
+WEBSOCAT_QUOTE_0_6_13_URL		:= https://crates.io/api/v1/crates/quote/0.6.13/download
+WEBSOCAT_QUOTE_0_6_13_SOURCE	:= $(SRCDIR)/quote-0.6.13.crate
+$(WEBSOCAT_QUOTE_0_6_13_SOURCE)	:= WEBSOCAT_QUOTE_0_6_13
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_QUOTE_0_6_13_SOURCE)
+
+WEBSOCAT_QUOTE_1_0_21_MD5		:= 1de20a0fc1cfdf5e332cbdb2e0899a2b
+WEBSOCAT_QUOTE_1_0_21_URL		:= https://crates.io/api/v1/crates/quote/1.0.21/download
+WEBSOCAT_QUOTE_1_0_21_SOURCE	:= $(SRCDIR)/quote-1.0.21.crate
+$(WEBSOCAT_QUOTE_1_0_21_SOURCE)	:= WEBSOCAT_QUOTE_1_0_21
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_QUOTE_1_0_21_SOURCE)
+
+WEBSOCAT_RAND_0_6_5_MD5		:= 793627c8c18012ad77cb3e81fa4c2195
+WEBSOCAT_RAND_0_6_5_URL		:= https://crates.io/api/v1/crates/rand/0.6.5/download
+WEBSOCAT_RAND_0_6_5_SOURCE	:= $(SRCDIR)/rand-0.6.5.crate
+$(WEBSOCAT_RAND_0_6_5_SOURCE)	:= WEBSOCAT_RAND_0_6_5
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_RAND_0_6_5_SOURCE)
+
+WEBSOCAT_RAND_0_8_5_MD5		:= ee7a5f842c39bc47c474196e83b0df5f
+WEBSOCAT_RAND_0_8_5_URL		:= https://crates.io/api/v1/crates/rand/0.8.5/download
+WEBSOCAT_RAND_0_8_5_SOURCE	:= $(SRCDIR)/rand-0.8.5.crate
+$(WEBSOCAT_RAND_0_8_5_SOURCE)	:= WEBSOCAT_RAND_0_8_5
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_RAND_0_8_5_SOURCE)
+
+WEBSOCAT_RAND_CHACHA_0_1_1_MD5		:= 3ab5a79607a4d260bf61cd99dc82ab05
+WEBSOCAT_RAND_CHACHA_0_1_1_URL		:= https://crates.io/api/v1/crates/rand_chacha/0.1.1/download
+WEBSOCAT_RAND_CHACHA_0_1_1_SOURCE	:= $(SRCDIR)/rand_chacha-0.1.1.crate
+$(WEBSOCAT_RAND_CHACHA_0_1_1_SOURCE)	:= WEBSOCAT_RAND_CHACHA_0_1_1
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_RAND_CHACHA_0_1_1_SOURCE)
+
+WEBSOCAT_RAND_CHACHA_0_3_1_MD5		:= e30085994bbeb4b7f4895d48216d5476
+WEBSOCAT_RAND_CHACHA_0_3_1_URL		:= https://crates.io/api/v1/crates/rand_chacha/0.3.1/download
+WEBSOCAT_RAND_CHACHA_0_3_1_SOURCE	:= $(SRCDIR)/rand_chacha-0.3.1.crate
+$(WEBSOCAT_RAND_CHACHA_0_3_1_SOURCE)	:= WEBSOCAT_RAND_CHACHA_0_3_1
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_RAND_CHACHA_0_3_1_SOURCE)
+
+WEBSOCAT_RAND_CORE_0_3_1_MD5		:= 8cab41822d03dfa674870315308fa392
+WEBSOCAT_RAND_CORE_0_3_1_URL		:= https://crates.io/api/v1/crates/rand_core/0.3.1/download
+WEBSOCAT_RAND_CORE_0_3_1_SOURCE	:= $(SRCDIR)/rand_core-0.3.1.crate
+$(WEBSOCAT_RAND_CORE_0_3_1_SOURCE)	:= WEBSOCAT_RAND_CORE_0_3_1
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_RAND_CORE_0_3_1_SOURCE)
+
+WEBSOCAT_RAND_CORE_0_4_2_MD5		:= 35ddcd36701a1a6711cc3aec85909f41
+WEBSOCAT_RAND_CORE_0_4_2_URL		:= https://crates.io/api/v1/crates/rand_core/0.4.2/download
+WEBSOCAT_RAND_CORE_0_4_2_SOURCE	:= $(SRCDIR)/rand_core-0.4.2.crate
+$(WEBSOCAT_RAND_CORE_0_4_2_SOURCE)	:= WEBSOCAT_RAND_CORE_0_4_2
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_RAND_CORE_0_4_2_SOURCE)
+
+WEBSOCAT_RAND_CORE_0_6_4_MD5		:= a1626b8f4d165b1b60d960862eba4cf0
+WEBSOCAT_RAND_CORE_0_6_4_URL		:= https://crates.io/api/v1/crates/rand_core/0.6.4/download
+WEBSOCAT_RAND_CORE_0_6_4_SOURCE	:= $(SRCDIR)/rand_core-0.6.4.crate
+$(WEBSOCAT_RAND_CORE_0_6_4_SOURCE)	:= WEBSOCAT_RAND_CORE_0_6_4
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_RAND_CORE_0_6_4_SOURCE)
+
+WEBSOCAT_RAND_HC_0_1_0_MD5		:= 28b1e6d15e1ba8cf3a2e953ce7fcd3de
+WEBSOCAT_RAND_HC_0_1_0_URL		:= https://crates.io/api/v1/crates/rand_hc/0.1.0/download
+WEBSOCAT_RAND_HC_0_1_0_SOURCE	:= $(SRCDIR)/rand_hc-0.1.0.crate
+$(WEBSOCAT_RAND_HC_0_1_0_SOURCE)	:= WEBSOCAT_RAND_HC_0_1_0
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_RAND_HC_0_1_0_SOURCE)
+
+WEBSOCAT_RAND_ISAAC_0_1_1_MD5		:= 74b15f1928431937f14ed91fdc12b542
+WEBSOCAT_RAND_ISAAC_0_1_1_URL		:= https://crates.io/api/v1/crates/rand_isaac/0.1.1/download
+WEBSOCAT_RAND_ISAAC_0_1_1_SOURCE	:= $(SRCDIR)/rand_isaac-0.1.1.crate
+$(WEBSOCAT_RAND_ISAAC_0_1_1_SOURCE)	:= WEBSOCAT_RAND_ISAAC_0_1_1
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_RAND_ISAAC_0_1_1_SOURCE)
+
+WEBSOCAT_RAND_JITTER_0_1_4_MD5		:= 2255d3d9a603e177985602a7df1c5bbc
+WEBSOCAT_RAND_JITTER_0_1_4_URL		:= https://crates.io/api/v1/crates/rand_jitter/0.1.4/download
+WEBSOCAT_RAND_JITTER_0_1_4_SOURCE	:= $(SRCDIR)/rand_jitter-0.1.4.crate
+$(WEBSOCAT_RAND_JITTER_0_1_4_SOURCE)	:= WEBSOCAT_RAND_JITTER_0_1_4
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_RAND_JITTER_0_1_4_SOURCE)
+
+WEBSOCAT_RAND_OS_0_1_3_MD5		:= 5acfdc8656212bce8df1bcc43db34c3d
+WEBSOCAT_RAND_OS_0_1_3_URL		:= https://crates.io/api/v1/crates/rand_os/0.1.3/download
+WEBSOCAT_RAND_OS_0_1_3_SOURCE	:= $(SRCDIR)/rand_os-0.1.3.crate
+$(WEBSOCAT_RAND_OS_0_1_3_SOURCE)	:= WEBSOCAT_RAND_OS_0_1_3
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_RAND_OS_0_1_3_SOURCE)
+
+WEBSOCAT_RAND_PCG_0_1_2_MD5		:= f9e08a49715c401602243230b28d86f0
+WEBSOCAT_RAND_PCG_0_1_2_URL		:= https://crates.io/api/v1/crates/rand_pcg/0.1.2/download
+WEBSOCAT_RAND_PCG_0_1_2_SOURCE	:= $(SRCDIR)/rand_pcg-0.1.2.crate
+$(WEBSOCAT_RAND_PCG_0_1_2_SOURCE)	:= WEBSOCAT_RAND_PCG_0_1_2
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_RAND_PCG_0_1_2_SOURCE)
+
+WEBSOCAT_RAND_XORSHIFT_0_1_1_MD5		:= 7826deb76941fc36c2391951bd65ba47
+WEBSOCAT_RAND_XORSHIFT_0_1_1_URL		:= https://crates.io/api/v1/crates/rand_xorshift/0.1.1/download
+WEBSOCAT_RAND_XORSHIFT_0_1_1_SOURCE	:= $(SRCDIR)/rand_xorshift-0.1.1.crate
+$(WEBSOCAT_RAND_XORSHIFT_0_1_1_SOURCE)	:= WEBSOCAT_RAND_XORSHIFT_0_1_1
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_RAND_XORSHIFT_0_1_1_SOURCE)
+
+WEBSOCAT_RDRAND_0_4_0_MD5		:= c8d655d206cbe48b84a22544d6fc6d15
+WEBSOCAT_RDRAND_0_4_0_URL		:= https://crates.io/api/v1/crates/rdrand/0.4.0/download
+WEBSOCAT_RDRAND_0_4_0_SOURCE	:= $(SRCDIR)/rdrand-0.4.0.crate
+$(WEBSOCAT_RDRAND_0_4_0_SOURCE)	:= WEBSOCAT_RDRAND_0_4_0
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_RDRAND_0_4_0_SOURCE)
+
+WEBSOCAT_READWRITE_0_1_2_MD5		:= 726d171356fe358b6b0a777b2e1525c0
+WEBSOCAT_READWRITE_0_1_2_URL		:= https://crates.io/api/v1/crates/readwrite/0.1.2/download
+WEBSOCAT_READWRITE_0_1_2_SOURCE	:= $(SRCDIR)/readwrite-0.1.2.crate
+$(WEBSOCAT_READWRITE_0_1_2_SOURCE)	:= WEBSOCAT_READWRITE_0_1_2
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_READWRITE_0_1_2_SOURCE)
+
+WEBSOCAT_REDOX_SYSCALL_0_1_57_MD5		:= 3cc3a4bd5861ca93d7c0d19129334703
+WEBSOCAT_REDOX_SYSCALL_0_1_57_URL		:= https://crates.io/api/v1/crates/redox_syscall/0.1.57/download
+WEBSOCAT_REDOX_SYSCALL_0_1_57_SOURCE	:= $(SRCDIR)/redox_syscall-0.1.57.crate
+$(WEBSOCAT_REDOX_SYSCALL_0_1_57_SOURCE)	:= WEBSOCAT_REDOX_SYSCALL_0_1_57
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_REDOX_SYSCALL_0_1_57_SOURCE)
+
+WEBSOCAT_REDOX_SYSCALL_0_2_16_MD5		:= 16111f31a29feae4ce4a324b83dc0189
+WEBSOCAT_REDOX_SYSCALL_0_2_16_URL		:= https://crates.io/api/v1/crates/redox_syscall/0.2.16/download
+WEBSOCAT_REDOX_SYSCALL_0_2_16_SOURCE	:= $(SRCDIR)/redox_syscall-0.2.16.crate
+$(WEBSOCAT_REDOX_SYSCALL_0_2_16_SOURCE)	:= WEBSOCAT_REDOX_SYSCALL_0_2_16
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_REDOX_SYSCALL_0_2_16_SOURCE)
+
+WEBSOCAT_REMOVE_DIR_ALL_0_5_3_MD5		:= 0538d1da369f3e3f0412aa4d735c1b61
+WEBSOCAT_REMOVE_DIR_ALL_0_5_3_URL		:= https://crates.io/api/v1/crates/remove_dir_all/0.5.3/download
+WEBSOCAT_REMOVE_DIR_ALL_0_5_3_SOURCE	:= $(SRCDIR)/remove_dir_all-0.5.3.crate
+$(WEBSOCAT_REMOVE_DIR_ALL_0_5_3_SOURCE)	:= WEBSOCAT_REMOVE_DIR_ALL_0_5_3
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_REMOVE_DIR_ALL_0_5_3_SOURCE)
+
+WEBSOCAT_RUSTC_VERSION_0_2_3_MD5		:= 4d101ab24d14c54937c5f45ece8fad5f
+WEBSOCAT_RUSTC_VERSION_0_2_3_URL		:= https://crates.io/api/v1/crates/rustc_version/0.2.3/download
+WEBSOCAT_RUSTC_VERSION_0_2_3_SOURCE	:= $(SRCDIR)/rustc_version-0.2.3.crate
+$(WEBSOCAT_RUSTC_VERSION_0_2_3_SOURCE)	:= WEBSOCAT_RUSTC_VERSION_0_2_3
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_RUSTC_VERSION_0_2_3_SOURCE)
+
+WEBSOCAT_SAFEMEM_0_3_3_MD5		:= 994b165f971ecfc09dc13fca8d394691
+WEBSOCAT_SAFEMEM_0_3_3_URL		:= https://crates.io/api/v1/crates/safemem/0.3.3/download
+WEBSOCAT_SAFEMEM_0_3_3_SOURCE	:= $(SRCDIR)/safemem-0.3.3.crate
+$(WEBSOCAT_SAFEMEM_0_3_3_SOURCE)	:= WEBSOCAT_SAFEMEM_0_3_3
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_SAFEMEM_0_3_3_SOURCE)
+
+WEBSOCAT_SCHANNEL_0_1_20_MD5		:= 47a2e9a3f22a0199c7f8292f43d5fa3d
+WEBSOCAT_SCHANNEL_0_1_20_URL		:= https://crates.io/api/v1/crates/schannel/0.1.20/download
+WEBSOCAT_SCHANNEL_0_1_20_SOURCE	:= $(SRCDIR)/schannel-0.1.20.crate
+$(WEBSOCAT_SCHANNEL_0_1_20_SOURCE)	:= WEBSOCAT_SCHANNEL_0_1_20
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_SCHANNEL_0_1_20_SOURCE)
+
+WEBSOCAT_SCOPEGUARD_1_1_0_MD5		:= b4a0a98a54439a5a37952c8879187ee3
+WEBSOCAT_SCOPEGUARD_1_1_0_URL		:= https://crates.io/api/v1/crates/scopeguard/1.1.0/download
+WEBSOCAT_SCOPEGUARD_1_1_0_SOURCE	:= $(SRCDIR)/scopeguard-1.1.0.crate
+$(WEBSOCAT_SCOPEGUARD_1_1_0_SOURCE)	:= WEBSOCAT_SCOPEGUARD_1_1_0
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_SCOPEGUARD_1_1_0_SOURCE)
+
+WEBSOCAT_SECURITY_FRAMEWORK_2_7_0_MD5		:= e09ebca0be86b1f613bdec7f95cad8d7
+WEBSOCAT_SECURITY_FRAMEWORK_2_7_0_URL		:= https://crates.io/api/v1/crates/security-framework/2.7.0/download
+WEBSOCAT_SECURITY_FRAMEWORK_2_7_0_SOURCE	:= $(SRCDIR)/security-framework-2.7.0.crate
+$(WEBSOCAT_SECURITY_FRAMEWORK_2_7_0_SOURCE)	:= WEBSOCAT_SECURITY_FRAMEWORK_2_7_0
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_SECURITY_FRAMEWORK_2_7_0_SOURCE)
+
+WEBSOCAT_SECURITY_FRAMEWORK_SYS_2_6_1_MD5		:= ffbaf84e19c894443b584605e668b6ea
+WEBSOCAT_SECURITY_FRAMEWORK_SYS_2_6_1_URL		:= https://crates.io/api/v1/crates/security-framework-sys/2.6.1/download
+WEBSOCAT_SECURITY_FRAMEWORK_SYS_2_6_1_SOURCE	:= $(SRCDIR)/security-framework-sys-2.6.1.crate
+$(WEBSOCAT_SECURITY_FRAMEWORK_SYS_2_6_1_SOURCE)	:= WEBSOCAT_SECURITY_FRAMEWORK_SYS_2_6_1
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_SECURITY_FRAMEWORK_SYS_2_6_1_SOURCE)
+
+WEBSOCAT_SEMVER_0_9_0_MD5		:= 64111c20b69aa1532fb66b70c4660b55
+WEBSOCAT_SEMVER_0_9_0_URL		:= https://crates.io/api/v1/crates/semver/0.9.0/download
+WEBSOCAT_SEMVER_0_9_0_SOURCE	:= $(SRCDIR)/semver-0.9.0.crate
+$(WEBSOCAT_SEMVER_0_9_0_SOURCE)	:= WEBSOCAT_SEMVER_0_9_0
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_SEMVER_0_9_0_SOURCE)
+
+WEBSOCAT_SEMVER_PARSER_0_7_0_MD5		:= 8b4d8c7b6e3a060d365bc1ad650929fa
+WEBSOCAT_SEMVER_PARSER_0_7_0_URL		:= https://crates.io/api/v1/crates/semver-parser/0.7.0/download
+WEBSOCAT_SEMVER_PARSER_0_7_0_SOURCE	:= $(SRCDIR)/semver-parser-0.7.0.crate
+$(WEBSOCAT_SEMVER_PARSER_0_7_0_SOURCE)	:= WEBSOCAT_SEMVER_PARSER_0_7_0
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_SEMVER_PARSER_0_7_0_SOURCE)
+
+WEBSOCAT_SHA_1_0_8_2_MD5		:= b1cace2e0c87bbbf5753996e28016787
+WEBSOCAT_SHA_1_0_8_2_URL		:= https://crates.io/api/v1/crates/sha-1/0.8.2/download
+WEBSOCAT_SHA_1_0_8_2_SOURCE	:= $(SRCDIR)/sha-1-0.8.2.crate
+$(WEBSOCAT_SHA_1_0_8_2_SOURCE)	:= WEBSOCAT_SHA_1_0_8_2
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_SHA_1_0_8_2_SOURCE)
+
+WEBSOCAT_SIGNAL_HOOK_REGISTRY_1_4_0_MD5		:= 21b43d5721b3a9c16059acb691f4314d
+WEBSOCAT_SIGNAL_HOOK_REGISTRY_1_4_0_URL		:= https://crates.io/api/v1/crates/signal-hook-registry/1.4.0/download
+WEBSOCAT_SIGNAL_HOOK_REGISTRY_1_4_0_SOURCE	:= $(SRCDIR)/signal-hook-registry-1.4.0.crate
+$(WEBSOCAT_SIGNAL_HOOK_REGISTRY_1_4_0_SOURCE)	:= WEBSOCAT_SIGNAL_HOOK_REGISTRY_1_4_0
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_SIGNAL_HOOK_REGISTRY_1_4_0_SOURCE)
+
+WEBSOCAT_SLAB_0_4_7_MD5		:= 9b7ebf6b588afaad70bf48a742973a30
+WEBSOCAT_SLAB_0_4_7_URL		:= https://crates.io/api/v1/crates/slab/0.4.7/download
+WEBSOCAT_SLAB_0_4_7_SOURCE	:= $(SRCDIR)/slab-0.4.7.crate
+$(WEBSOCAT_SLAB_0_4_7_SOURCE)	:= WEBSOCAT_SLAB_0_4_7
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_SLAB_0_4_7_SOURCE)
+
+WEBSOCAT_SLAB_TYPESAFE_0_1_3_MD5		:= 1a13596ea648f42a9ef124c502e60bc7
+WEBSOCAT_SLAB_TYPESAFE_0_1_3_URL		:= https://crates.io/api/v1/crates/slab_typesafe/0.1.3/download
+WEBSOCAT_SLAB_TYPESAFE_0_1_3_SOURCE	:= $(SRCDIR)/slab_typesafe-0.1.3.crate
+$(WEBSOCAT_SLAB_TYPESAFE_0_1_3_SOURCE)	:= WEBSOCAT_SLAB_TYPESAFE_0_1_3
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_SLAB_TYPESAFE_0_1_3_SOURCE)
+
+WEBSOCAT_SMALLVEC_0_6_14_MD5		:= e87ae057c34483e359e8de3e5f9dfbd5
+WEBSOCAT_SMALLVEC_0_6_14_URL		:= https://crates.io/api/v1/crates/smallvec/0.6.14/download
+WEBSOCAT_SMALLVEC_0_6_14_SOURCE	:= $(SRCDIR)/smallvec-0.6.14.crate
+$(WEBSOCAT_SMALLVEC_0_6_14_SOURCE)	:= WEBSOCAT_SMALLVEC_0_6_14
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_SMALLVEC_0_6_14_SOURCE)
+
+WEBSOCAT_SMALLVEC_1_9_0_MD5		:= f087a0412ec128b8a1a19460ae7aaf7a
+WEBSOCAT_SMALLVEC_1_9_0_URL		:= https://crates.io/api/v1/crates/smallvec/1.9.0/download
+WEBSOCAT_SMALLVEC_1_9_0_SOURCE	:= $(SRCDIR)/smallvec-1.9.0.crate
+$(WEBSOCAT_SMALLVEC_1_9_0_SOURCE)	:= WEBSOCAT_SMALLVEC_1_9_0
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_SMALLVEC_1_9_0_SOURCE)
+
+WEBSOCAT_SMART_DEFAULT_0_3_0_MD5		:= a7a9f63158ec1ceb6456a386bcef44aa
+WEBSOCAT_SMART_DEFAULT_0_3_0_URL		:= https://crates.io/api/v1/crates/smart-default/0.3.0/download
+WEBSOCAT_SMART_DEFAULT_0_3_0_SOURCE	:= $(SRCDIR)/smart-default-0.3.0.crate
+$(WEBSOCAT_SMART_DEFAULT_0_3_0_SOURCE)	:= WEBSOCAT_SMART_DEFAULT_0_3_0
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_SMART_DEFAULT_0_3_0_SOURCE)
+
+WEBSOCAT_STRUCTOPT_0_2_16_MD5		:= 1f42aab04908d63f65a54f24da851def
+WEBSOCAT_STRUCTOPT_0_2_16_URL		:= https://crates.io/api/v1/crates/structopt/0.2.16/download
+WEBSOCAT_STRUCTOPT_0_2_16_SOURCE	:= $(SRCDIR)/structopt-0.2.16.crate
+$(WEBSOCAT_STRUCTOPT_0_2_16_SOURCE)	:= WEBSOCAT_STRUCTOPT_0_2_16
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_STRUCTOPT_0_2_16_SOURCE)
+
+WEBSOCAT_STRUCTOPT_DERIVE_0_2_16_MD5		:= e5f9df6748867a7046ae07b0e3e1d269
+WEBSOCAT_STRUCTOPT_DERIVE_0_2_16_URL		:= https://crates.io/api/v1/crates/structopt-derive/0.2.16/download
+WEBSOCAT_STRUCTOPT_DERIVE_0_2_16_SOURCE	:= $(SRCDIR)/structopt-derive-0.2.16.crate
+$(WEBSOCAT_STRUCTOPT_DERIVE_0_2_16_SOURCE)	:= WEBSOCAT_STRUCTOPT_DERIVE_0_2_16
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_STRUCTOPT_DERIVE_0_2_16_SOURCE)
+
+WEBSOCAT_SUBTLE_2_4_1_MD5		:= 8e053c23f1d36fbf3f276fbf501e3e35
+WEBSOCAT_SUBTLE_2_4_1_URL		:= https://crates.io/api/v1/crates/subtle/2.4.1/download
+WEBSOCAT_SUBTLE_2_4_1_SOURCE	:= $(SRCDIR)/subtle-2.4.1.crate
+$(WEBSOCAT_SUBTLE_2_4_1_SOURCE)	:= WEBSOCAT_SUBTLE_2_4_1
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_SUBTLE_2_4_1_SOURCE)
+
+WEBSOCAT_SYN_0_15_44_MD5		:= 340f92fe45f0eb5766d679252e9acc42
+WEBSOCAT_SYN_0_15_44_URL		:= https://crates.io/api/v1/crates/syn/0.15.44/download
+WEBSOCAT_SYN_0_15_44_SOURCE	:= $(SRCDIR)/syn-0.15.44.crate
+$(WEBSOCAT_SYN_0_15_44_SOURCE)	:= WEBSOCAT_SYN_0_15_44
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_SYN_0_15_44_SOURCE)
+
+WEBSOCAT_SYN_1_0_100_MD5		:= cddbff9be83065516f12138e8d2d5095
+WEBSOCAT_SYN_1_0_100_URL		:= https://crates.io/api/v1/crates/syn/1.0.100/download
+WEBSOCAT_SYN_1_0_100_SOURCE	:= $(SRCDIR)/syn-1.0.100.crate
+$(WEBSOCAT_SYN_1_0_100_SOURCE)	:= WEBSOCAT_SYN_1_0_100
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_SYN_1_0_100_SOURCE)
+
+WEBSOCAT_TEMPFILE_3_3_0_MD5		:= f29a1bb1b5f3f29cedb36f40f720d765
+WEBSOCAT_TEMPFILE_3_3_0_URL		:= https://crates.io/api/v1/crates/tempfile/3.3.0/download
+WEBSOCAT_TEMPFILE_3_3_0_SOURCE	:= $(SRCDIR)/tempfile-3.3.0.crate
+$(WEBSOCAT_TEMPFILE_3_3_0_SOURCE)	:= WEBSOCAT_TEMPFILE_3_3_0
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_TEMPFILE_3_3_0_SOURCE)
+
+WEBSOCAT_TEXTWRAP_0_11_0_MD5		:= a8de006fe0c7e373c560dd51599287a8
+WEBSOCAT_TEXTWRAP_0_11_0_URL		:= https://crates.io/api/v1/crates/textwrap/0.11.0/download
+WEBSOCAT_TEXTWRAP_0_11_0_SOURCE	:= $(SRCDIR)/textwrap-0.11.0.crate
+$(WEBSOCAT_TEXTWRAP_0_11_0_SOURCE)	:= WEBSOCAT_TEXTWRAP_0_11_0
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_TEXTWRAP_0_11_0_SOURCE)
+
+WEBSOCAT_THISERROR_1_0_35_MD5		:= 3386986ecf2cfe5e6d210db1d2e9d9ea
+WEBSOCAT_THISERROR_1_0_35_URL		:= https://crates.io/api/v1/crates/thiserror/1.0.35/download
+WEBSOCAT_THISERROR_1_0_35_SOURCE	:= $(SRCDIR)/thiserror-1.0.35.crate
+$(WEBSOCAT_THISERROR_1_0_35_SOURCE)	:= WEBSOCAT_THISERROR_1_0_35
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_THISERROR_1_0_35_SOURCE)
+
+WEBSOCAT_THISERROR_IMPL_1_0_35_MD5		:= 850a2dd55b65666097104c1ed76b6c53
+WEBSOCAT_THISERROR_IMPL_1_0_35_URL		:= https://crates.io/api/v1/crates/thiserror-impl/1.0.35/download
+WEBSOCAT_THISERROR_IMPL_1_0_35_SOURCE	:= $(SRCDIR)/thiserror-impl-1.0.35.crate
+$(WEBSOCAT_THISERROR_IMPL_1_0_35_SOURCE)	:= WEBSOCAT_THISERROR_IMPL_1_0_35
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_THISERROR_IMPL_1_0_35_SOURCE)
+
+WEBSOCAT_TIME_0_1_44_MD5		:= c6c50e4feea5f4cc4e1fb3c7e88606a5
+WEBSOCAT_TIME_0_1_44_URL		:= https://crates.io/api/v1/crates/time/0.1.44/download
+WEBSOCAT_TIME_0_1_44_SOURCE	:= $(SRCDIR)/time-0.1.44.crate
+$(WEBSOCAT_TIME_0_1_44_SOURCE)	:= WEBSOCAT_TIME_0_1_44
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_TIME_0_1_44_SOURCE)
+
+WEBSOCAT_TINYVEC_1_6_0_MD5		:= 5f0470696baaa4e5953bddbf196998f9
+WEBSOCAT_TINYVEC_1_6_0_URL		:= https://crates.io/api/v1/crates/tinyvec/1.6.0/download
+WEBSOCAT_TINYVEC_1_6_0_SOURCE	:= $(SRCDIR)/tinyvec-1.6.0.crate
+$(WEBSOCAT_TINYVEC_1_6_0_SOURCE)	:= WEBSOCAT_TINYVEC_1_6_0
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_TINYVEC_1_6_0_SOURCE)
+
+WEBSOCAT_TINYVEC_MACROS_0_1_0_MD5		:= 7bfcad253aff26bc26c5e3521f3ba891
+WEBSOCAT_TINYVEC_MACROS_0_1_0_URL		:= https://crates.io/api/v1/crates/tinyvec_macros/0.1.0/download
+WEBSOCAT_TINYVEC_MACROS_0_1_0_SOURCE	:= $(SRCDIR)/tinyvec_macros-0.1.0.crate
+$(WEBSOCAT_TINYVEC_MACROS_0_1_0_SOURCE)	:= WEBSOCAT_TINYVEC_MACROS_0_1_0
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_TINYVEC_MACROS_0_1_0_SOURCE)
+
+WEBSOCAT_TK_LISTEN_0_2_1_MD5		:= c853f885486f785b964849c7a76fec78
+WEBSOCAT_TK_LISTEN_0_2_1_URL		:= https://crates.io/api/v1/crates/tk-listen/0.2.1/download
+WEBSOCAT_TK_LISTEN_0_2_1_SOURCE	:= $(SRCDIR)/tk-listen-0.2.1.crate
+$(WEBSOCAT_TK_LISTEN_0_2_1_SOURCE)	:= WEBSOCAT_TK_LISTEN_0_2_1
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_TK_LISTEN_0_2_1_SOURCE)
+
+WEBSOCAT_TOKIO_0_1_22_MD5		:= b521ad2ed1e1ac7384af8ca3faa2967e
+WEBSOCAT_TOKIO_0_1_22_URL		:= https://crates.io/api/v1/crates/tokio/0.1.22/download
+WEBSOCAT_TOKIO_0_1_22_SOURCE	:= $(SRCDIR)/tokio-0.1.22.crate
+$(WEBSOCAT_TOKIO_0_1_22_SOURCE)	:= WEBSOCAT_TOKIO_0_1_22
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_TOKIO_0_1_22_SOURCE)
+
+WEBSOCAT_TOKIO_CODEC_0_1_2_MD5		:= 81550da6fbe0dd33fec098a811476df6
+WEBSOCAT_TOKIO_CODEC_0_1_2_URL		:= https://crates.io/api/v1/crates/tokio-codec/0.1.2/download
+WEBSOCAT_TOKIO_CODEC_0_1_2_SOURCE	:= $(SRCDIR)/tokio-codec-0.1.2.crate
+$(WEBSOCAT_TOKIO_CODEC_0_1_2_SOURCE)	:= WEBSOCAT_TOKIO_CODEC_0_1_2
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_TOKIO_CODEC_0_1_2_SOURCE)
+
+WEBSOCAT_TOKIO_CURRENT_THREAD_0_1_7_MD5		:= ea62c780602b6ee7f9698b6cb7c7ca75
+WEBSOCAT_TOKIO_CURRENT_THREAD_0_1_7_URL		:= https://crates.io/api/v1/crates/tokio-current-thread/0.1.7/download
+WEBSOCAT_TOKIO_CURRENT_THREAD_0_1_7_SOURCE	:= $(SRCDIR)/tokio-current-thread-0.1.7.crate
+$(WEBSOCAT_TOKIO_CURRENT_THREAD_0_1_7_SOURCE)	:= WEBSOCAT_TOKIO_CURRENT_THREAD_0_1_7
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_TOKIO_CURRENT_THREAD_0_1_7_SOURCE)
+
+WEBSOCAT_TOKIO_EXECUTOR_0_1_10_MD5		:= 231140a3fc27d3743bdf5709a11bf330
+WEBSOCAT_TOKIO_EXECUTOR_0_1_10_URL		:= https://crates.io/api/v1/crates/tokio-executor/0.1.10/download
+WEBSOCAT_TOKIO_EXECUTOR_0_1_10_SOURCE	:= $(SRCDIR)/tokio-executor-0.1.10.crate
+$(WEBSOCAT_TOKIO_EXECUTOR_0_1_10_SOURCE)	:= WEBSOCAT_TOKIO_EXECUTOR_0_1_10
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_TOKIO_EXECUTOR_0_1_10_SOURCE)
+
+WEBSOCAT_TOKIO_FILE_UNIX_0_5_1_MD5		:= 79994a1b66afcdec629d487e66cb06a9
+WEBSOCAT_TOKIO_FILE_UNIX_0_5_1_URL		:= https://crates.io/api/v1/crates/tokio-file-unix/0.5.1/download
+WEBSOCAT_TOKIO_FILE_UNIX_0_5_1_SOURCE	:= $(SRCDIR)/tokio-file-unix-0.5.1.crate
+$(WEBSOCAT_TOKIO_FILE_UNIX_0_5_1_SOURCE)	:= WEBSOCAT_TOKIO_FILE_UNIX_0_5_1
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_TOKIO_FILE_UNIX_0_5_1_SOURCE)
+
+WEBSOCAT_TOKIO_FS_0_1_7_MD5		:= bf4481a8e4e42049b7540dd1ef478efd
+WEBSOCAT_TOKIO_FS_0_1_7_URL		:= https://crates.io/api/v1/crates/tokio-fs/0.1.7/download
+WEBSOCAT_TOKIO_FS_0_1_7_SOURCE	:= $(SRCDIR)/tokio-fs-0.1.7.crate
+$(WEBSOCAT_TOKIO_FS_0_1_7_SOURCE)	:= WEBSOCAT_TOKIO_FS_0_1_7
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_TOKIO_FS_0_1_7_SOURCE)
+
+WEBSOCAT_TOKIO_IO_0_1_13_MD5		:= 533cca06f326430afa78a186b0d9833c
+WEBSOCAT_TOKIO_IO_0_1_13_URL		:= https://crates.io/api/v1/crates/tokio-io/0.1.13/download
+WEBSOCAT_TOKIO_IO_0_1_13_SOURCE	:= $(SRCDIR)/tokio-io-0.1.13.crate
+$(WEBSOCAT_TOKIO_IO_0_1_13_SOURCE)	:= WEBSOCAT_TOKIO_IO_0_1_13
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_TOKIO_IO_0_1_13_SOURCE)
+
+WEBSOCAT_TOKIO_NAMED_PIPES_0_1_0_MD5		:= 030e252ec9eea53de036414ef6580637
+WEBSOCAT_TOKIO_NAMED_PIPES_0_1_0_URL		:= https://crates.io/api/v1/crates/tokio-named-pipes/0.1.0/download
+WEBSOCAT_TOKIO_NAMED_PIPES_0_1_0_SOURCE	:= $(SRCDIR)/tokio-named-pipes-0.1.0.crate
+$(WEBSOCAT_TOKIO_NAMED_PIPES_0_1_0_SOURCE)	:= WEBSOCAT_TOKIO_NAMED_PIPES_0_1_0
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_TOKIO_NAMED_PIPES_0_1_0_SOURCE)
+
+WEBSOCAT_TOKIO_PROCESS_0_2_5_MD5		:= b6d0910d4987701952a79b0ba0b8a9a9
+WEBSOCAT_TOKIO_PROCESS_0_2_5_URL		:= https://crates.io/api/v1/crates/tokio-process/0.2.5/download
+WEBSOCAT_TOKIO_PROCESS_0_2_5_SOURCE	:= $(SRCDIR)/tokio-process-0.2.5.crate
+$(WEBSOCAT_TOKIO_PROCESS_0_2_5_SOURCE)	:= WEBSOCAT_TOKIO_PROCESS_0_2_5
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_TOKIO_PROCESS_0_2_5_SOURCE)
+
+WEBSOCAT_TOKIO_REACTOR_0_1_12_MD5		:= 9fa6cdac7b44df7983891dc0fb87fd83
+WEBSOCAT_TOKIO_REACTOR_0_1_12_URL		:= https://crates.io/api/v1/crates/tokio-reactor/0.1.12/download
+WEBSOCAT_TOKIO_REACTOR_0_1_12_SOURCE	:= $(SRCDIR)/tokio-reactor-0.1.12.crate
+$(WEBSOCAT_TOKIO_REACTOR_0_1_12_SOURCE)	:= WEBSOCAT_TOKIO_REACTOR_0_1_12
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_TOKIO_REACTOR_0_1_12_SOURCE)
+
+WEBSOCAT_TOKIO_SIGNAL_0_2_9_MD5		:= a9d9717d3cb72393bfb0bfdf8b15db1f
+WEBSOCAT_TOKIO_SIGNAL_0_2_9_URL		:= https://crates.io/api/v1/crates/tokio-signal/0.2.9/download
+WEBSOCAT_TOKIO_SIGNAL_0_2_9_SOURCE	:= $(SRCDIR)/tokio-signal-0.2.9.crate
+$(WEBSOCAT_TOKIO_SIGNAL_0_2_9_SOURCE)	:= WEBSOCAT_TOKIO_SIGNAL_0_2_9
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_TOKIO_SIGNAL_0_2_9_SOURCE)
+
+WEBSOCAT_TOKIO_STDIN_STDOUT_0_1_5_MD5		:= 036e8d45b21baa7fbb72656cd5e71ba1
+WEBSOCAT_TOKIO_STDIN_STDOUT_0_1_5_URL		:= https://crates.io/api/v1/crates/tokio-stdin-stdout/0.1.5/download
+WEBSOCAT_TOKIO_STDIN_STDOUT_0_1_5_SOURCE	:= $(SRCDIR)/tokio-stdin-stdout-0.1.5.crate
+$(WEBSOCAT_TOKIO_STDIN_STDOUT_0_1_5_SOURCE)	:= WEBSOCAT_TOKIO_STDIN_STDOUT_0_1_5
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_TOKIO_STDIN_STDOUT_0_1_5_SOURCE)
+
+WEBSOCAT_TOKIO_SYNC_0_1_8_MD5		:= aabc9eb293b82123f0223970184601e3
+WEBSOCAT_TOKIO_SYNC_0_1_8_URL		:= https://crates.io/api/v1/crates/tokio-sync/0.1.8/download
+WEBSOCAT_TOKIO_SYNC_0_1_8_SOURCE	:= $(SRCDIR)/tokio-sync-0.1.8.crate
+$(WEBSOCAT_TOKIO_SYNC_0_1_8_SOURCE)	:= WEBSOCAT_TOKIO_SYNC_0_1_8
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_TOKIO_SYNC_0_1_8_SOURCE)
+
+WEBSOCAT_TOKIO_TCP_0_1_4_MD5		:= 8a91e95192d3540845b244118b33f591
+WEBSOCAT_TOKIO_TCP_0_1_4_URL		:= https://crates.io/api/v1/crates/tokio-tcp/0.1.4/download
+WEBSOCAT_TOKIO_TCP_0_1_4_SOURCE	:= $(SRCDIR)/tokio-tcp-0.1.4.crate
+$(WEBSOCAT_TOKIO_TCP_0_1_4_SOURCE)	:= WEBSOCAT_TOKIO_TCP_0_1_4
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_TOKIO_TCP_0_1_4_SOURCE)
+
+WEBSOCAT_TOKIO_THREADPOOL_0_1_18_MD5		:= 309b8c8a38a188c3c878ab31f7b5008e
+WEBSOCAT_TOKIO_THREADPOOL_0_1_18_URL		:= https://crates.io/api/v1/crates/tokio-threadpool/0.1.18/download
+WEBSOCAT_TOKIO_THREADPOOL_0_1_18_SOURCE	:= $(SRCDIR)/tokio-threadpool-0.1.18.crate
+$(WEBSOCAT_TOKIO_THREADPOOL_0_1_18_SOURCE)	:= WEBSOCAT_TOKIO_THREADPOOL_0_1_18
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_TOKIO_THREADPOOL_0_1_18_SOURCE)
+
+WEBSOCAT_TOKIO_TIMER_0_2_13_MD5		:= 122f7f583ffc6ee551eb0259bf5340aa
+WEBSOCAT_TOKIO_TIMER_0_2_13_URL		:= https://crates.io/api/v1/crates/tokio-timer/0.2.13/download
+WEBSOCAT_TOKIO_TIMER_0_2_13_SOURCE	:= $(SRCDIR)/tokio-timer-0.2.13.crate
+$(WEBSOCAT_TOKIO_TIMER_0_2_13_SOURCE)	:= WEBSOCAT_TOKIO_TIMER_0_2_13
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_TOKIO_TIMER_0_2_13_SOURCE)
+
+WEBSOCAT_TOKIO_TLS_0_2_1_MD5		:= 93b0a3f6f09adde608f98ac4dd3e2dc6
+WEBSOCAT_TOKIO_TLS_0_2_1_URL		:= https://crates.io/api/v1/crates/tokio-tls/0.2.1/download
+WEBSOCAT_TOKIO_TLS_0_2_1_SOURCE	:= $(SRCDIR)/tokio-tls-0.2.1.crate
+$(WEBSOCAT_TOKIO_TLS_0_2_1_SOURCE)	:= WEBSOCAT_TOKIO_TLS_0_2_1
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_TOKIO_TLS_0_2_1_SOURCE)
+
+WEBSOCAT_TOKIO_UDP_0_1_6_MD5		:= 58771e80a94984d9b0846dd621d49203
+WEBSOCAT_TOKIO_UDP_0_1_6_URL		:= https://crates.io/api/v1/crates/tokio-udp/0.1.6/download
+WEBSOCAT_TOKIO_UDP_0_1_6_SOURCE	:= $(SRCDIR)/tokio-udp-0.1.6.crate
+$(WEBSOCAT_TOKIO_UDP_0_1_6_SOURCE)	:= WEBSOCAT_TOKIO_UDP_0_1_6
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_TOKIO_UDP_0_1_6_SOURCE)
+
+WEBSOCAT_TOKIO_UDS_0_2_7_MD5		:= a09a9df0d8c8963982c2ddc4c7db26f7
+WEBSOCAT_TOKIO_UDS_0_2_7_URL		:= https://crates.io/api/v1/crates/tokio-uds/0.2.7/download
+WEBSOCAT_TOKIO_UDS_0_2_7_SOURCE	:= $(SRCDIR)/tokio-uds-0.2.7.crate
+$(WEBSOCAT_TOKIO_UDS_0_2_7_SOURCE)	:= WEBSOCAT_TOKIO_UDS_0_2_7
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_TOKIO_UDS_0_2_7_SOURCE)
+
+WEBSOCAT_TRAITOBJECT_0_1_0_MD5		:= 8a46d349db9c086cac033bcbe44a4e8c
+WEBSOCAT_TRAITOBJECT_0_1_0_URL		:= https://crates.io/api/v1/crates/traitobject/0.1.0/download
+WEBSOCAT_TRAITOBJECT_0_1_0_SOURCE	:= $(SRCDIR)/traitobject-0.1.0.crate
+$(WEBSOCAT_TRAITOBJECT_0_1_0_SOURCE)	:= WEBSOCAT_TRAITOBJECT_0_1_0
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_TRAITOBJECT_0_1_0_SOURCE)
+
+WEBSOCAT_TYPEABLE_0_1_2_MD5		:= 389c8d5d19fa97981c8fff9416541391
+WEBSOCAT_TYPEABLE_0_1_2_URL		:= https://crates.io/api/v1/crates/typeable/0.1.2/download
+WEBSOCAT_TYPEABLE_0_1_2_SOURCE	:= $(SRCDIR)/typeable-0.1.2.crate
+$(WEBSOCAT_TYPEABLE_0_1_2_SOURCE)	:= WEBSOCAT_TYPEABLE_0_1_2
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_TYPEABLE_0_1_2_SOURCE)
+
+WEBSOCAT_TYPENUM_1_15_0_MD5		:= 7b38b145ae3f6d7d09a1a7a98396f1a2
+WEBSOCAT_TYPENUM_1_15_0_URL		:= https://crates.io/api/v1/crates/typenum/1.15.0/download
+WEBSOCAT_TYPENUM_1_15_0_SOURCE	:= $(SRCDIR)/typenum-1.15.0.crate
+$(WEBSOCAT_TYPENUM_1_15_0_SOURCE)	:= WEBSOCAT_TYPENUM_1_15_0
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_TYPENUM_1_15_0_SOURCE)
+
+WEBSOCAT_UNICASE_1_4_2_MD5		:= f316454c1928e03f6459d7eac04d2168
+WEBSOCAT_UNICASE_1_4_2_URL		:= https://crates.io/api/v1/crates/unicase/1.4.2/download
+WEBSOCAT_UNICASE_1_4_2_SOURCE	:= $(SRCDIR)/unicase-1.4.2.crate
+$(WEBSOCAT_UNICASE_1_4_2_SOURCE)	:= WEBSOCAT_UNICASE_1_4_2
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_UNICASE_1_4_2_SOURCE)
+
+WEBSOCAT_UNICODE_BIDI_0_3_8_MD5		:= bd0cd532c61dac2087ecd7e0fef0d011
+WEBSOCAT_UNICODE_BIDI_0_3_8_URL		:= https://crates.io/api/v1/crates/unicode-bidi/0.3.8/download
+WEBSOCAT_UNICODE_BIDI_0_3_8_SOURCE	:= $(SRCDIR)/unicode-bidi-0.3.8.crate
+$(WEBSOCAT_UNICODE_BIDI_0_3_8_SOURCE)	:= WEBSOCAT_UNICODE_BIDI_0_3_8
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_UNICODE_BIDI_0_3_8_SOURCE)
+
+WEBSOCAT_UNICODE_IDENT_1_0_4_MD5		:= c12056f5fc11f0d69b92b1d1d4799c80
+WEBSOCAT_UNICODE_IDENT_1_0_4_URL		:= https://crates.io/api/v1/crates/unicode-ident/1.0.4/download
+WEBSOCAT_UNICODE_IDENT_1_0_4_SOURCE	:= $(SRCDIR)/unicode-ident-1.0.4.crate
+$(WEBSOCAT_UNICODE_IDENT_1_0_4_SOURCE)	:= WEBSOCAT_UNICODE_IDENT_1_0_4
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_UNICODE_IDENT_1_0_4_SOURCE)
+
+WEBSOCAT_UNICODE_NORMALIZATION_0_1_22_MD5		:= c12d182417999fc365f952e701f6071f
+WEBSOCAT_UNICODE_NORMALIZATION_0_1_22_URL		:= https://crates.io/api/v1/crates/unicode-normalization/0.1.22/download
+WEBSOCAT_UNICODE_NORMALIZATION_0_1_22_SOURCE	:= $(SRCDIR)/unicode-normalization-0.1.22.crate
+$(WEBSOCAT_UNICODE_NORMALIZATION_0_1_22_SOURCE)	:= WEBSOCAT_UNICODE_NORMALIZATION_0_1_22
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_UNICODE_NORMALIZATION_0_1_22_SOURCE)
+
+WEBSOCAT_UNICODE_SEGMENTATION_1_10_0_MD5		:= 1bee40619dc49044e9691164d7182a2a
+WEBSOCAT_UNICODE_SEGMENTATION_1_10_0_URL		:= https://crates.io/api/v1/crates/unicode-segmentation/1.10.0/download
+WEBSOCAT_UNICODE_SEGMENTATION_1_10_0_SOURCE	:= $(SRCDIR)/unicode-segmentation-1.10.0.crate
+$(WEBSOCAT_UNICODE_SEGMENTATION_1_10_0_SOURCE)	:= WEBSOCAT_UNICODE_SEGMENTATION_1_10_0
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_UNICODE_SEGMENTATION_1_10_0_SOURCE)
+
+WEBSOCAT_UNICODE_WIDTH_0_1_10_MD5		:= 7d6d4fc9fad200d6e295f6930e97e022
+WEBSOCAT_UNICODE_WIDTH_0_1_10_URL		:= https://crates.io/api/v1/crates/unicode-width/0.1.10/download
+WEBSOCAT_UNICODE_WIDTH_0_1_10_SOURCE	:= $(SRCDIR)/unicode-width-0.1.10.crate
+$(WEBSOCAT_UNICODE_WIDTH_0_1_10_SOURCE)	:= WEBSOCAT_UNICODE_WIDTH_0_1_10
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_UNICODE_WIDTH_0_1_10_SOURCE)
+
+WEBSOCAT_UNICODE_XID_0_1_0_MD5		:= 5aaf04f9a94a6450e3e4963ddd62b92d
+WEBSOCAT_UNICODE_XID_0_1_0_URL		:= https://crates.io/api/v1/crates/unicode-xid/0.1.0/download
+WEBSOCAT_UNICODE_XID_0_1_0_SOURCE	:= $(SRCDIR)/unicode-xid-0.1.0.crate
+$(WEBSOCAT_UNICODE_XID_0_1_0_SOURCE)	:= WEBSOCAT_UNICODE_XID_0_1_0
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_UNICODE_XID_0_1_0_SOURCE)
+
+WEBSOCAT_UNIVERSAL_HASH_0_4_1_MD5		:= ea24161ca337ad70c7eb0cd8980b83d4
+WEBSOCAT_UNIVERSAL_HASH_0_4_1_URL		:= https://crates.io/api/v1/crates/universal-hash/0.4.1/download
+WEBSOCAT_UNIVERSAL_HASH_0_4_1_SOURCE	:= $(SRCDIR)/universal-hash-0.4.1.crate
+$(WEBSOCAT_UNIVERSAL_HASH_0_4_1_SOURCE)	:= WEBSOCAT_UNIVERSAL_HASH_0_4_1
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_UNIVERSAL_HASH_0_4_1_SOURCE)
+
+WEBSOCAT_URL_1_7_2_MD5		:= 32f0ced8a8881d2c0572b879bf15b91e
+WEBSOCAT_URL_1_7_2_URL		:= https://crates.io/api/v1/crates/url/1.7.2/download
+WEBSOCAT_URL_1_7_2_SOURCE	:= $(SRCDIR)/url-1.7.2.crate
+$(WEBSOCAT_URL_1_7_2_SOURCE)	:= WEBSOCAT_URL_1_7_2
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_URL_1_7_2_SOURCE)
+
+WEBSOCAT_VCPKG_0_2_15_MD5		:= e900a384ac7dbb320fe6a7279fbfef89
+WEBSOCAT_VCPKG_0_2_15_URL		:= https://crates.io/api/v1/crates/vcpkg/0.2.15/download
+WEBSOCAT_VCPKG_0_2_15_SOURCE	:= $(SRCDIR)/vcpkg-0.2.15.crate
+$(WEBSOCAT_VCPKG_0_2_15_SOURCE)	:= WEBSOCAT_VCPKG_0_2_15
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_VCPKG_0_2_15_SOURCE)
+
+WEBSOCAT_VERSION_CHECK_0_1_5_MD5		:= f48add3d6234e8b9829fa5364509f425
+WEBSOCAT_VERSION_CHECK_0_1_5_URL		:= https://crates.io/api/v1/crates/version_check/0.1.5/download
+WEBSOCAT_VERSION_CHECK_0_1_5_SOURCE	:= $(SRCDIR)/version_check-0.1.5.crate
+$(WEBSOCAT_VERSION_CHECK_0_1_5_SOURCE)	:= WEBSOCAT_VERSION_CHECK_0_1_5
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_VERSION_CHECK_0_1_5_SOURCE)
+
+WEBSOCAT_VERSION_CHECK_0_9_4_MD5		:= d18d362345c4fe512ef67b738b239fb8
+WEBSOCAT_VERSION_CHECK_0_9_4_URL		:= https://crates.io/api/v1/crates/version_check/0.9.4/download
+WEBSOCAT_VERSION_CHECK_0_9_4_SOURCE	:= $(SRCDIR)/version_check-0.9.4.crate
+$(WEBSOCAT_VERSION_CHECK_0_9_4_SOURCE)	:= WEBSOCAT_VERSION_CHECK_0_9_4
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_VERSION_CHECK_0_9_4_SOURCE)
+
+WEBSOCAT_WASI_0_10_0_WASI_SNAPSHOT_PREVIEW1_MD5		:= a312b55a428f827a91097d1d8497b02b
+WEBSOCAT_WASI_0_10_0_WASI_SNAPSHOT_PREVIEW1_URL		:= https://crates.io/api/v1/crates/wasi/0.10.0+wasi-snapshot-preview1/download
+WEBSOCAT_WASI_0_10_0_WASI_SNAPSHOT_PREVIEW1_SOURCE	:= $(SRCDIR)/wasi-0.10.0+wasi-snapshot-preview1.crate
+$(WEBSOCAT_WASI_0_10_0_WASI_SNAPSHOT_PREVIEW1_SOURCE)	:= WEBSOCAT_WASI_0_10_0_WASI_SNAPSHOT_PREVIEW1
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_WASI_0_10_0_WASI_SNAPSHOT_PREVIEW1_SOURCE)
+
+WEBSOCAT_WASI_0_11_0_WASI_SNAPSHOT_PREVIEW1_MD5		:= e972ea58ec203bfa6c79c1207852298b
+WEBSOCAT_WASI_0_11_0_WASI_SNAPSHOT_PREVIEW1_URL		:= https://crates.io/api/v1/crates/wasi/0.11.0+wasi-snapshot-preview1/download
+WEBSOCAT_WASI_0_11_0_WASI_SNAPSHOT_PREVIEW1_SOURCE	:= $(SRCDIR)/wasi-0.11.0+wasi-snapshot-preview1.crate
+$(WEBSOCAT_WASI_0_11_0_WASI_SNAPSHOT_PREVIEW1_SOURCE)	:= WEBSOCAT_WASI_0_11_0_WASI_SNAPSHOT_PREVIEW1
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_WASI_0_11_0_WASI_SNAPSHOT_PREVIEW1_SOURCE)
+
+WEBSOCAT_WEBSOCKET_0_26_5_MD5		:= 5fc12209dee8d7de350a1dd5eb1b54b5
+WEBSOCAT_WEBSOCKET_0_26_5_URL		:= https://crates.io/api/v1/crates/websocket/0.26.5/download
+WEBSOCAT_WEBSOCKET_0_26_5_SOURCE	:= $(SRCDIR)/websocket-0.26.5.crate
+$(WEBSOCAT_WEBSOCKET_0_26_5_SOURCE)	:= WEBSOCAT_WEBSOCKET_0_26_5
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_WEBSOCKET_0_26_5_SOURCE)
+
+WEBSOCAT_WEBSOCKET_BASE_0_26_5_MD5		:= 22afd66095bf3c9a8ece5f3f2fb3e52c
+WEBSOCAT_WEBSOCKET_BASE_0_26_5_URL		:= https://crates.io/api/v1/crates/websocket-base/0.26.5/download
+WEBSOCAT_WEBSOCKET_BASE_0_26_5_SOURCE	:= $(SRCDIR)/websocket-base-0.26.5.crate
+$(WEBSOCAT_WEBSOCKET_BASE_0_26_5_SOURCE)	:= WEBSOCAT_WEBSOCKET_BASE_0_26_5
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_WEBSOCKET_BASE_0_26_5_SOURCE)
+
+WEBSOCAT_WINAPI_0_2_8_MD5		:= b44489eb4799c4fabac3fceb48de54f7
+WEBSOCAT_WINAPI_0_2_8_URL		:= https://crates.io/api/v1/crates/winapi/0.2.8/download
+WEBSOCAT_WINAPI_0_2_8_SOURCE	:= $(SRCDIR)/winapi-0.2.8.crate
+$(WEBSOCAT_WINAPI_0_2_8_SOURCE)	:= WEBSOCAT_WINAPI_0_2_8
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_WINAPI_0_2_8_SOURCE)
+
+WEBSOCAT_WINAPI_0_3_9_MD5		:= 0498c4a11448bfc35dc7bb2caa64c753
+WEBSOCAT_WINAPI_0_3_9_URL		:= https://crates.io/api/v1/crates/winapi/0.3.9/download
+WEBSOCAT_WINAPI_0_3_9_SOURCE	:= $(SRCDIR)/winapi-0.3.9.crate
+$(WEBSOCAT_WINAPI_0_3_9_SOURCE)	:= WEBSOCAT_WINAPI_0_3_9
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_WINAPI_0_3_9_SOURCE)
+
+WEBSOCAT_WINAPI_BUILD_0_1_1_MD5		:= c900e7dbce808ff8ced375077b17a163
+WEBSOCAT_WINAPI_BUILD_0_1_1_URL		:= https://crates.io/api/v1/crates/winapi-build/0.1.1/download
+WEBSOCAT_WINAPI_BUILD_0_1_1_SOURCE	:= $(SRCDIR)/winapi-build-0.1.1.crate
+$(WEBSOCAT_WINAPI_BUILD_0_1_1_SOURCE)	:= WEBSOCAT_WINAPI_BUILD_0_1_1
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_WINAPI_BUILD_0_1_1_SOURCE)
+
+WEBSOCAT_WINAPI_I686_PC_WINDOWS_GNU_0_4_0_MD5		:= db96b50050277bf05a3c68534bbb9586
+WEBSOCAT_WINAPI_I686_PC_WINDOWS_GNU_0_4_0_URL		:= https://crates.io/api/v1/crates/winapi-i686-pc-windows-gnu/0.4.0/download
+WEBSOCAT_WINAPI_I686_PC_WINDOWS_GNU_0_4_0_SOURCE	:= $(SRCDIR)/winapi-i686-pc-windows-gnu-0.4.0.crate
+$(WEBSOCAT_WINAPI_I686_PC_WINDOWS_GNU_0_4_0_SOURCE)	:= WEBSOCAT_WINAPI_I686_PC_WINDOWS_GNU_0_4_0
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_WINAPI_I686_PC_WINDOWS_GNU_0_4_0_SOURCE)
+
+WEBSOCAT_WINAPI_X86_64_PC_WINDOWS_GNU_0_4_0_MD5		:= 09de9d01e7331ff3da11f58be8bef0df
+WEBSOCAT_WINAPI_X86_64_PC_WINDOWS_GNU_0_4_0_URL		:= https://crates.io/api/v1/crates/winapi-x86_64-pc-windows-gnu/0.4.0/download
+WEBSOCAT_WINAPI_X86_64_PC_WINDOWS_GNU_0_4_0_SOURCE	:= $(SRCDIR)/winapi-x86_64-pc-windows-gnu-0.4.0.crate
+$(WEBSOCAT_WINAPI_X86_64_PC_WINDOWS_GNU_0_4_0_SOURCE)	:= WEBSOCAT_WINAPI_X86_64_PC_WINDOWS_GNU_0_4_0
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_WINAPI_X86_64_PC_WINDOWS_GNU_0_4_0_SOURCE)
+
+WEBSOCAT_WINDOWS_SYS_0_36_1_MD5		:= b3083009944ab58cbd9c4941f4965545
+WEBSOCAT_WINDOWS_SYS_0_36_1_URL		:= https://crates.io/api/v1/crates/windows-sys/0.36.1/download
+WEBSOCAT_WINDOWS_SYS_0_36_1_SOURCE	:= $(SRCDIR)/windows-sys-0.36.1.crate
+$(WEBSOCAT_WINDOWS_SYS_0_36_1_SOURCE)	:= WEBSOCAT_WINDOWS_SYS_0_36_1
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_WINDOWS_SYS_0_36_1_SOURCE)
+
+WEBSOCAT_WINDOWS_AARCH64_MSVC_0_36_1_MD5		:= 776128629d743f0d6127db259a0d8844
+WEBSOCAT_WINDOWS_AARCH64_MSVC_0_36_1_URL		:= https://crates.io/api/v1/crates/windows_aarch64_msvc/0.36.1/download
+WEBSOCAT_WINDOWS_AARCH64_MSVC_0_36_1_SOURCE	:= $(SRCDIR)/windows_aarch64_msvc-0.36.1.crate
+$(WEBSOCAT_WINDOWS_AARCH64_MSVC_0_36_1_SOURCE)	:= WEBSOCAT_WINDOWS_AARCH64_MSVC_0_36_1
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_WINDOWS_AARCH64_MSVC_0_36_1_SOURCE)
+
+WEBSOCAT_WINDOWS_I686_GNU_0_36_1_MD5		:= 7f60b76e78bd2a190cf3ddc2b4c4920b
+WEBSOCAT_WINDOWS_I686_GNU_0_36_1_URL		:= https://crates.io/api/v1/crates/windows_i686_gnu/0.36.1/download
+WEBSOCAT_WINDOWS_I686_GNU_0_36_1_SOURCE	:= $(SRCDIR)/windows_i686_gnu-0.36.1.crate
+$(WEBSOCAT_WINDOWS_I686_GNU_0_36_1_SOURCE)	:= WEBSOCAT_WINDOWS_I686_GNU_0_36_1
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_WINDOWS_I686_GNU_0_36_1_SOURCE)
+
+WEBSOCAT_WINDOWS_I686_MSVC_0_36_1_MD5		:= ce798410cba61fe713f3487cd6cafef4
+WEBSOCAT_WINDOWS_I686_MSVC_0_36_1_URL		:= https://crates.io/api/v1/crates/windows_i686_msvc/0.36.1/download
+WEBSOCAT_WINDOWS_I686_MSVC_0_36_1_SOURCE	:= $(SRCDIR)/windows_i686_msvc-0.36.1.crate
+$(WEBSOCAT_WINDOWS_I686_MSVC_0_36_1_SOURCE)	:= WEBSOCAT_WINDOWS_I686_MSVC_0_36_1
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_WINDOWS_I686_MSVC_0_36_1_SOURCE)
+
+WEBSOCAT_WINDOWS_X86_64_GNU_0_36_1_MD5		:= f55176d04297df9dd5ccae7c748e26c7
+WEBSOCAT_WINDOWS_X86_64_GNU_0_36_1_URL		:= https://crates.io/api/v1/crates/windows_x86_64_gnu/0.36.1/download
+WEBSOCAT_WINDOWS_X86_64_GNU_0_36_1_SOURCE	:= $(SRCDIR)/windows_x86_64_gnu-0.36.1.crate
+$(WEBSOCAT_WINDOWS_X86_64_GNU_0_36_1_SOURCE)	:= WEBSOCAT_WINDOWS_X86_64_GNU_0_36_1
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_WINDOWS_X86_64_GNU_0_36_1_SOURCE)
+
+WEBSOCAT_WINDOWS_X86_64_MSVC_0_36_1_MD5		:= 8e285ddee403a9abe62d6fe2bfbb736a
+WEBSOCAT_WINDOWS_X86_64_MSVC_0_36_1_URL		:= https://crates.io/api/v1/crates/windows_x86_64_msvc/0.36.1/download
+WEBSOCAT_WINDOWS_X86_64_MSVC_0_36_1_SOURCE	:= $(SRCDIR)/windows_x86_64_msvc-0.36.1.crate
+$(WEBSOCAT_WINDOWS_X86_64_MSVC_0_36_1_SOURCE)	:= WEBSOCAT_WINDOWS_X86_64_MSVC_0_36_1
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_WINDOWS_X86_64_MSVC_0_36_1_SOURCE)
+
+WEBSOCAT_WS2_32_SYS_0_2_1_MD5		:= 38346bab0933c9eb1e36d22fe4220ba7
+WEBSOCAT_WS2_32_SYS_0_2_1_URL		:= https://crates.io/api/v1/crates/ws2_32-sys/0.2.1/download
+WEBSOCAT_WS2_32_SYS_0_2_1_SOURCE	:= $(SRCDIR)/ws2_32-sys-0.2.1.crate
+$(WEBSOCAT_WS2_32_SYS_0_2_1_SOURCE)	:= WEBSOCAT_WS2_32_SYS_0_2_1
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_WS2_32_SYS_0_2_1_SOURCE)
+
+WEBSOCAT_ZEROIZE_1_5_7_MD5		:= a72e719c29bea6a044b0ff01cad88cfb
+WEBSOCAT_ZEROIZE_1_5_7_URL		:= https://crates.io/api/v1/crates/zeroize/1.5.7/download
+WEBSOCAT_ZEROIZE_1_5_7_SOURCE	:= $(SRCDIR)/zeroize-1.5.7.crate
+$(WEBSOCAT_ZEROIZE_1_5_7_SOURCE)	:= WEBSOCAT_ZEROIZE_1_5_7
+WEBSOCAT_SOURCES			+= $(WEBSOCAT_ZEROIZE_1_5_7_SOURCE)
+
+
+# vim: syntax=make
diff --git a/rules/websocat.in b/rules/websocat.in
new file mode 100644
index 0000000..9bc7a5d
--- /dev/null
+++ b/rules/websocat.in
@@ -0,0 +1,8 @@
+## SECTION=networking
+
+config WEBSOCAT
+	tristate
+	prompt "websocat"
+	select OPENSSL
+	help
+	  Netcat, curl and socat for WebSockets
diff --git a/rules/websocat.make b/rules/websocat.make
new file mode 100644
index 0000000..e43fada
--- /dev/null
+++ b/rules/websocat.make
@@ -0,0 +1,65 @@
+# -*-makefile-*-
+#
+# Copyright (C) 2023 by Jon Ringle <jringle@gridpoint.com>
+#
+# For further information about the PTXdist project and license conditions
+# see the README file.
+#
+
+#
+# We provide this package
+#
+PACKAGES-$(PTXCONF_WEBSOCAT) += websocat
+
+#
+# Paths and names
+#
+WEBSOCAT_VERSION	:= 1.11.0
+WEBSOCAT_MD5		:= 2a43004dc1c256119089994b5ddb414b
+WEBSOCAT		:= websocat-$(WEBSOCAT_VERSION)
+WEBSOCAT_SUFFIX		:= tar.gz
+WEBSOCAT_URL		:= https://github.com/vi/websocat/archive/refs/tags/v${WEBSOCAT_VERSION}.$(WEBSOCAT_SUFFIX)
+WEBSOCAT_SOURCE		:= $(SRCDIR)/$(WEBSOCAT).$(WEBSOCAT_SUFFIX)
+WEBSOCAT_DIR		:= $(BUILDDIR)/$(WEBSOCAT)
+WEBSOCAT_LICENSE	:= MIT
+WEBSOCAT_LICENSE_FILES	:= file://LICENSE;md5=b0249af598633524d7f0cb5b558c832c
+
+WEBSOCAT_CONF_TOOL	:= cargo
+WEBSOCAT_CONF_OPT	:= \
+	$(CROSS_CARGO_OPT) \
+	--features=ssl
+
+WEBSOCAT_MAKE_ENV	:= \
+	$(CROSS_CARGO_ENV) \
+	PKG_CONFIG_SYSROOT_DIR=/. \
+
+WEBSOCAT_TOOLS := \
+	websocat
+
+$(STATEDIR)/websocat.install:
+	@$(call targetinfo)
+	@$(call world/execute, WEBSOCAT, \
+		install -v -m755 -t $(WEBSOCAT_PKGDIR)/bin \
+		$(addprefix $(WEBSOCAT_DIR)/target/$(PTXCONF_GNU_TARGET)/release/, $(WEBSOCAT_TOOLS)))
+	@$(call touch)
+
+# ----------------------------------------------------------------------------
+# Target-Install
+# ----------------------------------------------------------------------------
+
+$(STATEDIR)/websocat.targetinstall:
+	@$(call targetinfo)
+
+	@$(call install_init, websocat)
+	@$(call install_fixup, websocat, PRIORITY, optional)
+	@$(call install_fixup, websocat, SECTION, base)
+	@$(call install_fixup, websocat, AUTHOR, "Jon Ringle <jringle@gridpoint.com>")
+	@$(call install_fixup, websocat, DESCRIPTION, missing)
+
+	@$(call install_copy, websocat, 0, 0, 0755, -, /bin/websocat)
+
+	@$(call install_finish, websocat)
+
+	@$(call touch)
+
+# vim: syntax=make
-- 
2.25.1




^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [ptxdist] [PATCH] websocat: new package
  2023-08-08 12:39 [ptxdist] [PATCH] websocat: new package jonringle
@ 2023-08-09  6:00 ` Michael Olbrich
  0 siblings, 0 replies; 2+ messages in thread
From: Michael Olbrich @ 2023-08-09  6:00 UTC (permalink / raw)
  To: jonringle; +Cc: Jon Ringle, ptxdist

On Tue, Aug 08, 2023 at 08:39:40AM -0400, jonringle@gmail.com wrote:
> From: Jon Ringle <jringle@gridpoint.com>
> 
> Netcat, curl and socat for WebSockets
> 
> Signed-off-by: Jon Ringle <jringle@gridpoint.com>
> ---
>  rules/websocat.cargo.make | 1265 +++++++++++++++++++++++++++++
>  rules/websocat.in         |    8 +
>  rules/websocat.make       |   65 ++
>  3 files changed, 1338 insertions(+)
>  create mode 100644 rules/websocat.cargo.make
>  create mode 100644 rules/websocat.in
>  create mode 100644 rules/websocat.make
> 
> diff --git a/rules/websocat.cargo.make b/rules/websocat.cargo.make
> new file mode 100644
> index 0000000..97adc28
> --- /dev/null
> +++ b/rules/websocat.cargo.make
> @@ -0,0 +1,1265 @@
> +# -*-makefile-*-
> +#
> +# Copyright (C) 2023 by Jon Ringle <jringle@gridpoint.com>
> +#
> +# For further information about the PTXdist project and license conditions
> +# see the README file.
> +#
> +
> +#
> +# WARNING: This file is generated with 'ptxdist cargosync websocat' and
> +# should not be modified manually!
> +#
> +
> +WEBSOCAT_CARGO_LOCK_MD5 := 12054b940a10e3a1fe8de99c07d8fed4
> +
> +WEBSOCAT_ADLER_1_0_2_MD5		:= 669215548c64019c08c92b2c1afd3deb
> +WEBSOCAT_ADLER_1_0_2_URL		:= https://crates.io/api/v1/crates/adler/1.0.2/download
> +WEBSOCAT_ADLER_1_0_2_SOURCE	:= $(SRCDIR)/adler-1.0.2.crate
> +$(WEBSOCAT_ADLER_1_0_2_SOURCE)	:= WEBSOCAT_ADLER_1_0_2
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_ADLER_1_0_2_SOURCE)
> +
> +WEBSOCAT_AEAD_0_4_3_MD5		:= d8996d67ebb969d68c8b35ed1858171b
> +WEBSOCAT_AEAD_0_4_3_URL		:= https://crates.io/api/v1/crates/aead/0.4.3/download
> +WEBSOCAT_AEAD_0_4_3_SOURCE	:= $(SRCDIR)/aead-0.4.3.crate
> +$(WEBSOCAT_AEAD_0_4_3_SOURCE)	:= WEBSOCAT_AEAD_0_4_3
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_AEAD_0_4_3_SOURCE)
> +
> +WEBSOCAT_ANYMAP_0_12_1_MD5		:= 64a3aad83a83e6ec727a4d896dcbc077
> +WEBSOCAT_ANYMAP_0_12_1_URL		:= https://crates.io/api/v1/crates/anymap/0.12.1/download
> +WEBSOCAT_ANYMAP_0_12_1_SOURCE	:= $(SRCDIR)/anymap-0.12.1.crate
> +$(WEBSOCAT_ANYMAP_0_12_1_SOURCE)	:= WEBSOCAT_ANYMAP_0_12_1
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_ANYMAP_0_12_1_SOURCE)
> +
> +WEBSOCAT_ARGON2_0_4_1_MD5		:= ac28d5811a10ea72ad763bc48e9595f6
> +WEBSOCAT_ARGON2_0_4_1_URL		:= https://crates.io/api/v1/crates/argon2/0.4.1/download
> +WEBSOCAT_ARGON2_0_4_1_SOURCE	:= $(SRCDIR)/argon2-0.4.1.crate
> +$(WEBSOCAT_ARGON2_0_4_1_SOURCE)	:= WEBSOCAT_ARGON2_0_4_1
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_ARGON2_0_4_1_SOURCE)
> +
> +WEBSOCAT_ATTY_0_2_14_MD5		:= 142cb4b9a653e56e56311f0c883b8582
> +WEBSOCAT_ATTY_0_2_14_URL		:= https://crates.io/api/v1/crates/atty/0.2.14/download
> +WEBSOCAT_ATTY_0_2_14_SOURCE	:= $(SRCDIR)/atty-0.2.14.crate
> +$(WEBSOCAT_ATTY_0_2_14_SOURCE)	:= WEBSOCAT_ATTY_0_2_14
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_ATTY_0_2_14_SOURCE)
> +
> +WEBSOCAT_AUTOCFG_0_1_8_MD5		:= 9563ddbf0d01fb162d94707f57ad9f40
> +WEBSOCAT_AUTOCFG_0_1_8_URL		:= https://crates.io/api/v1/crates/autocfg/0.1.8/download
> +WEBSOCAT_AUTOCFG_0_1_8_SOURCE	:= $(SRCDIR)/autocfg-0.1.8.crate
> +$(WEBSOCAT_AUTOCFG_0_1_8_SOURCE)	:= WEBSOCAT_AUTOCFG_0_1_8
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_AUTOCFG_0_1_8_SOURCE)
> +
> +WEBSOCAT_AUTOCFG_1_1_0_MD5		:= 05d77ef52e90ad161fdd41b252420467
> +WEBSOCAT_AUTOCFG_1_1_0_URL		:= https://crates.io/api/v1/crates/autocfg/1.1.0/download
> +WEBSOCAT_AUTOCFG_1_1_0_SOURCE	:= $(SRCDIR)/autocfg-1.1.0.crate
> +$(WEBSOCAT_AUTOCFG_1_1_0_SOURCE)	:= WEBSOCAT_AUTOCFG_1_1_0
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_AUTOCFG_1_1_0_SOURCE)
> +
> +WEBSOCAT_BASE64_0_9_3_MD5		:= 496ce53f8d4d95bf19e48bb2f31e4a7e
> +WEBSOCAT_BASE64_0_9_3_URL		:= https://crates.io/api/v1/crates/base64/0.9.3/download
> +WEBSOCAT_BASE64_0_9_3_SOURCE	:= $(SRCDIR)/base64-0.9.3.crate
> +$(WEBSOCAT_BASE64_0_9_3_SOURCE)	:= WEBSOCAT_BASE64_0_9_3
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_BASE64_0_9_3_SOURCE)
> +
> +WEBSOCAT_BASE64_0_10_1_MD5		:= 9ed1fef898024a6aaf3e3878cd83c103
> +WEBSOCAT_BASE64_0_10_1_URL		:= https://crates.io/api/v1/crates/base64/0.10.1/download
> +WEBSOCAT_BASE64_0_10_1_SOURCE	:= $(SRCDIR)/base64-0.10.1.crate
> +$(WEBSOCAT_BASE64_0_10_1_SOURCE)	:= WEBSOCAT_BASE64_0_10_1
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_BASE64_0_10_1_SOURCE)
> +
> +WEBSOCAT_BASE64CT_1_5_2_MD5		:= d38fbb0f30a2b79d97ac31be7f52300e
> +WEBSOCAT_BASE64CT_1_5_2_URL		:= https://crates.io/api/v1/crates/base64ct/1.5.2/download
> +WEBSOCAT_BASE64CT_1_5_2_SOURCE	:= $(SRCDIR)/base64ct-1.5.2.crate
> +$(WEBSOCAT_BASE64CT_1_5_2_SOURCE)	:= WEBSOCAT_BASE64CT_1_5_2
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_BASE64CT_1_5_2_SOURCE)
> +
> +WEBSOCAT_BITFLAGS_1_3_2_MD5		:= a295edb6953237ebbdfa8e731229f9a3
> +WEBSOCAT_BITFLAGS_1_3_2_URL		:= https://crates.io/api/v1/crates/bitflags/1.3.2/download
> +WEBSOCAT_BITFLAGS_1_3_2_SOURCE	:= $(SRCDIR)/bitflags-1.3.2.crate
> +$(WEBSOCAT_BITFLAGS_1_3_2_SOURCE)	:= WEBSOCAT_BITFLAGS_1_3_2
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_BITFLAGS_1_3_2_SOURCE)
> +
> +WEBSOCAT_BLAKE2_0_10_4_MD5		:= e5aa1c3290f0c0aebc33c39e07838561
> +WEBSOCAT_BLAKE2_0_10_4_URL		:= https://crates.io/api/v1/crates/blake2/0.10.4/download
> +WEBSOCAT_BLAKE2_0_10_4_SOURCE	:= $(SRCDIR)/blake2-0.10.4.crate
> +$(WEBSOCAT_BLAKE2_0_10_4_SOURCE)	:= WEBSOCAT_BLAKE2_0_10_4
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_BLAKE2_0_10_4_SOURCE)
> +
> +WEBSOCAT_BLOCK_BUFFER_0_7_3_MD5		:= a885637c56c780044d778f18420687cc
> +WEBSOCAT_BLOCK_BUFFER_0_7_3_URL		:= https://crates.io/api/v1/crates/block-buffer/0.7.3/download
> +WEBSOCAT_BLOCK_BUFFER_0_7_3_SOURCE	:= $(SRCDIR)/block-buffer-0.7.3.crate
> +$(WEBSOCAT_BLOCK_BUFFER_0_7_3_SOURCE)	:= WEBSOCAT_BLOCK_BUFFER_0_7_3
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_BLOCK_BUFFER_0_7_3_SOURCE)
> +
> +WEBSOCAT_BLOCK_BUFFER_0_10_3_MD5		:= 7caa371ca22e7a14288920a69c081d40
> +WEBSOCAT_BLOCK_BUFFER_0_10_3_URL		:= https://crates.io/api/v1/crates/block-buffer/0.10.3/download
> +WEBSOCAT_BLOCK_BUFFER_0_10_3_SOURCE	:= $(SRCDIR)/block-buffer-0.10.3.crate
> +$(WEBSOCAT_BLOCK_BUFFER_0_10_3_SOURCE)	:= WEBSOCAT_BLOCK_BUFFER_0_10_3
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_BLOCK_BUFFER_0_10_3_SOURCE)
> +
> +WEBSOCAT_BLOCK_PADDING_0_1_5_MD5		:= 95414d4f9c612bbe8a061dd2ff0bc519
> +WEBSOCAT_BLOCK_PADDING_0_1_5_URL		:= https://crates.io/api/v1/crates/block-padding/0.1.5/download
> +WEBSOCAT_BLOCK_PADDING_0_1_5_SOURCE	:= $(SRCDIR)/block-padding-0.1.5.crate
> +$(WEBSOCAT_BLOCK_PADDING_0_1_5_SOURCE)	:= WEBSOCAT_BLOCK_PADDING_0_1_5
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_BLOCK_PADDING_0_1_5_SOURCE)
> +
> +WEBSOCAT_BYTE_TOOLS_0_3_1_MD5		:= 4bd3c3b61fe602e6078615a491e5050a
> +WEBSOCAT_BYTE_TOOLS_0_3_1_URL		:= https://crates.io/api/v1/crates/byte-tools/0.3.1/download
> +WEBSOCAT_BYTE_TOOLS_0_3_1_SOURCE	:= $(SRCDIR)/byte-tools-0.3.1.crate
> +$(WEBSOCAT_BYTE_TOOLS_0_3_1_SOURCE)	:= WEBSOCAT_BYTE_TOOLS_0_3_1
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_BYTE_TOOLS_0_3_1_SOURCE)
> +
> +WEBSOCAT_BYTEORDER_1_4_3_MD5		:= 1e704be5ddde9d6b5383ef1035309f91
> +WEBSOCAT_BYTEORDER_1_4_3_URL		:= https://crates.io/api/v1/crates/byteorder/1.4.3/download
> +WEBSOCAT_BYTEORDER_1_4_3_SOURCE	:= $(SRCDIR)/byteorder-1.4.3.crate
> +$(WEBSOCAT_BYTEORDER_1_4_3_SOURCE)	:= WEBSOCAT_BYTEORDER_1_4_3
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_BYTEORDER_1_4_3_SOURCE)
> +
> +WEBSOCAT_BYTES_0_4_12_MD5		:= 1d02fa9f0fca9470a24a05e7c155993d
> +WEBSOCAT_BYTES_0_4_12_URL		:= https://crates.io/api/v1/crates/bytes/0.4.12/download
> +WEBSOCAT_BYTES_0_4_12_SOURCE	:= $(SRCDIR)/bytes-0.4.12.crate
> +$(WEBSOCAT_BYTES_0_4_12_SOURCE)	:= WEBSOCAT_BYTES_0_4_12
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_BYTES_0_4_12_SOURCE)
> +
> +WEBSOCAT_CC_1_0_73_MD5		:= 8e3a4d0980acef2c4e74485a45de29a9
> +WEBSOCAT_CC_1_0_73_URL		:= https://crates.io/api/v1/crates/cc/1.0.73/download
> +WEBSOCAT_CC_1_0_73_SOURCE	:= $(SRCDIR)/cc-1.0.73.crate
> +$(WEBSOCAT_CC_1_0_73_SOURCE)	:= WEBSOCAT_CC_1_0_73
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_CC_1_0_73_SOURCE)
> +
> +WEBSOCAT_CFG_IF_0_1_10_MD5		:= 882dbbc613a93f64c3709b0a2bd0d6dc
> +WEBSOCAT_CFG_IF_0_1_10_URL		:= https://crates.io/api/v1/crates/cfg-if/0.1.10/download
> +WEBSOCAT_CFG_IF_0_1_10_SOURCE	:= $(SRCDIR)/cfg-if-0.1.10.crate
> +$(WEBSOCAT_CFG_IF_0_1_10_SOURCE)	:= WEBSOCAT_CFG_IF_0_1_10
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_CFG_IF_0_1_10_SOURCE)
> +
> +WEBSOCAT_CFG_IF_1_0_0_MD5		:= 74634128440dbc3766bda76fdf0aaa05
> +WEBSOCAT_CFG_IF_1_0_0_URL		:= https://crates.io/api/v1/crates/cfg-if/1.0.0/download
> +WEBSOCAT_CFG_IF_1_0_0_SOURCE	:= $(SRCDIR)/cfg-if-1.0.0.crate
> +$(WEBSOCAT_CFG_IF_1_0_0_SOURCE)	:= WEBSOCAT_CFG_IF_1_0_0
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_CFG_IF_1_0_0_SOURCE)
> +
> +WEBSOCAT_CHACHA20_0_8_2_MD5		:= c91eb059dc49ce8c5145967b492cd7f8
> +WEBSOCAT_CHACHA20_0_8_2_URL		:= https://crates.io/api/v1/crates/chacha20/0.8.2/download
> +WEBSOCAT_CHACHA20_0_8_2_SOURCE	:= $(SRCDIR)/chacha20-0.8.2.crate
> +$(WEBSOCAT_CHACHA20_0_8_2_SOURCE)	:= WEBSOCAT_CHACHA20_0_8_2
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_CHACHA20_0_8_2_SOURCE)
> +
> +WEBSOCAT_CHACHA20POLY1305_0_9_1_MD5		:= 5abf1bc1fb30b1a546e9c2636386e0b8
> +WEBSOCAT_CHACHA20POLY1305_0_9_1_URL		:= https://crates.io/api/v1/crates/chacha20poly1305/0.9.1/download
> +WEBSOCAT_CHACHA20POLY1305_0_9_1_SOURCE	:= $(SRCDIR)/chacha20poly1305-0.9.1.crate
> +$(WEBSOCAT_CHACHA20POLY1305_0_9_1_SOURCE)	:= WEBSOCAT_CHACHA20POLY1305_0_9_1
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_CHACHA20POLY1305_0_9_1_SOURCE)
> +
> +WEBSOCAT_CIPHER_0_3_0_MD5		:= 5f2578209a4d7964623462e402375ac0
> +WEBSOCAT_CIPHER_0_3_0_URL		:= https://crates.io/api/v1/crates/cipher/0.3.0/download
> +WEBSOCAT_CIPHER_0_3_0_SOURCE	:= $(SRCDIR)/cipher-0.3.0.crate
> +$(WEBSOCAT_CIPHER_0_3_0_SOURCE)	:= WEBSOCAT_CIPHER_0_3_0
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_CIPHER_0_3_0_SOURCE)
> +
> +WEBSOCAT_CLAP_2_34_0_MD5		:= 59ae9122b2946d4d52bc48a1da5c5e06
> +WEBSOCAT_CLAP_2_34_0_URL		:= https://crates.io/api/v1/crates/clap/2.34.0/download
> +WEBSOCAT_CLAP_2_34_0_SOURCE	:= $(SRCDIR)/clap-2.34.0.crate
> +$(WEBSOCAT_CLAP_2_34_0_SOURCE)	:= WEBSOCAT_CLAP_2_34_0
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_CLAP_2_34_0_SOURCE)
> +
> +WEBSOCAT_CLOUDABI_0_0_3_MD5		:= 1c8b50f8528dd37df7d984e0e4b61bd5
> +WEBSOCAT_CLOUDABI_0_0_3_URL		:= https://crates.io/api/v1/crates/cloudabi/0.0.3/download
> +WEBSOCAT_CLOUDABI_0_0_3_SOURCE	:= $(SRCDIR)/cloudabi-0.0.3.crate
> +$(WEBSOCAT_CLOUDABI_0_0_3_SOURCE)	:= WEBSOCAT_CLOUDABI_0_0_3
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_CLOUDABI_0_0_3_SOURCE)
> +
> +WEBSOCAT_CORE_FOUNDATION_0_9_3_MD5		:= ae6dd0cd5319220586d8ace4c4be87ce
> +WEBSOCAT_CORE_FOUNDATION_0_9_3_URL		:= https://crates.io/api/v1/crates/core-foundation/0.9.3/download
> +WEBSOCAT_CORE_FOUNDATION_0_9_3_SOURCE	:= $(SRCDIR)/core-foundation-0.9.3.crate
> +$(WEBSOCAT_CORE_FOUNDATION_0_9_3_SOURCE)	:= WEBSOCAT_CORE_FOUNDATION_0_9_3
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_CORE_FOUNDATION_0_9_3_SOURCE)
> +
> +WEBSOCAT_CORE_FOUNDATION_SYS_0_8_3_MD5		:= d05cbf26ed52299487a802688a1d22cb
> +WEBSOCAT_CORE_FOUNDATION_SYS_0_8_3_URL		:= https://crates.io/api/v1/crates/core-foundation-sys/0.8.3/download
> +WEBSOCAT_CORE_FOUNDATION_SYS_0_8_3_SOURCE	:= $(SRCDIR)/core-foundation-sys-0.8.3.crate
> +$(WEBSOCAT_CORE_FOUNDATION_SYS_0_8_3_SOURCE)	:= WEBSOCAT_CORE_FOUNDATION_SYS_0_8_3
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_CORE_FOUNDATION_SYS_0_8_3_SOURCE)
> +
> +WEBSOCAT_CPUFEATURES_0_2_5_MD5		:= ebdc1f779823eaad615501b1cd3822b1
> +WEBSOCAT_CPUFEATURES_0_2_5_URL		:= https://crates.io/api/v1/crates/cpufeatures/0.2.5/download
> +WEBSOCAT_CPUFEATURES_0_2_5_SOURCE	:= $(SRCDIR)/cpufeatures-0.2.5.crate
> +$(WEBSOCAT_CPUFEATURES_0_2_5_SOURCE)	:= WEBSOCAT_CPUFEATURES_0_2_5
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_CPUFEATURES_0_2_5_SOURCE)
> +
> +WEBSOCAT_CRC32FAST_1_3_2_MD5		:= a9d6492a1bd21d93dbc27c32eabd0c70
> +WEBSOCAT_CRC32FAST_1_3_2_URL		:= https://crates.io/api/v1/crates/crc32fast/1.3.2/download
> +WEBSOCAT_CRC32FAST_1_3_2_SOURCE	:= $(SRCDIR)/crc32fast-1.3.2.crate
> +$(WEBSOCAT_CRC32FAST_1_3_2_SOURCE)	:= WEBSOCAT_CRC32FAST_1_3_2
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_CRC32FAST_1_3_2_SOURCE)
> +
> +WEBSOCAT_CROSSBEAM_DEQUE_0_7_4_MD5		:= 372d983bc911b6099ad1b8ed6087604f
> +WEBSOCAT_CROSSBEAM_DEQUE_0_7_4_URL		:= https://crates.io/api/v1/crates/crossbeam-deque/0.7.4/download
> +WEBSOCAT_CROSSBEAM_DEQUE_0_7_4_SOURCE	:= $(SRCDIR)/crossbeam-deque-0.7.4.crate
> +$(WEBSOCAT_CROSSBEAM_DEQUE_0_7_4_SOURCE)	:= WEBSOCAT_CROSSBEAM_DEQUE_0_7_4
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_CROSSBEAM_DEQUE_0_7_4_SOURCE)
> +
> +WEBSOCAT_CROSSBEAM_EPOCH_0_8_2_MD5		:= 49b4b022e9fa4cc60376a79ecb39d04f
> +WEBSOCAT_CROSSBEAM_EPOCH_0_8_2_URL		:= https://crates.io/api/v1/crates/crossbeam-epoch/0.8.2/download
> +WEBSOCAT_CROSSBEAM_EPOCH_0_8_2_SOURCE	:= $(SRCDIR)/crossbeam-epoch-0.8.2.crate
> +$(WEBSOCAT_CROSSBEAM_EPOCH_0_8_2_SOURCE)	:= WEBSOCAT_CROSSBEAM_EPOCH_0_8_2
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_CROSSBEAM_EPOCH_0_8_2_SOURCE)
> +
> +WEBSOCAT_CROSSBEAM_QUEUE_0_1_2_MD5		:= 7c90c5d981a715d9863d6bfcc984d6ed
> +WEBSOCAT_CROSSBEAM_QUEUE_0_1_2_URL		:= https://crates.io/api/v1/crates/crossbeam-queue/0.1.2/download
> +WEBSOCAT_CROSSBEAM_QUEUE_0_1_2_SOURCE	:= $(SRCDIR)/crossbeam-queue-0.1.2.crate
> +$(WEBSOCAT_CROSSBEAM_QUEUE_0_1_2_SOURCE)	:= WEBSOCAT_CROSSBEAM_QUEUE_0_1_2
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_CROSSBEAM_QUEUE_0_1_2_SOURCE)
> +
> +WEBSOCAT_CROSSBEAM_QUEUE_0_2_3_MD5		:= 836bbd6315ea443caf33fe3394ea4991
> +WEBSOCAT_CROSSBEAM_QUEUE_0_2_3_URL		:= https://crates.io/api/v1/crates/crossbeam-queue/0.2.3/download
> +WEBSOCAT_CROSSBEAM_QUEUE_0_2_3_SOURCE	:= $(SRCDIR)/crossbeam-queue-0.2.3.crate
> +$(WEBSOCAT_CROSSBEAM_QUEUE_0_2_3_SOURCE)	:= WEBSOCAT_CROSSBEAM_QUEUE_0_2_3
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_CROSSBEAM_QUEUE_0_2_3_SOURCE)
> +
> +WEBSOCAT_CROSSBEAM_UTILS_0_6_6_MD5		:= 66912c6b316cfec144c4fbcbf59bf862
> +WEBSOCAT_CROSSBEAM_UTILS_0_6_6_URL		:= https://crates.io/api/v1/crates/crossbeam-utils/0.6.6/download
> +WEBSOCAT_CROSSBEAM_UTILS_0_6_6_SOURCE	:= $(SRCDIR)/crossbeam-utils-0.6.6.crate
> +$(WEBSOCAT_CROSSBEAM_UTILS_0_6_6_SOURCE)	:= WEBSOCAT_CROSSBEAM_UTILS_0_6_6
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_CROSSBEAM_UTILS_0_6_6_SOURCE)
> +
> +WEBSOCAT_CROSSBEAM_UTILS_0_7_2_MD5		:= ff67cf2eb9668167782b8012d3b48e7b
> +WEBSOCAT_CROSSBEAM_UTILS_0_7_2_URL		:= https://crates.io/api/v1/crates/crossbeam-utils/0.7.2/download
> +WEBSOCAT_CROSSBEAM_UTILS_0_7_2_SOURCE	:= $(SRCDIR)/crossbeam-utils-0.7.2.crate
> +$(WEBSOCAT_CROSSBEAM_UTILS_0_7_2_SOURCE)	:= WEBSOCAT_CROSSBEAM_UTILS_0_7_2
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_CROSSBEAM_UTILS_0_7_2_SOURCE)
> +
> +WEBSOCAT_CRYPTO_COMMON_0_1_6_MD5		:= 89e88633cab0e4b6f3d3878b84dffe8b
> +WEBSOCAT_CRYPTO_COMMON_0_1_6_URL		:= https://crates.io/api/v1/crates/crypto-common/0.1.6/download
> +WEBSOCAT_CRYPTO_COMMON_0_1_6_SOURCE	:= $(SRCDIR)/crypto-common-0.1.6.crate
> +$(WEBSOCAT_CRYPTO_COMMON_0_1_6_SOURCE)	:= WEBSOCAT_CRYPTO_COMMON_0_1_6
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_CRYPTO_COMMON_0_1_6_SOURCE)
> +
> +WEBSOCAT_DERIVATIVE_1_0_4_MD5		:= fdefb54850aeb1f31d201f0115aab3d4
> +WEBSOCAT_DERIVATIVE_1_0_4_URL		:= https://crates.io/api/v1/crates/derivative/1.0.4/download
> +WEBSOCAT_DERIVATIVE_1_0_4_SOURCE	:= $(SRCDIR)/derivative-1.0.4.crate
> +$(WEBSOCAT_DERIVATIVE_1_0_4_SOURCE)	:= WEBSOCAT_DERIVATIVE_1_0_4
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_DERIVATIVE_1_0_4_SOURCE)
> +
> +WEBSOCAT_DIGEST_0_8_1_MD5		:= b00352aced738d455145117157604783
> +WEBSOCAT_DIGEST_0_8_1_URL		:= https://crates.io/api/v1/crates/digest/0.8.1/download
> +WEBSOCAT_DIGEST_0_8_1_SOURCE	:= $(SRCDIR)/digest-0.8.1.crate
> +$(WEBSOCAT_DIGEST_0_8_1_SOURCE)	:= WEBSOCAT_DIGEST_0_8_1
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_DIGEST_0_8_1_SOURCE)
> +
> +WEBSOCAT_DIGEST_0_10_5_MD5		:= ebf95279270dfefc495cdf5192faaf4c
> +WEBSOCAT_DIGEST_0_10_5_URL		:= https://crates.io/api/v1/crates/digest/0.10.5/download
> +WEBSOCAT_DIGEST_0_10_5_SOURCE	:= $(SRCDIR)/digest-0.10.5.crate
> +$(WEBSOCAT_DIGEST_0_10_5_SOURCE)	:= WEBSOCAT_DIGEST_0_10_5
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_DIGEST_0_10_5_SOURCE)
> +
> +WEBSOCAT_ENV_LOGGER_0_6_2_MD5		:= 034a5cb6f2dd0fe6602fbe95806b678b
> +WEBSOCAT_ENV_LOGGER_0_6_2_URL		:= https://crates.io/api/v1/crates/env_logger/0.6.2/download
> +WEBSOCAT_ENV_LOGGER_0_6_2_SOURCE	:= $(SRCDIR)/env_logger-0.6.2.crate
> +$(WEBSOCAT_ENV_LOGGER_0_6_2_SOURCE)	:= WEBSOCAT_ENV_LOGGER_0_6_2
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_ENV_LOGGER_0_6_2_SOURCE)
> +
> +WEBSOCAT_FAKE_SIMD_0_1_2_MD5		:= 1aef0dd636d3ef234e4f035fc26c0069
> +WEBSOCAT_FAKE_SIMD_0_1_2_URL		:= https://crates.io/api/v1/crates/fake-simd/0.1.2/download
> +WEBSOCAT_FAKE_SIMD_0_1_2_SOURCE	:= $(SRCDIR)/fake-simd-0.1.2.crate
> +$(WEBSOCAT_FAKE_SIMD_0_1_2_SOURCE)	:= WEBSOCAT_FAKE_SIMD_0_1_2
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_FAKE_SIMD_0_1_2_SOURCE)
> +
> +WEBSOCAT_FASTRAND_1_8_0_MD5		:= d59e1fe9834d52c50e2414a34945e479
> +WEBSOCAT_FASTRAND_1_8_0_URL		:= https://crates.io/api/v1/crates/fastrand/1.8.0/download
> +WEBSOCAT_FASTRAND_1_8_0_SOURCE	:= $(SRCDIR)/fastrand-1.8.0.crate
> +$(WEBSOCAT_FASTRAND_1_8_0_SOURCE)	:= WEBSOCAT_FASTRAND_1_8_0
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_FASTRAND_1_8_0_SOURCE)
> +
> +WEBSOCAT_FLATE2_1_0_24_MD5		:= a61e445efc8dde664a8cd0911ed7be6c
> +WEBSOCAT_FLATE2_1_0_24_URL		:= https://crates.io/api/v1/crates/flate2/1.0.24/download
> +WEBSOCAT_FLATE2_1_0_24_SOURCE	:= $(SRCDIR)/flate2-1.0.24.crate
> +$(WEBSOCAT_FLATE2_1_0_24_SOURCE)	:= WEBSOCAT_FLATE2_1_0_24
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_FLATE2_1_0_24_SOURCE)
> +
> +WEBSOCAT_FNV_1_0_7_MD5		:= 8dab3b3ec00dc56cffde0b0c410d47b5
> +WEBSOCAT_FNV_1_0_7_URL		:= https://crates.io/api/v1/crates/fnv/1.0.7/download
> +WEBSOCAT_FNV_1_0_7_SOURCE	:= $(SRCDIR)/fnv-1.0.7.crate
> +$(WEBSOCAT_FNV_1_0_7_SOURCE)	:= WEBSOCAT_FNV_1_0_7
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_FNV_1_0_7_SOURCE)
> +
> +WEBSOCAT_FOREIGN_TYPES_0_3_2_MD5		:= 78c898fdaa3968e23904bf8538c4a271
> +WEBSOCAT_FOREIGN_TYPES_0_3_2_URL		:= https://crates.io/api/v1/crates/foreign-types/0.3.2/download
> +WEBSOCAT_FOREIGN_TYPES_0_3_2_SOURCE	:= $(SRCDIR)/foreign-types-0.3.2.crate
> +$(WEBSOCAT_FOREIGN_TYPES_0_3_2_SOURCE)	:= WEBSOCAT_FOREIGN_TYPES_0_3_2
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_FOREIGN_TYPES_0_3_2_SOURCE)
> +
> +WEBSOCAT_FOREIGN_TYPES_SHARED_0_1_1_MD5		:= 667e86b8b8d96ab4e9605627ce7dcc9a
> +WEBSOCAT_FOREIGN_TYPES_SHARED_0_1_1_URL		:= https://crates.io/api/v1/crates/foreign-types-shared/0.1.1/download
> +WEBSOCAT_FOREIGN_TYPES_SHARED_0_1_1_SOURCE	:= $(SRCDIR)/foreign-types-shared-0.1.1.crate
> +$(WEBSOCAT_FOREIGN_TYPES_SHARED_0_1_1_SOURCE)	:= WEBSOCAT_FOREIGN_TYPES_SHARED_0_1_1
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_FOREIGN_TYPES_SHARED_0_1_1_SOURCE)
> +
> +WEBSOCAT_FUCHSIA_CPRNG_0_1_1_MD5		:= 27260b46db6b9ac40318143d70a80ba3
> +WEBSOCAT_FUCHSIA_CPRNG_0_1_1_URL		:= https://crates.io/api/v1/crates/fuchsia-cprng/0.1.1/download
> +WEBSOCAT_FUCHSIA_CPRNG_0_1_1_SOURCE	:= $(SRCDIR)/fuchsia-cprng-0.1.1.crate
> +$(WEBSOCAT_FUCHSIA_CPRNG_0_1_1_SOURCE)	:= WEBSOCAT_FUCHSIA_CPRNG_0_1_1
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_FUCHSIA_CPRNG_0_1_1_SOURCE)
> +
> +WEBSOCAT_FUCHSIA_ZIRCON_0_3_3_MD5		:= dd7c80c2d04d2e9ceba82826cf69764d
> +WEBSOCAT_FUCHSIA_ZIRCON_0_3_3_URL		:= https://crates.io/api/v1/crates/fuchsia-zircon/0.3.3/download
> +WEBSOCAT_FUCHSIA_ZIRCON_0_3_3_SOURCE	:= $(SRCDIR)/fuchsia-zircon-0.3.3.crate
> +$(WEBSOCAT_FUCHSIA_ZIRCON_0_3_3_SOURCE)	:= WEBSOCAT_FUCHSIA_ZIRCON_0_3_3
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_FUCHSIA_ZIRCON_0_3_3_SOURCE)
> +
> +WEBSOCAT_FUCHSIA_ZIRCON_SYS_0_3_3_MD5		:= 54cfab480b7a5f7302eadf44129d3f4b
> +WEBSOCAT_FUCHSIA_ZIRCON_SYS_0_3_3_URL		:= https://crates.io/api/v1/crates/fuchsia-zircon-sys/0.3.3/download
> +WEBSOCAT_FUCHSIA_ZIRCON_SYS_0_3_3_SOURCE	:= $(SRCDIR)/fuchsia-zircon-sys-0.3.3.crate
> +$(WEBSOCAT_FUCHSIA_ZIRCON_SYS_0_3_3_SOURCE)	:= WEBSOCAT_FUCHSIA_ZIRCON_SYS_0_3_3
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_FUCHSIA_ZIRCON_SYS_0_3_3_SOURCE)
> +
> +WEBSOCAT_FUTURES_0_1_31_MD5		:= a2506255208617c2cb4f52fcd6a739dd
> +WEBSOCAT_FUTURES_0_1_31_URL		:= https://crates.io/api/v1/crates/futures/0.1.31/download
> +WEBSOCAT_FUTURES_0_1_31_SOURCE	:= $(SRCDIR)/futures-0.1.31.crate
> +$(WEBSOCAT_FUTURES_0_1_31_SOURCE)	:= WEBSOCAT_FUTURES_0_1_31
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_FUTURES_0_1_31_SOURCE)
> +
> +WEBSOCAT_GENERIC_ARRAY_0_12_4_MD5		:= 668f0eda79c119d7c79f1e49c0afbeeb
> +WEBSOCAT_GENERIC_ARRAY_0_12_4_URL		:= https://crates.io/api/v1/crates/generic-array/0.12.4/download
> +WEBSOCAT_GENERIC_ARRAY_0_12_4_SOURCE	:= $(SRCDIR)/generic-array-0.12.4.crate
> +$(WEBSOCAT_GENERIC_ARRAY_0_12_4_SOURCE)	:= WEBSOCAT_GENERIC_ARRAY_0_12_4
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_GENERIC_ARRAY_0_12_4_SOURCE)
> +
> +WEBSOCAT_GENERIC_ARRAY_0_14_6_MD5		:= e3480971fb7f7462149056fd70df74e2
> +WEBSOCAT_GENERIC_ARRAY_0_14_6_URL		:= https://crates.io/api/v1/crates/generic-array/0.14.6/download
> +WEBSOCAT_GENERIC_ARRAY_0_14_6_SOURCE	:= $(SRCDIR)/generic-array-0.14.6.crate
> +$(WEBSOCAT_GENERIC_ARRAY_0_14_6_SOURCE)	:= WEBSOCAT_GENERIC_ARRAY_0_14_6
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_GENERIC_ARRAY_0_14_6_SOURCE)
> +
> +WEBSOCAT_GETRANDOM_0_2_7_MD5		:= 62864db03072aaae4f855126d502b8c7
> +WEBSOCAT_GETRANDOM_0_2_7_URL		:= https://crates.io/api/v1/crates/getrandom/0.2.7/download
> +WEBSOCAT_GETRANDOM_0_2_7_SOURCE	:= $(SRCDIR)/getrandom-0.2.7.crate
> +$(WEBSOCAT_GETRANDOM_0_2_7_SOURCE)	:= WEBSOCAT_GETRANDOM_0_2_7
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_GETRANDOM_0_2_7_SOURCE)
> +
> +WEBSOCAT_HECK_0_3_3_MD5		:= d4310bba2bdd940077329f6fca3fde78
> +WEBSOCAT_HECK_0_3_3_URL		:= https://crates.io/api/v1/crates/heck/0.3.3/download
> +WEBSOCAT_HECK_0_3_3_SOURCE	:= $(SRCDIR)/heck-0.3.3.crate
> +$(WEBSOCAT_HECK_0_3_3_SOURCE)	:= WEBSOCAT_HECK_0_3_3
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_HECK_0_3_3_SOURCE)
> +
> +WEBSOCAT_HERMIT_ABI_0_1_19_MD5		:= 0b7994d1256215201bdfb810a357ffa2
> +WEBSOCAT_HERMIT_ABI_0_1_19_URL		:= https://crates.io/api/v1/crates/hermit-abi/0.1.19/download
> +WEBSOCAT_HERMIT_ABI_0_1_19_SOURCE	:= $(SRCDIR)/hermit-abi-0.1.19.crate
> +$(WEBSOCAT_HERMIT_ABI_0_1_19_SOURCE)	:= WEBSOCAT_HERMIT_ABI_0_1_19
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_HERMIT_ABI_0_1_19_SOURCE)
> +
> +WEBSOCAT_HEX_0_4_3_MD5		:= 1d3e530a3410fc95a6987d70f84a6332
> +WEBSOCAT_HEX_0_4_3_URL		:= https://crates.io/api/v1/crates/hex/0.4.3/download
> +WEBSOCAT_HEX_0_4_3_SOURCE	:= $(SRCDIR)/hex-0.4.3.crate
> +$(WEBSOCAT_HEX_0_4_3_SOURCE)	:= WEBSOCAT_HEX_0_4_3
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_HEX_0_4_3_SOURCE)
> +
> +WEBSOCAT_HTTP_0_1_21_MD5		:= 495ec7bcfa5f016979d56c6e6d0e0367
> +WEBSOCAT_HTTP_0_1_21_URL		:= https://crates.io/api/v1/crates/http/0.1.21/download
> +WEBSOCAT_HTTP_0_1_21_SOURCE	:= $(SRCDIR)/http-0.1.21.crate
> +$(WEBSOCAT_HTTP_0_1_21_SOURCE)	:= WEBSOCAT_HTTP_0_1_21
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_HTTP_0_1_21_SOURCE)
> +
> +WEBSOCAT_HTTP_BYTES_0_1_0_MD5		:= efed5c546894d13822d881b03a886d35
> +WEBSOCAT_HTTP_BYTES_0_1_0_URL		:= https://crates.io/api/v1/crates/http-bytes/0.1.0/download
> +WEBSOCAT_HTTP_BYTES_0_1_0_SOURCE	:= $(SRCDIR)/http-bytes-0.1.0.crate
> +$(WEBSOCAT_HTTP_BYTES_0_1_0_SOURCE)	:= WEBSOCAT_HTTP_BYTES_0_1_0
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_HTTP_BYTES_0_1_0_SOURCE)
> +
> +WEBSOCAT_HTTPARSE_1_8_0_MD5		:= 92968aee56cb2f162a55008fedddbb78
> +WEBSOCAT_HTTPARSE_1_8_0_URL		:= https://crates.io/api/v1/crates/httparse/1.8.0/download
> +WEBSOCAT_HTTPARSE_1_8_0_SOURCE	:= $(SRCDIR)/httparse-1.8.0.crate
> +$(WEBSOCAT_HTTPARSE_1_8_0_SOURCE)	:= WEBSOCAT_HTTPARSE_1_8_0
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_HTTPARSE_1_8_0_SOURCE)
> +
> +WEBSOCAT_HYPER_0_10_16_MD5		:= 87bfa5b74e84c418684711ebd2a1652e
> +WEBSOCAT_HYPER_0_10_16_URL		:= https://crates.io/api/v1/crates/hyper/0.10.16/download
> +WEBSOCAT_HYPER_0_10_16_SOURCE	:= $(SRCDIR)/hyper-0.10.16.crate
> +$(WEBSOCAT_HYPER_0_10_16_SOURCE)	:= WEBSOCAT_HYPER_0_10_16
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_HYPER_0_10_16_SOURCE)
> +
> +WEBSOCAT_IDNA_0_1_5_MD5		:= 89cabfcb37602a7b200b1a9cd660ee2e
> +WEBSOCAT_IDNA_0_1_5_URL		:= https://crates.io/api/v1/crates/idna/0.1.5/download
> +WEBSOCAT_IDNA_0_1_5_SOURCE	:= $(SRCDIR)/idna-0.1.5.crate
> +$(WEBSOCAT_IDNA_0_1_5_SOURCE)	:= WEBSOCAT_IDNA_0_1_5
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_IDNA_0_1_5_SOURCE)
> +
> +WEBSOCAT_INSTANT_0_1_12_MD5		:= 5f153f7135dceb02f88266121c836b4e
> +WEBSOCAT_INSTANT_0_1_12_URL		:= https://crates.io/api/v1/crates/instant/0.1.12/download
> +WEBSOCAT_INSTANT_0_1_12_SOURCE	:= $(SRCDIR)/instant-0.1.12.crate
> +$(WEBSOCAT_INSTANT_0_1_12_SOURCE)	:= WEBSOCAT_INSTANT_0_1_12
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_INSTANT_0_1_12_SOURCE)
> +
> +WEBSOCAT_IOVEC_0_1_4_MD5		:= f1c40b9836035b69e464df711a1d2950
> +WEBSOCAT_IOVEC_0_1_4_URL		:= https://crates.io/api/v1/crates/iovec/0.1.4/download
> +WEBSOCAT_IOVEC_0_1_4_SOURCE	:= $(SRCDIR)/iovec-0.1.4.crate
> +$(WEBSOCAT_IOVEC_0_1_4_SOURCE)	:= WEBSOCAT_IOVEC_0_1_4
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_IOVEC_0_1_4_SOURCE)
> +
> +WEBSOCAT_ITOA_0_4_8_MD5		:= 06e7dbde9932c6a9bac63d9288670678
> +WEBSOCAT_ITOA_0_4_8_URL		:= https://crates.io/api/v1/crates/itoa/0.4.8/download
> +WEBSOCAT_ITOA_0_4_8_SOURCE	:= $(SRCDIR)/itoa-0.4.8.crate
> +$(WEBSOCAT_ITOA_0_4_8_SOURCE)	:= WEBSOCAT_ITOA_0_4_8
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_ITOA_0_4_8_SOURCE)
> +
> +WEBSOCAT_KERNEL32_SYS_0_2_2_MD5		:= 9d033cc2daa6924420a4a89e6705773f
> +WEBSOCAT_KERNEL32_SYS_0_2_2_URL		:= https://crates.io/api/v1/crates/kernel32-sys/0.2.2/download
> +WEBSOCAT_KERNEL32_SYS_0_2_2_SOURCE	:= $(SRCDIR)/kernel32-sys-0.2.2.crate
> +$(WEBSOCAT_KERNEL32_SYS_0_2_2_SOURCE)	:= WEBSOCAT_KERNEL32_SYS_0_2_2
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_KERNEL32_SYS_0_2_2_SOURCE)
> +
> +WEBSOCAT_LANGUAGE_TAGS_0_2_2_MD5		:= 70d98bc08018458ae5f7109b52aa1acc
> +WEBSOCAT_LANGUAGE_TAGS_0_2_2_URL		:= https://crates.io/api/v1/crates/language-tags/0.2.2/download
> +WEBSOCAT_LANGUAGE_TAGS_0_2_2_SOURCE	:= $(SRCDIR)/language-tags-0.2.2.crate
> +$(WEBSOCAT_LANGUAGE_TAGS_0_2_2_SOURCE)	:= WEBSOCAT_LANGUAGE_TAGS_0_2_2
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_LANGUAGE_TAGS_0_2_2_SOURCE)
> +
> +WEBSOCAT_LAZY_STATIC_1_4_0_MD5		:= fba3b040a55c01be7376d3dd5c4d4920
> +WEBSOCAT_LAZY_STATIC_1_4_0_URL		:= https://crates.io/api/v1/crates/lazy_static/1.4.0/download
> +WEBSOCAT_LAZY_STATIC_1_4_0_SOURCE	:= $(SRCDIR)/lazy_static-1.4.0.crate
> +$(WEBSOCAT_LAZY_STATIC_1_4_0_SOURCE)	:= WEBSOCAT_LAZY_STATIC_1_4_0
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_LAZY_STATIC_1_4_0_SOURCE)
> +
> +WEBSOCAT_LIBC_0_2_133_MD5		:= cd6868b580f6901cfb16071a0f1e3833
> +WEBSOCAT_LIBC_0_2_133_URL		:= https://crates.io/api/v1/crates/libc/0.2.133/download
> +WEBSOCAT_LIBC_0_2_133_SOURCE	:= $(SRCDIR)/libc-0.2.133.crate
> +$(WEBSOCAT_LIBC_0_2_133_SOURCE)	:= WEBSOCAT_LIBC_0_2_133
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_LIBC_0_2_133_SOURCE)
> +
> +WEBSOCAT_LOCK_API_0_3_4_MD5		:= 19466d8edb3c032438026125770b17f9
> +WEBSOCAT_LOCK_API_0_3_4_URL		:= https://crates.io/api/v1/crates/lock_api/0.3.4/download
> +WEBSOCAT_LOCK_API_0_3_4_SOURCE	:= $(SRCDIR)/lock_api-0.3.4.crate
> +$(WEBSOCAT_LOCK_API_0_3_4_SOURCE)	:= WEBSOCAT_LOCK_API_0_3_4
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_LOCK_API_0_3_4_SOURCE)
> +
> +WEBSOCAT_LOCK_API_0_4_9_MD5		:= 426eb9e22cbb36480e13fd265be87b4c
> +WEBSOCAT_LOCK_API_0_4_9_URL		:= https://crates.io/api/v1/crates/lock_api/0.4.9/download
> +WEBSOCAT_LOCK_API_0_4_9_SOURCE	:= $(SRCDIR)/lock_api-0.4.9.crate
> +$(WEBSOCAT_LOCK_API_0_4_9_SOURCE)	:= WEBSOCAT_LOCK_API_0_4_9
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_LOCK_API_0_4_9_SOURCE)
> +
> +WEBSOCAT_LOG_0_3_9_MD5		:= 33f0dff2bb670d9307fea18d579b5494
> +WEBSOCAT_LOG_0_3_9_URL		:= https://crates.io/api/v1/crates/log/0.3.9/download
> +WEBSOCAT_LOG_0_3_9_SOURCE	:= $(SRCDIR)/log-0.3.9.crate
> +$(WEBSOCAT_LOG_0_3_9_SOURCE)	:= WEBSOCAT_LOG_0_3_9
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_LOG_0_3_9_SOURCE)
> +
> +WEBSOCAT_LOG_0_4_17_MD5		:= b31bf94ffe7e0f2ada93afae1076eaeb
> +WEBSOCAT_LOG_0_4_17_URL		:= https://crates.io/api/v1/crates/log/0.4.17/download
> +WEBSOCAT_LOG_0_4_17_SOURCE	:= $(SRCDIR)/log-0.4.17.crate
> +$(WEBSOCAT_LOG_0_4_17_SOURCE)	:= WEBSOCAT_LOG_0_4_17
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_LOG_0_4_17_SOURCE)
> +
> +WEBSOCAT_MATCHES_0_1_9_MD5		:= 5ac809692422b722eaded90be3c4d9c2
> +WEBSOCAT_MATCHES_0_1_9_URL		:= https://crates.io/api/v1/crates/matches/0.1.9/download
> +WEBSOCAT_MATCHES_0_1_9_SOURCE	:= $(SRCDIR)/matches-0.1.9.crate
> +$(WEBSOCAT_MATCHES_0_1_9_SOURCE)	:= WEBSOCAT_MATCHES_0_1_9
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_MATCHES_0_1_9_SOURCE)
> +
> +WEBSOCAT_MAYBE_UNINIT_2_0_0_MD5		:= b5cf10e268e8a3bee2de8a734104245e
> +WEBSOCAT_MAYBE_UNINIT_2_0_0_URL		:= https://crates.io/api/v1/crates/maybe-uninit/2.0.0/download
> +WEBSOCAT_MAYBE_UNINIT_2_0_0_SOURCE	:= $(SRCDIR)/maybe-uninit-2.0.0.crate
> +$(WEBSOCAT_MAYBE_UNINIT_2_0_0_SOURCE)	:= WEBSOCAT_MAYBE_UNINIT_2_0_0
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_MAYBE_UNINIT_2_0_0_SOURCE)
> +
> +WEBSOCAT_MEMCHR_2_5_0_MD5		:= 94b8bf179385ff071bdc33b58bf047c0
> +WEBSOCAT_MEMCHR_2_5_0_URL		:= https://crates.io/api/v1/crates/memchr/2.5.0/download
> +WEBSOCAT_MEMCHR_2_5_0_SOURCE	:= $(SRCDIR)/memchr-2.5.0.crate
> +$(WEBSOCAT_MEMCHR_2_5_0_SOURCE)	:= WEBSOCAT_MEMCHR_2_5_0
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_MEMCHR_2_5_0_SOURCE)
> +
> +WEBSOCAT_MEMOFFSET_0_5_6_MD5		:= 5d9532411dde9442741983efd0961351
> +WEBSOCAT_MEMOFFSET_0_5_6_URL		:= https://crates.io/api/v1/crates/memoffset/0.5.6/download
> +WEBSOCAT_MEMOFFSET_0_5_6_SOURCE	:= $(SRCDIR)/memoffset-0.5.6.crate
> +$(WEBSOCAT_MEMOFFSET_0_5_6_SOURCE)	:= WEBSOCAT_MEMOFFSET_0_5_6
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_MEMOFFSET_0_5_6_SOURCE)
> +
> +WEBSOCAT_MIME_0_2_6_MD5		:= 6d1fc428d2446b4975d8c1788c73e72c
> +WEBSOCAT_MIME_0_2_6_URL		:= https://crates.io/api/v1/crates/mime/0.2.6/download
> +WEBSOCAT_MIME_0_2_6_SOURCE	:= $(SRCDIR)/mime-0.2.6.crate
> +$(WEBSOCAT_MIME_0_2_6_SOURCE)	:= WEBSOCAT_MIME_0_2_6
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_MIME_0_2_6_SOURCE)
> +
> +WEBSOCAT_MINIZ_OXIDE_0_5_4_MD5		:= cc0dc636c0dfcfddbbbff21a699b25d8
> +WEBSOCAT_MINIZ_OXIDE_0_5_4_URL		:= https://crates.io/api/v1/crates/miniz_oxide/0.5.4/download
> +WEBSOCAT_MINIZ_OXIDE_0_5_4_SOURCE	:= $(SRCDIR)/miniz_oxide-0.5.4.crate
> +$(WEBSOCAT_MINIZ_OXIDE_0_5_4_SOURCE)	:= WEBSOCAT_MINIZ_OXIDE_0_5_4
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_MINIZ_OXIDE_0_5_4_SOURCE)
> +
> +WEBSOCAT_MIO_0_6_23_MD5		:= 257e573f323c639630b31f147671b627
> +WEBSOCAT_MIO_0_6_23_URL		:= https://crates.io/api/v1/crates/mio/0.6.23/download
> +WEBSOCAT_MIO_0_6_23_SOURCE	:= $(SRCDIR)/mio-0.6.23.crate
> +$(WEBSOCAT_MIO_0_6_23_SOURCE)	:= WEBSOCAT_MIO_0_6_23
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_MIO_0_6_23_SOURCE)
> +
> +WEBSOCAT_MIO_NAMED_PIPES_0_1_7_MD5		:= 149e92d5fe1d4adde8dadfa37badf19a
> +WEBSOCAT_MIO_NAMED_PIPES_0_1_7_URL		:= https://crates.io/api/v1/crates/mio-named-pipes/0.1.7/download
> +WEBSOCAT_MIO_NAMED_PIPES_0_1_7_SOURCE	:= $(SRCDIR)/mio-named-pipes-0.1.7.crate
> +$(WEBSOCAT_MIO_NAMED_PIPES_0_1_7_SOURCE)	:= WEBSOCAT_MIO_NAMED_PIPES_0_1_7
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_MIO_NAMED_PIPES_0_1_7_SOURCE)
> +
> +WEBSOCAT_MIO_UDS_0_6_8_MD5		:= 10e28d0be14899dcbad91142a228fb35
> +WEBSOCAT_MIO_UDS_0_6_8_URL		:= https://crates.io/api/v1/crates/mio-uds/0.6.8/download
> +WEBSOCAT_MIO_UDS_0_6_8_SOURCE	:= $(SRCDIR)/mio-uds-0.6.8.crate
> +$(WEBSOCAT_MIO_UDS_0_6_8_SOURCE)	:= WEBSOCAT_MIO_UDS_0_6_8
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_MIO_UDS_0_6_8_SOURCE)
> +
> +WEBSOCAT_MIOW_0_2_2_MD5		:= 1fbbe598255c0addb31bdfbe3e76420d
> +WEBSOCAT_MIOW_0_2_2_URL		:= https://crates.io/api/v1/crates/miow/0.2.2/download
> +WEBSOCAT_MIOW_0_2_2_SOURCE	:= $(SRCDIR)/miow-0.2.2.crate
> +$(WEBSOCAT_MIOW_0_2_2_SOURCE)	:= WEBSOCAT_MIOW_0_2_2
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_MIOW_0_2_2_SOURCE)
> +
> +WEBSOCAT_MIOW_0_3_7_MD5		:= 4604959975c2154a14f6b5e97444e2c8
> +WEBSOCAT_MIOW_0_3_7_URL		:= https://crates.io/api/v1/crates/miow/0.3.7/download
> +WEBSOCAT_MIOW_0_3_7_SOURCE	:= $(SRCDIR)/miow-0.3.7.crate
> +$(WEBSOCAT_MIOW_0_3_7_SOURCE)	:= WEBSOCAT_MIOW_0_3_7
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_MIOW_0_3_7_SOURCE)
> +
> +WEBSOCAT_NATIVE_TLS_0_2_10_MD5		:= 83c88f2bd69c44122955bf94ad9377a1
> +WEBSOCAT_NATIVE_TLS_0_2_10_URL		:= https://crates.io/api/v1/crates/native-tls/0.2.10/download
> +WEBSOCAT_NATIVE_TLS_0_2_10_SOURCE	:= $(SRCDIR)/native-tls-0.2.10.crate
> +$(WEBSOCAT_NATIVE_TLS_0_2_10_SOURCE)	:= WEBSOCAT_NATIVE_TLS_0_2_10
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_NATIVE_TLS_0_2_10_SOURCE)
> +
> +WEBSOCAT_NET2_0_2_37_MD5		:= ff6c054468eab826f0dab7cc9a3fe557
> +WEBSOCAT_NET2_0_2_37_URL		:= https://crates.io/api/v1/crates/net2/0.2.37/download
> +WEBSOCAT_NET2_0_2_37_SOURCE	:= $(SRCDIR)/net2-0.2.37.crate
> +$(WEBSOCAT_NET2_0_2_37_SOURCE)	:= WEBSOCAT_NET2_0_2_37
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_NET2_0_2_37_SOURCE)
> +
> +WEBSOCAT_NUM_CPUS_1_13_1_MD5		:= c5e50e299295e662ad19c58428d6e085
> +WEBSOCAT_NUM_CPUS_1_13_1_URL		:= https://crates.io/api/v1/crates/num_cpus/1.13.1/download
> +WEBSOCAT_NUM_CPUS_1_13_1_SOURCE	:= $(SRCDIR)/num_cpus-1.13.1.crate
> +$(WEBSOCAT_NUM_CPUS_1_13_1_SOURCE)	:= WEBSOCAT_NUM_CPUS_1_13_1
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_NUM_CPUS_1_13_1_SOURCE)
> +
> +WEBSOCAT_ONCE_CELL_1_15_0_MD5		:= 81bd380ba31052f9c84f5e71e8c0ee52
> +WEBSOCAT_ONCE_CELL_1_15_0_URL		:= https://crates.io/api/v1/crates/once_cell/1.15.0/download
> +WEBSOCAT_ONCE_CELL_1_15_0_SOURCE	:= $(SRCDIR)/once_cell-1.15.0.crate
> +$(WEBSOCAT_ONCE_CELL_1_15_0_SOURCE)	:= WEBSOCAT_ONCE_CELL_1_15_0
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_ONCE_CELL_1_15_0_SOURCE)
> +
> +WEBSOCAT_OPAQUE_DEBUG_0_2_3_MD5		:= 797752fea1f2c8b458cf7383b61433c9
> +WEBSOCAT_OPAQUE_DEBUG_0_2_3_URL		:= https://crates.io/api/v1/crates/opaque-debug/0.2.3/download
> +WEBSOCAT_OPAQUE_DEBUG_0_2_3_SOURCE	:= $(SRCDIR)/opaque-debug-0.2.3.crate
> +$(WEBSOCAT_OPAQUE_DEBUG_0_2_3_SOURCE)	:= WEBSOCAT_OPAQUE_DEBUG_0_2_3
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_OPAQUE_DEBUG_0_2_3_SOURCE)
> +
> +WEBSOCAT_OPAQUE_DEBUG_0_3_0_MD5		:= 653e04baa68a4484b3b839c19221e474
> +WEBSOCAT_OPAQUE_DEBUG_0_3_0_URL		:= https://crates.io/api/v1/crates/opaque-debug/0.3.0/download
> +WEBSOCAT_OPAQUE_DEBUG_0_3_0_SOURCE	:= $(SRCDIR)/opaque-debug-0.3.0.crate
> +$(WEBSOCAT_OPAQUE_DEBUG_0_3_0_SOURCE)	:= WEBSOCAT_OPAQUE_DEBUG_0_3_0
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_OPAQUE_DEBUG_0_3_0_SOURCE)
> +
> +WEBSOCAT_OPENSSL_0_10_41_MD5		:= 728031c49b53e56dd6f7af19d4182975
> +WEBSOCAT_OPENSSL_0_10_41_URL		:= https://crates.io/api/v1/crates/openssl/0.10.41/download
> +WEBSOCAT_OPENSSL_0_10_41_SOURCE	:= $(SRCDIR)/openssl-0.10.41.crate
> +$(WEBSOCAT_OPENSSL_0_10_41_SOURCE)	:= WEBSOCAT_OPENSSL_0_10_41
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_OPENSSL_0_10_41_SOURCE)
> +
> +WEBSOCAT_OPENSSL_MACROS_0_1_0_MD5		:= 73212ff5e0f8cd8844081a2461393707
> +WEBSOCAT_OPENSSL_MACROS_0_1_0_URL		:= https://crates.io/api/v1/crates/openssl-macros/0.1.0/download
> +WEBSOCAT_OPENSSL_MACROS_0_1_0_SOURCE	:= $(SRCDIR)/openssl-macros-0.1.0.crate
> +$(WEBSOCAT_OPENSSL_MACROS_0_1_0_SOURCE)	:= WEBSOCAT_OPENSSL_MACROS_0_1_0
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_OPENSSL_MACROS_0_1_0_SOURCE)
> +
> +WEBSOCAT_OPENSSL_PROBE_0_1_5_MD5		:= 907244c0d3791f3f981c7cc8e4cad0a3
> +WEBSOCAT_OPENSSL_PROBE_0_1_5_URL		:= https://crates.io/api/v1/crates/openssl-probe/0.1.5/download
> +WEBSOCAT_OPENSSL_PROBE_0_1_5_SOURCE	:= $(SRCDIR)/openssl-probe-0.1.5.crate
> +$(WEBSOCAT_OPENSSL_PROBE_0_1_5_SOURCE)	:= WEBSOCAT_OPENSSL_PROBE_0_1_5
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_OPENSSL_PROBE_0_1_5_SOURCE)
> +
> +WEBSOCAT_OPENSSL_SRC_111_22_0_1_1_1Q_MD5		:= 35a1d9588f33516552bc74a8ce9d52c2
> +WEBSOCAT_OPENSSL_SRC_111_22_0_1_1_1Q_URL		:= https://crates.io/api/v1/crates/openssl-src/111.22.0+1.1.1q/download
> +WEBSOCAT_OPENSSL_SRC_111_22_0_1_1_1Q_SOURCE	:= $(SRCDIR)/openssl-src-111.22.0+1.1.1q.crate
> +$(WEBSOCAT_OPENSSL_SRC_111_22_0_1_1_1Q_SOURCE)	:= WEBSOCAT_OPENSSL_SRC_111_22_0_1_1_1Q
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_OPENSSL_SRC_111_22_0_1_1_1Q_SOURCE)
> +
> +WEBSOCAT_OPENSSL_SYS_0_9_75_MD5		:= 1a1faee558a8109ff8b9f7767410fded
> +WEBSOCAT_OPENSSL_SYS_0_9_75_URL		:= https://crates.io/api/v1/crates/openssl-sys/0.9.75/download
> +WEBSOCAT_OPENSSL_SYS_0_9_75_SOURCE	:= $(SRCDIR)/openssl-sys-0.9.75.crate
> +$(WEBSOCAT_OPENSSL_SYS_0_9_75_SOURCE)	:= WEBSOCAT_OPENSSL_SYS_0_9_75
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_OPENSSL_SYS_0_9_75_SOURCE)
> +
> +WEBSOCAT_PARKING_LOT_0_9_0_MD5		:= 783499db4bc8bb10620a842c2f2d8d36
> +WEBSOCAT_PARKING_LOT_0_9_0_URL		:= https://crates.io/api/v1/crates/parking_lot/0.9.0/download
> +WEBSOCAT_PARKING_LOT_0_9_0_SOURCE	:= $(SRCDIR)/parking_lot-0.9.0.crate
> +$(WEBSOCAT_PARKING_LOT_0_9_0_SOURCE)	:= WEBSOCAT_PARKING_LOT_0_9_0
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_PARKING_LOT_0_9_0_SOURCE)
> +
> +WEBSOCAT_PARKING_LOT_0_12_1_MD5		:= 1be45f99109d447849f4244b58c5a470
> +WEBSOCAT_PARKING_LOT_0_12_1_URL		:= https://crates.io/api/v1/crates/parking_lot/0.12.1/download
> +WEBSOCAT_PARKING_LOT_0_12_1_SOURCE	:= $(SRCDIR)/parking_lot-0.12.1.crate
> +$(WEBSOCAT_PARKING_LOT_0_12_1_SOURCE)	:= WEBSOCAT_PARKING_LOT_0_12_1
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_PARKING_LOT_0_12_1_SOURCE)
> +
> +WEBSOCAT_PARKING_LOT_CORE_0_6_2_MD5		:= 521a4741dd82cd5667e866400c7a8e4f
> +WEBSOCAT_PARKING_LOT_CORE_0_6_2_URL		:= https://crates.io/api/v1/crates/parking_lot_core/0.6.2/download
> +WEBSOCAT_PARKING_LOT_CORE_0_6_2_SOURCE	:= $(SRCDIR)/parking_lot_core-0.6.2.crate
> +$(WEBSOCAT_PARKING_LOT_CORE_0_6_2_SOURCE)	:= WEBSOCAT_PARKING_LOT_CORE_0_6_2
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_PARKING_LOT_CORE_0_6_2_SOURCE)
> +
> +WEBSOCAT_PARKING_LOT_CORE_0_9_3_MD5		:= f3c211bc33fcf71ca981d02f9fa2813c
> +WEBSOCAT_PARKING_LOT_CORE_0_9_3_URL		:= https://crates.io/api/v1/crates/parking_lot_core/0.9.3/download
> +WEBSOCAT_PARKING_LOT_CORE_0_9_3_SOURCE	:= $(SRCDIR)/parking_lot_core-0.9.3.crate
> +$(WEBSOCAT_PARKING_LOT_CORE_0_9_3_SOURCE)	:= WEBSOCAT_PARKING_LOT_CORE_0_9_3
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_PARKING_LOT_CORE_0_9_3_SOURCE)
> +
> +WEBSOCAT_PASSWORD_HASH_0_4_2_MD5		:= 8b67ff1e021e9c6002ff6f6b750476cb
> +WEBSOCAT_PASSWORD_HASH_0_4_2_URL		:= https://crates.io/api/v1/crates/password-hash/0.4.2/download
> +WEBSOCAT_PASSWORD_HASH_0_4_2_SOURCE	:= $(SRCDIR)/password-hash-0.4.2.crate
> +$(WEBSOCAT_PASSWORD_HASH_0_4_2_SOURCE)	:= WEBSOCAT_PASSWORD_HASH_0_4_2
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_PASSWORD_HASH_0_4_2_SOURCE)
> +
> +WEBSOCAT_PERCENT_ENCODING_1_0_1_MD5		:= 8a5fc6ba84f3ac8a7e43ecb99322866c
> +WEBSOCAT_PERCENT_ENCODING_1_0_1_URL		:= https://crates.io/api/v1/crates/percent-encoding/1.0.1/download
> +WEBSOCAT_PERCENT_ENCODING_1_0_1_SOURCE	:= $(SRCDIR)/percent-encoding-1.0.1.crate
> +$(WEBSOCAT_PERCENT_ENCODING_1_0_1_SOURCE)	:= WEBSOCAT_PERCENT_ENCODING_1_0_1
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_PERCENT_ENCODING_1_0_1_SOURCE)
> +
> +WEBSOCAT_PKG_CONFIG_0_3_25_MD5		:= b478ee84018082806ea8da763f0b3f1f
> +WEBSOCAT_PKG_CONFIG_0_3_25_URL		:= https://crates.io/api/v1/crates/pkg-config/0.3.25/download
> +WEBSOCAT_PKG_CONFIG_0_3_25_SOURCE	:= $(SRCDIR)/pkg-config-0.3.25.crate
> +$(WEBSOCAT_PKG_CONFIG_0_3_25_SOURCE)	:= WEBSOCAT_PKG_CONFIG_0_3_25
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_PKG_CONFIG_0_3_25_SOURCE)
> +
> +WEBSOCAT_POLY1305_0_7_2_MD5		:= 34d2cb51549a4e7236ec8dbfcf19236d
> +WEBSOCAT_POLY1305_0_7_2_URL		:= https://crates.io/api/v1/crates/poly1305/0.7.2/download
> +WEBSOCAT_POLY1305_0_7_2_SOURCE	:= $(SRCDIR)/poly1305-0.7.2.crate
> +$(WEBSOCAT_POLY1305_0_7_2_SOURCE)	:= WEBSOCAT_POLY1305_0_7_2
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_POLY1305_0_7_2_SOURCE)
> +
> +WEBSOCAT_PPV_LITE86_0_2_16_MD5		:= ae91c97885d67994a342820cf7d59fb2
> +WEBSOCAT_PPV_LITE86_0_2_16_URL		:= https://crates.io/api/v1/crates/ppv-lite86/0.2.16/download
> +WEBSOCAT_PPV_LITE86_0_2_16_SOURCE	:= $(SRCDIR)/ppv-lite86-0.2.16.crate
> +$(WEBSOCAT_PPV_LITE86_0_2_16_SOURCE)	:= WEBSOCAT_PPV_LITE86_0_2_16
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_PPV_LITE86_0_2_16_SOURCE)
> +
> +WEBSOCAT_PROC_MACRO2_0_4_30_MD5		:= 020c7d0be083642e24a1499122793006
> +WEBSOCAT_PROC_MACRO2_0_4_30_URL		:= https://crates.io/api/v1/crates/proc-macro2/0.4.30/download
> +WEBSOCAT_PROC_MACRO2_0_4_30_SOURCE	:= $(SRCDIR)/proc-macro2-0.4.30.crate
> +$(WEBSOCAT_PROC_MACRO2_0_4_30_SOURCE)	:= WEBSOCAT_PROC_MACRO2_0_4_30
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_PROC_MACRO2_0_4_30_SOURCE)
> +
> +WEBSOCAT_PROC_MACRO2_1_0_43_MD5		:= 2c24d3b1b942a89c838bb60ef053d2d2
> +WEBSOCAT_PROC_MACRO2_1_0_43_URL		:= https://crates.io/api/v1/crates/proc-macro2/1.0.43/download
> +WEBSOCAT_PROC_MACRO2_1_0_43_SOURCE	:= $(SRCDIR)/proc-macro2-1.0.43.crate
> +$(WEBSOCAT_PROC_MACRO2_1_0_43_SOURCE)	:= WEBSOCAT_PROC_MACRO2_1_0_43
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_PROC_MACRO2_1_0_43_SOURCE)
> +
> +WEBSOCAT_PROMETHEUS_0_13_2_MD5		:= 3956c4b6b2de601a9b86a7bf9cf57eeb
> +WEBSOCAT_PROMETHEUS_0_13_2_URL		:= https://crates.io/api/v1/crates/prometheus/0.13.2/download
> +WEBSOCAT_PROMETHEUS_0_13_2_SOURCE	:= $(SRCDIR)/prometheus-0.13.2.crate
> +$(WEBSOCAT_PROMETHEUS_0_13_2_SOURCE)	:= WEBSOCAT_PROMETHEUS_0_13_2
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_PROMETHEUS_0_13_2_SOURCE)
> +
> +WEBSOCAT_PROMETHEUS_METRIC_STORAGE_0_5_0_MD5		:= aa527f2aaa77030ca61460fba55ed779
> +WEBSOCAT_PROMETHEUS_METRIC_STORAGE_0_5_0_URL		:= https://crates.io/api/v1/crates/prometheus-metric-storage/0.5.0/download
> +WEBSOCAT_PROMETHEUS_METRIC_STORAGE_0_5_0_SOURCE	:= $(SRCDIR)/prometheus-metric-storage-0.5.0.crate
> +$(WEBSOCAT_PROMETHEUS_METRIC_STORAGE_0_5_0_SOURCE)	:= WEBSOCAT_PROMETHEUS_METRIC_STORAGE_0_5_0
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_PROMETHEUS_METRIC_STORAGE_0_5_0_SOURCE)
> +
> +WEBSOCAT_PROMETHEUS_METRIC_STORAGE_DERIVE_0_5_0_MD5		:= 8f13a2424f72460f28dded2a3873a5be
> +WEBSOCAT_PROMETHEUS_METRIC_STORAGE_DERIVE_0_5_0_URL		:= https://crates.io/api/v1/crates/prometheus-metric-storage-derive/0.5.0/download
> +WEBSOCAT_PROMETHEUS_METRIC_STORAGE_DERIVE_0_5_0_SOURCE	:= $(SRCDIR)/prometheus-metric-storage-derive-0.5.0.crate
> +$(WEBSOCAT_PROMETHEUS_METRIC_STORAGE_DERIVE_0_5_0_SOURCE)	:= WEBSOCAT_PROMETHEUS_METRIC_STORAGE_DERIVE_0_5_0
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_PROMETHEUS_METRIC_STORAGE_DERIVE_0_5_0_SOURCE)
> +
> +WEBSOCAT_QUOTE_0_6_13_MD5		:= e6692d52f35aa3b9311d7d7748fa25ea
> +WEBSOCAT_QUOTE_0_6_13_URL		:= https://crates.io/api/v1/crates/quote/0.6.13/download
> +WEBSOCAT_QUOTE_0_6_13_SOURCE	:= $(SRCDIR)/quote-0.6.13.crate
> +$(WEBSOCAT_QUOTE_0_6_13_SOURCE)	:= WEBSOCAT_QUOTE_0_6_13
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_QUOTE_0_6_13_SOURCE)
> +
> +WEBSOCAT_QUOTE_1_0_21_MD5		:= 1de20a0fc1cfdf5e332cbdb2e0899a2b
> +WEBSOCAT_QUOTE_1_0_21_URL		:= https://crates.io/api/v1/crates/quote/1.0.21/download
> +WEBSOCAT_QUOTE_1_0_21_SOURCE	:= $(SRCDIR)/quote-1.0.21.crate
> +$(WEBSOCAT_QUOTE_1_0_21_SOURCE)	:= WEBSOCAT_QUOTE_1_0_21
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_QUOTE_1_0_21_SOURCE)
> +
> +WEBSOCAT_RAND_0_6_5_MD5		:= 793627c8c18012ad77cb3e81fa4c2195
> +WEBSOCAT_RAND_0_6_5_URL		:= https://crates.io/api/v1/crates/rand/0.6.5/download
> +WEBSOCAT_RAND_0_6_5_SOURCE	:= $(SRCDIR)/rand-0.6.5.crate
> +$(WEBSOCAT_RAND_0_6_5_SOURCE)	:= WEBSOCAT_RAND_0_6_5
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_RAND_0_6_5_SOURCE)
> +
> +WEBSOCAT_RAND_0_8_5_MD5		:= ee7a5f842c39bc47c474196e83b0df5f
> +WEBSOCAT_RAND_0_8_5_URL		:= https://crates.io/api/v1/crates/rand/0.8.5/download
> +WEBSOCAT_RAND_0_8_5_SOURCE	:= $(SRCDIR)/rand-0.8.5.crate
> +$(WEBSOCAT_RAND_0_8_5_SOURCE)	:= WEBSOCAT_RAND_0_8_5
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_RAND_0_8_5_SOURCE)
> +
> +WEBSOCAT_RAND_CHACHA_0_1_1_MD5		:= 3ab5a79607a4d260bf61cd99dc82ab05
> +WEBSOCAT_RAND_CHACHA_0_1_1_URL		:= https://crates.io/api/v1/crates/rand_chacha/0.1.1/download
> +WEBSOCAT_RAND_CHACHA_0_1_1_SOURCE	:= $(SRCDIR)/rand_chacha-0.1.1.crate
> +$(WEBSOCAT_RAND_CHACHA_0_1_1_SOURCE)	:= WEBSOCAT_RAND_CHACHA_0_1_1
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_RAND_CHACHA_0_1_1_SOURCE)
> +
> +WEBSOCAT_RAND_CHACHA_0_3_1_MD5		:= e30085994bbeb4b7f4895d48216d5476
> +WEBSOCAT_RAND_CHACHA_0_3_1_URL		:= https://crates.io/api/v1/crates/rand_chacha/0.3.1/download
> +WEBSOCAT_RAND_CHACHA_0_3_1_SOURCE	:= $(SRCDIR)/rand_chacha-0.3.1.crate
> +$(WEBSOCAT_RAND_CHACHA_0_3_1_SOURCE)	:= WEBSOCAT_RAND_CHACHA_0_3_1
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_RAND_CHACHA_0_3_1_SOURCE)
> +
> +WEBSOCAT_RAND_CORE_0_3_1_MD5		:= 8cab41822d03dfa674870315308fa392
> +WEBSOCAT_RAND_CORE_0_3_1_URL		:= https://crates.io/api/v1/crates/rand_core/0.3.1/download
> +WEBSOCAT_RAND_CORE_0_3_1_SOURCE	:= $(SRCDIR)/rand_core-0.3.1.crate
> +$(WEBSOCAT_RAND_CORE_0_3_1_SOURCE)	:= WEBSOCAT_RAND_CORE_0_3_1
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_RAND_CORE_0_3_1_SOURCE)
> +
> +WEBSOCAT_RAND_CORE_0_4_2_MD5		:= 35ddcd36701a1a6711cc3aec85909f41
> +WEBSOCAT_RAND_CORE_0_4_2_URL		:= https://crates.io/api/v1/crates/rand_core/0.4.2/download
> +WEBSOCAT_RAND_CORE_0_4_2_SOURCE	:= $(SRCDIR)/rand_core-0.4.2.crate
> +$(WEBSOCAT_RAND_CORE_0_4_2_SOURCE)	:= WEBSOCAT_RAND_CORE_0_4_2
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_RAND_CORE_0_4_2_SOURCE)
> +
> +WEBSOCAT_RAND_CORE_0_6_4_MD5		:= a1626b8f4d165b1b60d960862eba4cf0
> +WEBSOCAT_RAND_CORE_0_6_4_URL		:= https://crates.io/api/v1/crates/rand_core/0.6.4/download
> +WEBSOCAT_RAND_CORE_0_6_4_SOURCE	:= $(SRCDIR)/rand_core-0.6.4.crate
> +$(WEBSOCAT_RAND_CORE_0_6_4_SOURCE)	:= WEBSOCAT_RAND_CORE_0_6_4
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_RAND_CORE_0_6_4_SOURCE)
> +
> +WEBSOCAT_RAND_HC_0_1_0_MD5		:= 28b1e6d15e1ba8cf3a2e953ce7fcd3de
> +WEBSOCAT_RAND_HC_0_1_0_URL		:= https://crates.io/api/v1/crates/rand_hc/0.1.0/download
> +WEBSOCAT_RAND_HC_0_1_0_SOURCE	:= $(SRCDIR)/rand_hc-0.1.0.crate
> +$(WEBSOCAT_RAND_HC_0_1_0_SOURCE)	:= WEBSOCAT_RAND_HC_0_1_0
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_RAND_HC_0_1_0_SOURCE)
> +
> +WEBSOCAT_RAND_ISAAC_0_1_1_MD5		:= 74b15f1928431937f14ed91fdc12b542
> +WEBSOCAT_RAND_ISAAC_0_1_1_URL		:= https://crates.io/api/v1/crates/rand_isaac/0.1.1/download
> +WEBSOCAT_RAND_ISAAC_0_1_1_SOURCE	:= $(SRCDIR)/rand_isaac-0.1.1.crate
> +$(WEBSOCAT_RAND_ISAAC_0_1_1_SOURCE)	:= WEBSOCAT_RAND_ISAAC_0_1_1
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_RAND_ISAAC_0_1_1_SOURCE)
> +
> +WEBSOCAT_RAND_JITTER_0_1_4_MD5		:= 2255d3d9a603e177985602a7df1c5bbc
> +WEBSOCAT_RAND_JITTER_0_1_4_URL		:= https://crates.io/api/v1/crates/rand_jitter/0.1.4/download
> +WEBSOCAT_RAND_JITTER_0_1_4_SOURCE	:= $(SRCDIR)/rand_jitter-0.1.4.crate
> +$(WEBSOCAT_RAND_JITTER_0_1_4_SOURCE)	:= WEBSOCAT_RAND_JITTER_0_1_4
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_RAND_JITTER_0_1_4_SOURCE)
> +
> +WEBSOCAT_RAND_OS_0_1_3_MD5		:= 5acfdc8656212bce8df1bcc43db34c3d
> +WEBSOCAT_RAND_OS_0_1_3_URL		:= https://crates.io/api/v1/crates/rand_os/0.1.3/download
> +WEBSOCAT_RAND_OS_0_1_3_SOURCE	:= $(SRCDIR)/rand_os-0.1.3.crate
> +$(WEBSOCAT_RAND_OS_0_1_3_SOURCE)	:= WEBSOCAT_RAND_OS_0_1_3
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_RAND_OS_0_1_3_SOURCE)
> +
> +WEBSOCAT_RAND_PCG_0_1_2_MD5		:= f9e08a49715c401602243230b28d86f0
> +WEBSOCAT_RAND_PCG_0_1_2_URL		:= https://crates.io/api/v1/crates/rand_pcg/0.1.2/download
> +WEBSOCAT_RAND_PCG_0_1_2_SOURCE	:= $(SRCDIR)/rand_pcg-0.1.2.crate
> +$(WEBSOCAT_RAND_PCG_0_1_2_SOURCE)	:= WEBSOCAT_RAND_PCG_0_1_2
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_RAND_PCG_0_1_2_SOURCE)
> +
> +WEBSOCAT_RAND_XORSHIFT_0_1_1_MD5		:= 7826deb76941fc36c2391951bd65ba47
> +WEBSOCAT_RAND_XORSHIFT_0_1_1_URL		:= https://crates.io/api/v1/crates/rand_xorshift/0.1.1/download
> +WEBSOCAT_RAND_XORSHIFT_0_1_1_SOURCE	:= $(SRCDIR)/rand_xorshift-0.1.1.crate
> +$(WEBSOCAT_RAND_XORSHIFT_0_1_1_SOURCE)	:= WEBSOCAT_RAND_XORSHIFT_0_1_1
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_RAND_XORSHIFT_0_1_1_SOURCE)
> +
> +WEBSOCAT_RDRAND_0_4_0_MD5		:= c8d655d206cbe48b84a22544d6fc6d15
> +WEBSOCAT_RDRAND_0_4_0_URL		:= https://crates.io/api/v1/crates/rdrand/0.4.0/download
> +WEBSOCAT_RDRAND_0_4_0_SOURCE	:= $(SRCDIR)/rdrand-0.4.0.crate
> +$(WEBSOCAT_RDRAND_0_4_0_SOURCE)	:= WEBSOCAT_RDRAND_0_4_0
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_RDRAND_0_4_0_SOURCE)
> +
> +WEBSOCAT_READWRITE_0_1_2_MD5		:= 726d171356fe358b6b0a777b2e1525c0
> +WEBSOCAT_READWRITE_0_1_2_URL		:= https://crates.io/api/v1/crates/readwrite/0.1.2/download
> +WEBSOCAT_READWRITE_0_1_2_SOURCE	:= $(SRCDIR)/readwrite-0.1.2.crate
> +$(WEBSOCAT_READWRITE_0_1_2_SOURCE)	:= WEBSOCAT_READWRITE_0_1_2
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_READWRITE_0_1_2_SOURCE)
> +
> +WEBSOCAT_REDOX_SYSCALL_0_1_57_MD5		:= 3cc3a4bd5861ca93d7c0d19129334703
> +WEBSOCAT_REDOX_SYSCALL_0_1_57_URL		:= https://crates.io/api/v1/crates/redox_syscall/0.1.57/download
> +WEBSOCAT_REDOX_SYSCALL_0_1_57_SOURCE	:= $(SRCDIR)/redox_syscall-0.1.57.crate
> +$(WEBSOCAT_REDOX_SYSCALL_0_1_57_SOURCE)	:= WEBSOCAT_REDOX_SYSCALL_0_1_57
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_REDOX_SYSCALL_0_1_57_SOURCE)
> +
> +WEBSOCAT_REDOX_SYSCALL_0_2_16_MD5		:= 16111f31a29feae4ce4a324b83dc0189
> +WEBSOCAT_REDOX_SYSCALL_0_2_16_URL		:= https://crates.io/api/v1/crates/redox_syscall/0.2.16/download
> +WEBSOCAT_REDOX_SYSCALL_0_2_16_SOURCE	:= $(SRCDIR)/redox_syscall-0.2.16.crate
> +$(WEBSOCAT_REDOX_SYSCALL_0_2_16_SOURCE)	:= WEBSOCAT_REDOX_SYSCALL_0_2_16
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_REDOX_SYSCALL_0_2_16_SOURCE)
> +
> +WEBSOCAT_REMOVE_DIR_ALL_0_5_3_MD5		:= 0538d1da369f3e3f0412aa4d735c1b61
> +WEBSOCAT_REMOVE_DIR_ALL_0_5_3_URL		:= https://crates.io/api/v1/crates/remove_dir_all/0.5.3/download
> +WEBSOCAT_REMOVE_DIR_ALL_0_5_3_SOURCE	:= $(SRCDIR)/remove_dir_all-0.5.3.crate
> +$(WEBSOCAT_REMOVE_DIR_ALL_0_5_3_SOURCE)	:= WEBSOCAT_REMOVE_DIR_ALL_0_5_3
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_REMOVE_DIR_ALL_0_5_3_SOURCE)
> +
> +WEBSOCAT_RUSTC_VERSION_0_2_3_MD5		:= 4d101ab24d14c54937c5f45ece8fad5f
> +WEBSOCAT_RUSTC_VERSION_0_2_3_URL		:= https://crates.io/api/v1/crates/rustc_version/0.2.3/download
> +WEBSOCAT_RUSTC_VERSION_0_2_3_SOURCE	:= $(SRCDIR)/rustc_version-0.2.3.crate
> +$(WEBSOCAT_RUSTC_VERSION_0_2_3_SOURCE)	:= WEBSOCAT_RUSTC_VERSION_0_2_3
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_RUSTC_VERSION_0_2_3_SOURCE)
> +
> +WEBSOCAT_SAFEMEM_0_3_3_MD5		:= 994b165f971ecfc09dc13fca8d394691
> +WEBSOCAT_SAFEMEM_0_3_3_URL		:= https://crates.io/api/v1/crates/safemem/0.3.3/download
> +WEBSOCAT_SAFEMEM_0_3_3_SOURCE	:= $(SRCDIR)/safemem-0.3.3.crate
> +$(WEBSOCAT_SAFEMEM_0_3_3_SOURCE)	:= WEBSOCAT_SAFEMEM_0_3_3
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_SAFEMEM_0_3_3_SOURCE)
> +
> +WEBSOCAT_SCHANNEL_0_1_20_MD5		:= 47a2e9a3f22a0199c7f8292f43d5fa3d
> +WEBSOCAT_SCHANNEL_0_1_20_URL		:= https://crates.io/api/v1/crates/schannel/0.1.20/download
> +WEBSOCAT_SCHANNEL_0_1_20_SOURCE	:= $(SRCDIR)/schannel-0.1.20.crate
> +$(WEBSOCAT_SCHANNEL_0_1_20_SOURCE)	:= WEBSOCAT_SCHANNEL_0_1_20
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_SCHANNEL_0_1_20_SOURCE)
> +
> +WEBSOCAT_SCOPEGUARD_1_1_0_MD5		:= b4a0a98a54439a5a37952c8879187ee3
> +WEBSOCAT_SCOPEGUARD_1_1_0_URL		:= https://crates.io/api/v1/crates/scopeguard/1.1.0/download
> +WEBSOCAT_SCOPEGUARD_1_1_0_SOURCE	:= $(SRCDIR)/scopeguard-1.1.0.crate
> +$(WEBSOCAT_SCOPEGUARD_1_1_0_SOURCE)	:= WEBSOCAT_SCOPEGUARD_1_1_0
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_SCOPEGUARD_1_1_0_SOURCE)
> +
> +WEBSOCAT_SECURITY_FRAMEWORK_2_7_0_MD5		:= e09ebca0be86b1f613bdec7f95cad8d7
> +WEBSOCAT_SECURITY_FRAMEWORK_2_7_0_URL		:= https://crates.io/api/v1/crates/security-framework/2.7.0/download
> +WEBSOCAT_SECURITY_FRAMEWORK_2_7_0_SOURCE	:= $(SRCDIR)/security-framework-2.7.0.crate
> +$(WEBSOCAT_SECURITY_FRAMEWORK_2_7_0_SOURCE)	:= WEBSOCAT_SECURITY_FRAMEWORK_2_7_0
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_SECURITY_FRAMEWORK_2_7_0_SOURCE)
> +
> +WEBSOCAT_SECURITY_FRAMEWORK_SYS_2_6_1_MD5		:= ffbaf84e19c894443b584605e668b6ea
> +WEBSOCAT_SECURITY_FRAMEWORK_SYS_2_6_1_URL		:= https://crates.io/api/v1/crates/security-framework-sys/2.6.1/download
> +WEBSOCAT_SECURITY_FRAMEWORK_SYS_2_6_1_SOURCE	:= $(SRCDIR)/security-framework-sys-2.6.1.crate
> +$(WEBSOCAT_SECURITY_FRAMEWORK_SYS_2_6_1_SOURCE)	:= WEBSOCAT_SECURITY_FRAMEWORK_SYS_2_6_1
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_SECURITY_FRAMEWORK_SYS_2_6_1_SOURCE)
> +
> +WEBSOCAT_SEMVER_0_9_0_MD5		:= 64111c20b69aa1532fb66b70c4660b55
> +WEBSOCAT_SEMVER_0_9_0_URL		:= https://crates.io/api/v1/crates/semver/0.9.0/download
> +WEBSOCAT_SEMVER_0_9_0_SOURCE	:= $(SRCDIR)/semver-0.9.0.crate
> +$(WEBSOCAT_SEMVER_0_9_0_SOURCE)	:= WEBSOCAT_SEMVER_0_9_0
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_SEMVER_0_9_0_SOURCE)
> +
> +WEBSOCAT_SEMVER_PARSER_0_7_0_MD5		:= 8b4d8c7b6e3a060d365bc1ad650929fa
> +WEBSOCAT_SEMVER_PARSER_0_7_0_URL		:= https://crates.io/api/v1/crates/semver-parser/0.7.0/download
> +WEBSOCAT_SEMVER_PARSER_0_7_0_SOURCE	:= $(SRCDIR)/semver-parser-0.7.0.crate
> +$(WEBSOCAT_SEMVER_PARSER_0_7_0_SOURCE)	:= WEBSOCAT_SEMVER_PARSER_0_7_0
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_SEMVER_PARSER_0_7_0_SOURCE)
> +
> +WEBSOCAT_SHA_1_0_8_2_MD5		:= b1cace2e0c87bbbf5753996e28016787
> +WEBSOCAT_SHA_1_0_8_2_URL		:= https://crates.io/api/v1/crates/sha-1/0.8.2/download
> +WEBSOCAT_SHA_1_0_8_2_SOURCE	:= $(SRCDIR)/sha-1-0.8.2.crate
> +$(WEBSOCAT_SHA_1_0_8_2_SOURCE)	:= WEBSOCAT_SHA_1_0_8_2
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_SHA_1_0_8_2_SOURCE)
> +
> +WEBSOCAT_SIGNAL_HOOK_REGISTRY_1_4_0_MD5		:= 21b43d5721b3a9c16059acb691f4314d
> +WEBSOCAT_SIGNAL_HOOK_REGISTRY_1_4_0_URL		:= https://crates.io/api/v1/crates/signal-hook-registry/1.4.0/download
> +WEBSOCAT_SIGNAL_HOOK_REGISTRY_1_4_0_SOURCE	:= $(SRCDIR)/signal-hook-registry-1.4.0.crate
> +$(WEBSOCAT_SIGNAL_HOOK_REGISTRY_1_4_0_SOURCE)	:= WEBSOCAT_SIGNAL_HOOK_REGISTRY_1_4_0
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_SIGNAL_HOOK_REGISTRY_1_4_0_SOURCE)
> +
> +WEBSOCAT_SLAB_0_4_7_MD5		:= 9b7ebf6b588afaad70bf48a742973a30
> +WEBSOCAT_SLAB_0_4_7_URL		:= https://crates.io/api/v1/crates/slab/0.4.7/download
> +WEBSOCAT_SLAB_0_4_7_SOURCE	:= $(SRCDIR)/slab-0.4.7.crate
> +$(WEBSOCAT_SLAB_0_4_7_SOURCE)	:= WEBSOCAT_SLAB_0_4_7
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_SLAB_0_4_7_SOURCE)
> +
> +WEBSOCAT_SLAB_TYPESAFE_0_1_3_MD5		:= 1a13596ea648f42a9ef124c502e60bc7
> +WEBSOCAT_SLAB_TYPESAFE_0_1_3_URL		:= https://crates.io/api/v1/crates/slab_typesafe/0.1.3/download
> +WEBSOCAT_SLAB_TYPESAFE_0_1_3_SOURCE	:= $(SRCDIR)/slab_typesafe-0.1.3.crate
> +$(WEBSOCAT_SLAB_TYPESAFE_0_1_3_SOURCE)	:= WEBSOCAT_SLAB_TYPESAFE_0_1_3
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_SLAB_TYPESAFE_0_1_3_SOURCE)
> +
> +WEBSOCAT_SMALLVEC_0_6_14_MD5		:= e87ae057c34483e359e8de3e5f9dfbd5
> +WEBSOCAT_SMALLVEC_0_6_14_URL		:= https://crates.io/api/v1/crates/smallvec/0.6.14/download
> +WEBSOCAT_SMALLVEC_0_6_14_SOURCE	:= $(SRCDIR)/smallvec-0.6.14.crate
> +$(WEBSOCAT_SMALLVEC_0_6_14_SOURCE)	:= WEBSOCAT_SMALLVEC_0_6_14
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_SMALLVEC_0_6_14_SOURCE)
> +
> +WEBSOCAT_SMALLVEC_1_9_0_MD5		:= f087a0412ec128b8a1a19460ae7aaf7a
> +WEBSOCAT_SMALLVEC_1_9_0_URL		:= https://crates.io/api/v1/crates/smallvec/1.9.0/download
> +WEBSOCAT_SMALLVEC_1_9_0_SOURCE	:= $(SRCDIR)/smallvec-1.9.0.crate
> +$(WEBSOCAT_SMALLVEC_1_9_0_SOURCE)	:= WEBSOCAT_SMALLVEC_1_9_0
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_SMALLVEC_1_9_0_SOURCE)
> +
> +WEBSOCAT_SMART_DEFAULT_0_3_0_MD5		:= a7a9f63158ec1ceb6456a386bcef44aa
> +WEBSOCAT_SMART_DEFAULT_0_3_0_URL		:= https://crates.io/api/v1/crates/smart-default/0.3.0/download
> +WEBSOCAT_SMART_DEFAULT_0_3_0_SOURCE	:= $(SRCDIR)/smart-default-0.3.0.crate
> +$(WEBSOCAT_SMART_DEFAULT_0_3_0_SOURCE)	:= WEBSOCAT_SMART_DEFAULT_0_3_0
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_SMART_DEFAULT_0_3_0_SOURCE)
> +
> +WEBSOCAT_STRUCTOPT_0_2_16_MD5		:= 1f42aab04908d63f65a54f24da851def
> +WEBSOCAT_STRUCTOPT_0_2_16_URL		:= https://crates.io/api/v1/crates/structopt/0.2.16/download
> +WEBSOCAT_STRUCTOPT_0_2_16_SOURCE	:= $(SRCDIR)/structopt-0.2.16.crate
> +$(WEBSOCAT_STRUCTOPT_0_2_16_SOURCE)	:= WEBSOCAT_STRUCTOPT_0_2_16
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_STRUCTOPT_0_2_16_SOURCE)
> +
> +WEBSOCAT_STRUCTOPT_DERIVE_0_2_16_MD5		:= e5f9df6748867a7046ae07b0e3e1d269
> +WEBSOCAT_STRUCTOPT_DERIVE_0_2_16_URL		:= https://crates.io/api/v1/crates/structopt-derive/0.2.16/download
> +WEBSOCAT_STRUCTOPT_DERIVE_0_2_16_SOURCE	:= $(SRCDIR)/structopt-derive-0.2.16.crate
> +$(WEBSOCAT_STRUCTOPT_DERIVE_0_2_16_SOURCE)	:= WEBSOCAT_STRUCTOPT_DERIVE_0_2_16
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_STRUCTOPT_DERIVE_0_2_16_SOURCE)
> +
> +WEBSOCAT_SUBTLE_2_4_1_MD5		:= 8e053c23f1d36fbf3f276fbf501e3e35
> +WEBSOCAT_SUBTLE_2_4_1_URL		:= https://crates.io/api/v1/crates/subtle/2.4.1/download
> +WEBSOCAT_SUBTLE_2_4_1_SOURCE	:= $(SRCDIR)/subtle-2.4.1.crate
> +$(WEBSOCAT_SUBTLE_2_4_1_SOURCE)	:= WEBSOCAT_SUBTLE_2_4_1
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_SUBTLE_2_4_1_SOURCE)
> +
> +WEBSOCAT_SYN_0_15_44_MD5		:= 340f92fe45f0eb5766d679252e9acc42
> +WEBSOCAT_SYN_0_15_44_URL		:= https://crates.io/api/v1/crates/syn/0.15.44/download
> +WEBSOCAT_SYN_0_15_44_SOURCE	:= $(SRCDIR)/syn-0.15.44.crate
> +$(WEBSOCAT_SYN_0_15_44_SOURCE)	:= WEBSOCAT_SYN_0_15_44
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_SYN_0_15_44_SOURCE)
> +
> +WEBSOCAT_SYN_1_0_100_MD5		:= cddbff9be83065516f12138e8d2d5095
> +WEBSOCAT_SYN_1_0_100_URL		:= https://crates.io/api/v1/crates/syn/1.0.100/download
> +WEBSOCAT_SYN_1_0_100_SOURCE	:= $(SRCDIR)/syn-1.0.100.crate
> +$(WEBSOCAT_SYN_1_0_100_SOURCE)	:= WEBSOCAT_SYN_1_0_100
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_SYN_1_0_100_SOURCE)
> +
> +WEBSOCAT_TEMPFILE_3_3_0_MD5		:= f29a1bb1b5f3f29cedb36f40f720d765
> +WEBSOCAT_TEMPFILE_3_3_0_URL		:= https://crates.io/api/v1/crates/tempfile/3.3.0/download
> +WEBSOCAT_TEMPFILE_3_3_0_SOURCE	:= $(SRCDIR)/tempfile-3.3.0.crate
> +$(WEBSOCAT_TEMPFILE_3_3_0_SOURCE)	:= WEBSOCAT_TEMPFILE_3_3_0
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_TEMPFILE_3_3_0_SOURCE)
> +
> +WEBSOCAT_TEXTWRAP_0_11_0_MD5		:= a8de006fe0c7e373c560dd51599287a8
> +WEBSOCAT_TEXTWRAP_0_11_0_URL		:= https://crates.io/api/v1/crates/textwrap/0.11.0/download
> +WEBSOCAT_TEXTWRAP_0_11_0_SOURCE	:= $(SRCDIR)/textwrap-0.11.0.crate
> +$(WEBSOCAT_TEXTWRAP_0_11_0_SOURCE)	:= WEBSOCAT_TEXTWRAP_0_11_0
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_TEXTWRAP_0_11_0_SOURCE)
> +
> +WEBSOCAT_THISERROR_1_0_35_MD5		:= 3386986ecf2cfe5e6d210db1d2e9d9ea
> +WEBSOCAT_THISERROR_1_0_35_URL		:= https://crates.io/api/v1/crates/thiserror/1.0.35/download
> +WEBSOCAT_THISERROR_1_0_35_SOURCE	:= $(SRCDIR)/thiserror-1.0.35.crate
> +$(WEBSOCAT_THISERROR_1_0_35_SOURCE)	:= WEBSOCAT_THISERROR_1_0_35
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_THISERROR_1_0_35_SOURCE)
> +
> +WEBSOCAT_THISERROR_IMPL_1_0_35_MD5		:= 850a2dd55b65666097104c1ed76b6c53
> +WEBSOCAT_THISERROR_IMPL_1_0_35_URL		:= https://crates.io/api/v1/crates/thiserror-impl/1.0.35/download
> +WEBSOCAT_THISERROR_IMPL_1_0_35_SOURCE	:= $(SRCDIR)/thiserror-impl-1.0.35.crate
> +$(WEBSOCAT_THISERROR_IMPL_1_0_35_SOURCE)	:= WEBSOCAT_THISERROR_IMPL_1_0_35
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_THISERROR_IMPL_1_0_35_SOURCE)
> +
> +WEBSOCAT_TIME_0_1_44_MD5		:= c6c50e4feea5f4cc4e1fb3c7e88606a5
> +WEBSOCAT_TIME_0_1_44_URL		:= https://crates.io/api/v1/crates/time/0.1.44/download
> +WEBSOCAT_TIME_0_1_44_SOURCE	:= $(SRCDIR)/time-0.1.44.crate
> +$(WEBSOCAT_TIME_0_1_44_SOURCE)	:= WEBSOCAT_TIME_0_1_44
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_TIME_0_1_44_SOURCE)
> +
> +WEBSOCAT_TINYVEC_1_6_0_MD5		:= 5f0470696baaa4e5953bddbf196998f9
> +WEBSOCAT_TINYVEC_1_6_0_URL		:= https://crates.io/api/v1/crates/tinyvec/1.6.0/download
> +WEBSOCAT_TINYVEC_1_6_0_SOURCE	:= $(SRCDIR)/tinyvec-1.6.0.crate
> +$(WEBSOCAT_TINYVEC_1_6_0_SOURCE)	:= WEBSOCAT_TINYVEC_1_6_0
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_TINYVEC_1_6_0_SOURCE)
> +
> +WEBSOCAT_TINYVEC_MACROS_0_1_0_MD5		:= 7bfcad253aff26bc26c5e3521f3ba891
> +WEBSOCAT_TINYVEC_MACROS_0_1_0_URL		:= https://crates.io/api/v1/crates/tinyvec_macros/0.1.0/download
> +WEBSOCAT_TINYVEC_MACROS_0_1_0_SOURCE	:= $(SRCDIR)/tinyvec_macros-0.1.0.crate
> +$(WEBSOCAT_TINYVEC_MACROS_0_1_0_SOURCE)	:= WEBSOCAT_TINYVEC_MACROS_0_1_0
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_TINYVEC_MACROS_0_1_0_SOURCE)
> +
> +WEBSOCAT_TK_LISTEN_0_2_1_MD5		:= c853f885486f785b964849c7a76fec78
> +WEBSOCAT_TK_LISTEN_0_2_1_URL		:= https://crates.io/api/v1/crates/tk-listen/0.2.1/download
> +WEBSOCAT_TK_LISTEN_0_2_1_SOURCE	:= $(SRCDIR)/tk-listen-0.2.1.crate
> +$(WEBSOCAT_TK_LISTEN_0_2_1_SOURCE)	:= WEBSOCAT_TK_LISTEN_0_2_1
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_TK_LISTEN_0_2_1_SOURCE)
> +
> +WEBSOCAT_TOKIO_0_1_22_MD5		:= b521ad2ed1e1ac7384af8ca3faa2967e
> +WEBSOCAT_TOKIO_0_1_22_URL		:= https://crates.io/api/v1/crates/tokio/0.1.22/download
> +WEBSOCAT_TOKIO_0_1_22_SOURCE	:= $(SRCDIR)/tokio-0.1.22.crate
> +$(WEBSOCAT_TOKIO_0_1_22_SOURCE)	:= WEBSOCAT_TOKIO_0_1_22
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_TOKIO_0_1_22_SOURCE)
> +
> +WEBSOCAT_TOKIO_CODEC_0_1_2_MD5		:= 81550da6fbe0dd33fec098a811476df6
> +WEBSOCAT_TOKIO_CODEC_0_1_2_URL		:= https://crates.io/api/v1/crates/tokio-codec/0.1.2/download
> +WEBSOCAT_TOKIO_CODEC_0_1_2_SOURCE	:= $(SRCDIR)/tokio-codec-0.1.2.crate
> +$(WEBSOCAT_TOKIO_CODEC_0_1_2_SOURCE)	:= WEBSOCAT_TOKIO_CODEC_0_1_2
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_TOKIO_CODEC_0_1_2_SOURCE)
> +
> +WEBSOCAT_TOKIO_CURRENT_THREAD_0_1_7_MD5		:= ea62c780602b6ee7f9698b6cb7c7ca75
> +WEBSOCAT_TOKIO_CURRENT_THREAD_0_1_7_URL		:= https://crates.io/api/v1/crates/tokio-current-thread/0.1.7/download
> +WEBSOCAT_TOKIO_CURRENT_THREAD_0_1_7_SOURCE	:= $(SRCDIR)/tokio-current-thread-0.1.7.crate
> +$(WEBSOCAT_TOKIO_CURRENT_THREAD_0_1_7_SOURCE)	:= WEBSOCAT_TOKIO_CURRENT_THREAD_0_1_7
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_TOKIO_CURRENT_THREAD_0_1_7_SOURCE)
> +
> +WEBSOCAT_TOKIO_EXECUTOR_0_1_10_MD5		:= 231140a3fc27d3743bdf5709a11bf330
> +WEBSOCAT_TOKIO_EXECUTOR_0_1_10_URL		:= https://crates.io/api/v1/crates/tokio-executor/0.1.10/download
> +WEBSOCAT_TOKIO_EXECUTOR_0_1_10_SOURCE	:= $(SRCDIR)/tokio-executor-0.1.10.crate
> +$(WEBSOCAT_TOKIO_EXECUTOR_0_1_10_SOURCE)	:= WEBSOCAT_TOKIO_EXECUTOR_0_1_10
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_TOKIO_EXECUTOR_0_1_10_SOURCE)
> +
> +WEBSOCAT_TOKIO_FILE_UNIX_0_5_1_MD5		:= 79994a1b66afcdec629d487e66cb06a9
> +WEBSOCAT_TOKIO_FILE_UNIX_0_5_1_URL		:= https://crates.io/api/v1/crates/tokio-file-unix/0.5.1/download
> +WEBSOCAT_TOKIO_FILE_UNIX_0_5_1_SOURCE	:= $(SRCDIR)/tokio-file-unix-0.5.1.crate
> +$(WEBSOCAT_TOKIO_FILE_UNIX_0_5_1_SOURCE)	:= WEBSOCAT_TOKIO_FILE_UNIX_0_5_1
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_TOKIO_FILE_UNIX_0_5_1_SOURCE)
> +
> +WEBSOCAT_TOKIO_FS_0_1_7_MD5		:= bf4481a8e4e42049b7540dd1ef478efd
> +WEBSOCAT_TOKIO_FS_0_1_7_URL		:= https://crates.io/api/v1/crates/tokio-fs/0.1.7/download
> +WEBSOCAT_TOKIO_FS_0_1_7_SOURCE	:= $(SRCDIR)/tokio-fs-0.1.7.crate
> +$(WEBSOCAT_TOKIO_FS_0_1_7_SOURCE)	:= WEBSOCAT_TOKIO_FS_0_1_7
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_TOKIO_FS_0_1_7_SOURCE)
> +
> +WEBSOCAT_TOKIO_IO_0_1_13_MD5		:= 533cca06f326430afa78a186b0d9833c
> +WEBSOCAT_TOKIO_IO_0_1_13_URL		:= https://crates.io/api/v1/crates/tokio-io/0.1.13/download
> +WEBSOCAT_TOKIO_IO_0_1_13_SOURCE	:= $(SRCDIR)/tokio-io-0.1.13.crate
> +$(WEBSOCAT_TOKIO_IO_0_1_13_SOURCE)	:= WEBSOCAT_TOKIO_IO_0_1_13
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_TOKIO_IO_0_1_13_SOURCE)
> +
> +WEBSOCAT_TOKIO_NAMED_PIPES_0_1_0_MD5		:= 030e252ec9eea53de036414ef6580637
> +WEBSOCAT_TOKIO_NAMED_PIPES_0_1_0_URL		:= https://crates.io/api/v1/crates/tokio-named-pipes/0.1.0/download
> +WEBSOCAT_TOKIO_NAMED_PIPES_0_1_0_SOURCE	:= $(SRCDIR)/tokio-named-pipes-0.1.0.crate
> +$(WEBSOCAT_TOKIO_NAMED_PIPES_0_1_0_SOURCE)	:= WEBSOCAT_TOKIO_NAMED_PIPES_0_1_0
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_TOKIO_NAMED_PIPES_0_1_0_SOURCE)
> +
> +WEBSOCAT_TOKIO_PROCESS_0_2_5_MD5		:= b6d0910d4987701952a79b0ba0b8a9a9
> +WEBSOCAT_TOKIO_PROCESS_0_2_5_URL		:= https://crates.io/api/v1/crates/tokio-process/0.2.5/download
> +WEBSOCAT_TOKIO_PROCESS_0_2_5_SOURCE	:= $(SRCDIR)/tokio-process-0.2.5.crate
> +$(WEBSOCAT_TOKIO_PROCESS_0_2_5_SOURCE)	:= WEBSOCAT_TOKIO_PROCESS_0_2_5
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_TOKIO_PROCESS_0_2_5_SOURCE)
> +
> +WEBSOCAT_TOKIO_REACTOR_0_1_12_MD5		:= 9fa6cdac7b44df7983891dc0fb87fd83
> +WEBSOCAT_TOKIO_REACTOR_0_1_12_URL		:= https://crates.io/api/v1/crates/tokio-reactor/0.1.12/download
> +WEBSOCAT_TOKIO_REACTOR_0_1_12_SOURCE	:= $(SRCDIR)/tokio-reactor-0.1.12.crate
> +$(WEBSOCAT_TOKIO_REACTOR_0_1_12_SOURCE)	:= WEBSOCAT_TOKIO_REACTOR_0_1_12
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_TOKIO_REACTOR_0_1_12_SOURCE)
> +
> +WEBSOCAT_TOKIO_SIGNAL_0_2_9_MD5		:= a9d9717d3cb72393bfb0bfdf8b15db1f
> +WEBSOCAT_TOKIO_SIGNAL_0_2_9_URL		:= https://crates.io/api/v1/crates/tokio-signal/0.2.9/download
> +WEBSOCAT_TOKIO_SIGNAL_0_2_9_SOURCE	:= $(SRCDIR)/tokio-signal-0.2.9.crate
> +$(WEBSOCAT_TOKIO_SIGNAL_0_2_9_SOURCE)	:= WEBSOCAT_TOKIO_SIGNAL_0_2_9
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_TOKIO_SIGNAL_0_2_9_SOURCE)
> +
> +WEBSOCAT_TOKIO_STDIN_STDOUT_0_1_5_MD5		:= 036e8d45b21baa7fbb72656cd5e71ba1
> +WEBSOCAT_TOKIO_STDIN_STDOUT_0_1_5_URL		:= https://crates.io/api/v1/crates/tokio-stdin-stdout/0.1.5/download
> +WEBSOCAT_TOKIO_STDIN_STDOUT_0_1_5_SOURCE	:= $(SRCDIR)/tokio-stdin-stdout-0.1.5.crate
> +$(WEBSOCAT_TOKIO_STDIN_STDOUT_0_1_5_SOURCE)	:= WEBSOCAT_TOKIO_STDIN_STDOUT_0_1_5
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_TOKIO_STDIN_STDOUT_0_1_5_SOURCE)
> +
> +WEBSOCAT_TOKIO_SYNC_0_1_8_MD5		:= aabc9eb293b82123f0223970184601e3
> +WEBSOCAT_TOKIO_SYNC_0_1_8_URL		:= https://crates.io/api/v1/crates/tokio-sync/0.1.8/download
> +WEBSOCAT_TOKIO_SYNC_0_1_8_SOURCE	:= $(SRCDIR)/tokio-sync-0.1.8.crate
> +$(WEBSOCAT_TOKIO_SYNC_0_1_8_SOURCE)	:= WEBSOCAT_TOKIO_SYNC_0_1_8
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_TOKIO_SYNC_0_1_8_SOURCE)
> +
> +WEBSOCAT_TOKIO_TCP_0_1_4_MD5		:= 8a91e95192d3540845b244118b33f591
> +WEBSOCAT_TOKIO_TCP_0_1_4_URL		:= https://crates.io/api/v1/crates/tokio-tcp/0.1.4/download
> +WEBSOCAT_TOKIO_TCP_0_1_4_SOURCE	:= $(SRCDIR)/tokio-tcp-0.1.4.crate
> +$(WEBSOCAT_TOKIO_TCP_0_1_4_SOURCE)	:= WEBSOCAT_TOKIO_TCP_0_1_4
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_TOKIO_TCP_0_1_4_SOURCE)
> +
> +WEBSOCAT_TOKIO_THREADPOOL_0_1_18_MD5		:= 309b8c8a38a188c3c878ab31f7b5008e
> +WEBSOCAT_TOKIO_THREADPOOL_0_1_18_URL		:= https://crates.io/api/v1/crates/tokio-threadpool/0.1.18/download
> +WEBSOCAT_TOKIO_THREADPOOL_0_1_18_SOURCE	:= $(SRCDIR)/tokio-threadpool-0.1.18.crate
> +$(WEBSOCAT_TOKIO_THREADPOOL_0_1_18_SOURCE)	:= WEBSOCAT_TOKIO_THREADPOOL_0_1_18
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_TOKIO_THREADPOOL_0_1_18_SOURCE)
> +
> +WEBSOCAT_TOKIO_TIMER_0_2_13_MD5		:= 122f7f583ffc6ee551eb0259bf5340aa
> +WEBSOCAT_TOKIO_TIMER_0_2_13_URL		:= https://crates.io/api/v1/crates/tokio-timer/0.2.13/download
> +WEBSOCAT_TOKIO_TIMER_0_2_13_SOURCE	:= $(SRCDIR)/tokio-timer-0.2.13.crate
> +$(WEBSOCAT_TOKIO_TIMER_0_2_13_SOURCE)	:= WEBSOCAT_TOKIO_TIMER_0_2_13
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_TOKIO_TIMER_0_2_13_SOURCE)
> +
> +WEBSOCAT_TOKIO_TLS_0_2_1_MD5		:= 93b0a3f6f09adde608f98ac4dd3e2dc6
> +WEBSOCAT_TOKIO_TLS_0_2_1_URL		:= https://crates.io/api/v1/crates/tokio-tls/0.2.1/download
> +WEBSOCAT_TOKIO_TLS_0_2_1_SOURCE	:= $(SRCDIR)/tokio-tls-0.2.1.crate
> +$(WEBSOCAT_TOKIO_TLS_0_2_1_SOURCE)	:= WEBSOCAT_TOKIO_TLS_0_2_1
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_TOKIO_TLS_0_2_1_SOURCE)
> +
> +WEBSOCAT_TOKIO_UDP_0_1_6_MD5		:= 58771e80a94984d9b0846dd621d49203
> +WEBSOCAT_TOKIO_UDP_0_1_6_URL		:= https://crates.io/api/v1/crates/tokio-udp/0.1.6/download
> +WEBSOCAT_TOKIO_UDP_0_1_6_SOURCE	:= $(SRCDIR)/tokio-udp-0.1.6.crate
> +$(WEBSOCAT_TOKIO_UDP_0_1_6_SOURCE)	:= WEBSOCAT_TOKIO_UDP_0_1_6
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_TOKIO_UDP_0_1_6_SOURCE)
> +
> +WEBSOCAT_TOKIO_UDS_0_2_7_MD5		:= a09a9df0d8c8963982c2ddc4c7db26f7
> +WEBSOCAT_TOKIO_UDS_0_2_7_URL		:= https://crates.io/api/v1/crates/tokio-uds/0.2.7/download
> +WEBSOCAT_TOKIO_UDS_0_2_7_SOURCE	:= $(SRCDIR)/tokio-uds-0.2.7.crate
> +$(WEBSOCAT_TOKIO_UDS_0_2_7_SOURCE)	:= WEBSOCAT_TOKIO_UDS_0_2_7
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_TOKIO_UDS_0_2_7_SOURCE)
> +
> +WEBSOCAT_TRAITOBJECT_0_1_0_MD5		:= 8a46d349db9c086cac033bcbe44a4e8c
> +WEBSOCAT_TRAITOBJECT_0_1_0_URL		:= https://crates.io/api/v1/crates/traitobject/0.1.0/download
> +WEBSOCAT_TRAITOBJECT_0_1_0_SOURCE	:= $(SRCDIR)/traitobject-0.1.0.crate
> +$(WEBSOCAT_TRAITOBJECT_0_1_0_SOURCE)	:= WEBSOCAT_TRAITOBJECT_0_1_0
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_TRAITOBJECT_0_1_0_SOURCE)
> +
> +WEBSOCAT_TYPEABLE_0_1_2_MD5		:= 389c8d5d19fa97981c8fff9416541391
> +WEBSOCAT_TYPEABLE_0_1_2_URL		:= https://crates.io/api/v1/crates/typeable/0.1.2/download
> +WEBSOCAT_TYPEABLE_0_1_2_SOURCE	:= $(SRCDIR)/typeable-0.1.2.crate
> +$(WEBSOCAT_TYPEABLE_0_1_2_SOURCE)	:= WEBSOCAT_TYPEABLE_0_1_2
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_TYPEABLE_0_1_2_SOURCE)
> +
> +WEBSOCAT_TYPENUM_1_15_0_MD5		:= 7b38b145ae3f6d7d09a1a7a98396f1a2
> +WEBSOCAT_TYPENUM_1_15_0_URL		:= https://crates.io/api/v1/crates/typenum/1.15.0/download
> +WEBSOCAT_TYPENUM_1_15_0_SOURCE	:= $(SRCDIR)/typenum-1.15.0.crate
> +$(WEBSOCAT_TYPENUM_1_15_0_SOURCE)	:= WEBSOCAT_TYPENUM_1_15_0
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_TYPENUM_1_15_0_SOURCE)
> +
> +WEBSOCAT_UNICASE_1_4_2_MD5		:= f316454c1928e03f6459d7eac04d2168
> +WEBSOCAT_UNICASE_1_4_2_URL		:= https://crates.io/api/v1/crates/unicase/1.4.2/download
> +WEBSOCAT_UNICASE_1_4_2_SOURCE	:= $(SRCDIR)/unicase-1.4.2.crate
> +$(WEBSOCAT_UNICASE_1_4_2_SOURCE)	:= WEBSOCAT_UNICASE_1_4_2
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_UNICASE_1_4_2_SOURCE)
> +
> +WEBSOCAT_UNICODE_BIDI_0_3_8_MD5		:= bd0cd532c61dac2087ecd7e0fef0d011
> +WEBSOCAT_UNICODE_BIDI_0_3_8_URL		:= https://crates.io/api/v1/crates/unicode-bidi/0.3.8/download
> +WEBSOCAT_UNICODE_BIDI_0_3_8_SOURCE	:= $(SRCDIR)/unicode-bidi-0.3.8.crate
> +$(WEBSOCAT_UNICODE_BIDI_0_3_8_SOURCE)	:= WEBSOCAT_UNICODE_BIDI_0_3_8
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_UNICODE_BIDI_0_3_8_SOURCE)
> +
> +WEBSOCAT_UNICODE_IDENT_1_0_4_MD5		:= c12056f5fc11f0d69b92b1d1d4799c80
> +WEBSOCAT_UNICODE_IDENT_1_0_4_URL		:= https://crates.io/api/v1/crates/unicode-ident/1.0.4/download
> +WEBSOCAT_UNICODE_IDENT_1_0_4_SOURCE	:= $(SRCDIR)/unicode-ident-1.0.4.crate
> +$(WEBSOCAT_UNICODE_IDENT_1_0_4_SOURCE)	:= WEBSOCAT_UNICODE_IDENT_1_0_4
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_UNICODE_IDENT_1_0_4_SOURCE)
> +
> +WEBSOCAT_UNICODE_NORMALIZATION_0_1_22_MD5		:= c12d182417999fc365f952e701f6071f
> +WEBSOCAT_UNICODE_NORMALIZATION_0_1_22_URL		:= https://crates.io/api/v1/crates/unicode-normalization/0.1.22/download
> +WEBSOCAT_UNICODE_NORMALIZATION_0_1_22_SOURCE	:= $(SRCDIR)/unicode-normalization-0.1.22.crate
> +$(WEBSOCAT_UNICODE_NORMALIZATION_0_1_22_SOURCE)	:= WEBSOCAT_UNICODE_NORMALIZATION_0_1_22
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_UNICODE_NORMALIZATION_0_1_22_SOURCE)
> +
> +WEBSOCAT_UNICODE_SEGMENTATION_1_10_0_MD5		:= 1bee40619dc49044e9691164d7182a2a
> +WEBSOCAT_UNICODE_SEGMENTATION_1_10_0_URL		:= https://crates.io/api/v1/crates/unicode-segmentation/1.10.0/download
> +WEBSOCAT_UNICODE_SEGMENTATION_1_10_0_SOURCE	:= $(SRCDIR)/unicode-segmentation-1.10.0.crate
> +$(WEBSOCAT_UNICODE_SEGMENTATION_1_10_0_SOURCE)	:= WEBSOCAT_UNICODE_SEGMENTATION_1_10_0
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_UNICODE_SEGMENTATION_1_10_0_SOURCE)
> +
> +WEBSOCAT_UNICODE_WIDTH_0_1_10_MD5		:= 7d6d4fc9fad200d6e295f6930e97e022
> +WEBSOCAT_UNICODE_WIDTH_0_1_10_URL		:= https://crates.io/api/v1/crates/unicode-width/0.1.10/download
> +WEBSOCAT_UNICODE_WIDTH_0_1_10_SOURCE	:= $(SRCDIR)/unicode-width-0.1.10.crate
> +$(WEBSOCAT_UNICODE_WIDTH_0_1_10_SOURCE)	:= WEBSOCAT_UNICODE_WIDTH_0_1_10
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_UNICODE_WIDTH_0_1_10_SOURCE)
> +
> +WEBSOCAT_UNICODE_XID_0_1_0_MD5		:= 5aaf04f9a94a6450e3e4963ddd62b92d
> +WEBSOCAT_UNICODE_XID_0_1_0_URL		:= https://crates.io/api/v1/crates/unicode-xid/0.1.0/download
> +WEBSOCAT_UNICODE_XID_0_1_0_SOURCE	:= $(SRCDIR)/unicode-xid-0.1.0.crate
> +$(WEBSOCAT_UNICODE_XID_0_1_0_SOURCE)	:= WEBSOCAT_UNICODE_XID_0_1_0
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_UNICODE_XID_0_1_0_SOURCE)
> +
> +WEBSOCAT_UNIVERSAL_HASH_0_4_1_MD5		:= ea24161ca337ad70c7eb0cd8980b83d4
> +WEBSOCAT_UNIVERSAL_HASH_0_4_1_URL		:= https://crates.io/api/v1/crates/universal-hash/0.4.1/download
> +WEBSOCAT_UNIVERSAL_HASH_0_4_1_SOURCE	:= $(SRCDIR)/universal-hash-0.4.1.crate
> +$(WEBSOCAT_UNIVERSAL_HASH_0_4_1_SOURCE)	:= WEBSOCAT_UNIVERSAL_HASH_0_4_1
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_UNIVERSAL_HASH_0_4_1_SOURCE)
> +
> +WEBSOCAT_URL_1_7_2_MD5		:= 32f0ced8a8881d2c0572b879bf15b91e
> +WEBSOCAT_URL_1_7_2_URL		:= https://crates.io/api/v1/crates/url/1.7.2/download
> +WEBSOCAT_URL_1_7_2_SOURCE	:= $(SRCDIR)/url-1.7.2.crate
> +$(WEBSOCAT_URL_1_7_2_SOURCE)	:= WEBSOCAT_URL_1_7_2
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_URL_1_7_2_SOURCE)
> +
> +WEBSOCAT_VCPKG_0_2_15_MD5		:= e900a384ac7dbb320fe6a7279fbfef89
> +WEBSOCAT_VCPKG_0_2_15_URL		:= https://crates.io/api/v1/crates/vcpkg/0.2.15/download
> +WEBSOCAT_VCPKG_0_2_15_SOURCE	:= $(SRCDIR)/vcpkg-0.2.15.crate
> +$(WEBSOCAT_VCPKG_0_2_15_SOURCE)	:= WEBSOCAT_VCPKG_0_2_15
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_VCPKG_0_2_15_SOURCE)
> +
> +WEBSOCAT_VERSION_CHECK_0_1_5_MD5		:= f48add3d6234e8b9829fa5364509f425
> +WEBSOCAT_VERSION_CHECK_0_1_5_URL		:= https://crates.io/api/v1/crates/version_check/0.1.5/download
> +WEBSOCAT_VERSION_CHECK_0_1_5_SOURCE	:= $(SRCDIR)/version_check-0.1.5.crate
> +$(WEBSOCAT_VERSION_CHECK_0_1_5_SOURCE)	:= WEBSOCAT_VERSION_CHECK_0_1_5
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_VERSION_CHECK_0_1_5_SOURCE)
> +
> +WEBSOCAT_VERSION_CHECK_0_9_4_MD5		:= d18d362345c4fe512ef67b738b239fb8
> +WEBSOCAT_VERSION_CHECK_0_9_4_URL		:= https://crates.io/api/v1/crates/version_check/0.9.4/download
> +WEBSOCAT_VERSION_CHECK_0_9_4_SOURCE	:= $(SRCDIR)/version_check-0.9.4.crate
> +$(WEBSOCAT_VERSION_CHECK_0_9_4_SOURCE)	:= WEBSOCAT_VERSION_CHECK_0_9_4
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_VERSION_CHECK_0_9_4_SOURCE)
> +
> +WEBSOCAT_WASI_0_10_0_WASI_SNAPSHOT_PREVIEW1_MD5		:= a312b55a428f827a91097d1d8497b02b
> +WEBSOCAT_WASI_0_10_0_WASI_SNAPSHOT_PREVIEW1_URL		:= https://crates.io/api/v1/crates/wasi/0.10.0+wasi-snapshot-preview1/download
> +WEBSOCAT_WASI_0_10_0_WASI_SNAPSHOT_PREVIEW1_SOURCE	:= $(SRCDIR)/wasi-0.10.0+wasi-snapshot-preview1.crate
> +$(WEBSOCAT_WASI_0_10_0_WASI_SNAPSHOT_PREVIEW1_SOURCE)	:= WEBSOCAT_WASI_0_10_0_WASI_SNAPSHOT_PREVIEW1
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_WASI_0_10_0_WASI_SNAPSHOT_PREVIEW1_SOURCE)
> +
> +WEBSOCAT_WASI_0_11_0_WASI_SNAPSHOT_PREVIEW1_MD5		:= e972ea58ec203bfa6c79c1207852298b
> +WEBSOCAT_WASI_0_11_0_WASI_SNAPSHOT_PREVIEW1_URL		:= https://crates.io/api/v1/crates/wasi/0.11.0+wasi-snapshot-preview1/download
> +WEBSOCAT_WASI_0_11_0_WASI_SNAPSHOT_PREVIEW1_SOURCE	:= $(SRCDIR)/wasi-0.11.0+wasi-snapshot-preview1.crate
> +$(WEBSOCAT_WASI_0_11_0_WASI_SNAPSHOT_PREVIEW1_SOURCE)	:= WEBSOCAT_WASI_0_11_0_WASI_SNAPSHOT_PREVIEW1
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_WASI_0_11_0_WASI_SNAPSHOT_PREVIEW1_SOURCE)
> +
> +WEBSOCAT_WEBSOCKET_0_26_5_MD5		:= 5fc12209dee8d7de350a1dd5eb1b54b5
> +WEBSOCAT_WEBSOCKET_0_26_5_URL		:= https://crates.io/api/v1/crates/websocket/0.26.5/download
> +WEBSOCAT_WEBSOCKET_0_26_5_SOURCE	:= $(SRCDIR)/websocket-0.26.5.crate
> +$(WEBSOCAT_WEBSOCKET_0_26_5_SOURCE)	:= WEBSOCAT_WEBSOCKET_0_26_5
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_WEBSOCKET_0_26_5_SOURCE)
> +
> +WEBSOCAT_WEBSOCKET_BASE_0_26_5_MD5		:= 22afd66095bf3c9a8ece5f3f2fb3e52c
> +WEBSOCAT_WEBSOCKET_BASE_0_26_5_URL		:= https://crates.io/api/v1/crates/websocket-base/0.26.5/download
> +WEBSOCAT_WEBSOCKET_BASE_0_26_5_SOURCE	:= $(SRCDIR)/websocket-base-0.26.5.crate
> +$(WEBSOCAT_WEBSOCKET_BASE_0_26_5_SOURCE)	:= WEBSOCAT_WEBSOCKET_BASE_0_26_5
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_WEBSOCKET_BASE_0_26_5_SOURCE)
> +
> +WEBSOCAT_WINAPI_0_2_8_MD5		:= b44489eb4799c4fabac3fceb48de54f7
> +WEBSOCAT_WINAPI_0_2_8_URL		:= https://crates.io/api/v1/crates/winapi/0.2.8/download
> +WEBSOCAT_WINAPI_0_2_8_SOURCE	:= $(SRCDIR)/winapi-0.2.8.crate
> +$(WEBSOCAT_WINAPI_0_2_8_SOURCE)	:= WEBSOCAT_WINAPI_0_2_8
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_WINAPI_0_2_8_SOURCE)
> +
> +WEBSOCAT_WINAPI_0_3_9_MD5		:= 0498c4a11448bfc35dc7bb2caa64c753
> +WEBSOCAT_WINAPI_0_3_9_URL		:= https://crates.io/api/v1/crates/winapi/0.3.9/download
> +WEBSOCAT_WINAPI_0_3_9_SOURCE	:= $(SRCDIR)/winapi-0.3.9.crate
> +$(WEBSOCAT_WINAPI_0_3_9_SOURCE)	:= WEBSOCAT_WINAPI_0_3_9
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_WINAPI_0_3_9_SOURCE)
> +
> +WEBSOCAT_WINAPI_BUILD_0_1_1_MD5		:= c900e7dbce808ff8ced375077b17a163
> +WEBSOCAT_WINAPI_BUILD_0_1_1_URL		:= https://crates.io/api/v1/crates/winapi-build/0.1.1/download
> +WEBSOCAT_WINAPI_BUILD_0_1_1_SOURCE	:= $(SRCDIR)/winapi-build-0.1.1.crate
> +$(WEBSOCAT_WINAPI_BUILD_0_1_1_SOURCE)	:= WEBSOCAT_WINAPI_BUILD_0_1_1
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_WINAPI_BUILD_0_1_1_SOURCE)
> +
> +WEBSOCAT_WINAPI_I686_PC_WINDOWS_GNU_0_4_0_MD5		:= db96b50050277bf05a3c68534bbb9586
> +WEBSOCAT_WINAPI_I686_PC_WINDOWS_GNU_0_4_0_URL		:= https://crates.io/api/v1/crates/winapi-i686-pc-windows-gnu/0.4.0/download
> +WEBSOCAT_WINAPI_I686_PC_WINDOWS_GNU_0_4_0_SOURCE	:= $(SRCDIR)/winapi-i686-pc-windows-gnu-0.4.0.crate
> +$(WEBSOCAT_WINAPI_I686_PC_WINDOWS_GNU_0_4_0_SOURCE)	:= WEBSOCAT_WINAPI_I686_PC_WINDOWS_GNU_0_4_0
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_WINAPI_I686_PC_WINDOWS_GNU_0_4_0_SOURCE)
> +
> +WEBSOCAT_WINAPI_X86_64_PC_WINDOWS_GNU_0_4_0_MD5		:= 09de9d01e7331ff3da11f58be8bef0df
> +WEBSOCAT_WINAPI_X86_64_PC_WINDOWS_GNU_0_4_0_URL		:= https://crates.io/api/v1/crates/winapi-x86_64-pc-windows-gnu/0.4.0/download
> +WEBSOCAT_WINAPI_X86_64_PC_WINDOWS_GNU_0_4_0_SOURCE	:= $(SRCDIR)/winapi-x86_64-pc-windows-gnu-0.4.0.crate
> +$(WEBSOCAT_WINAPI_X86_64_PC_WINDOWS_GNU_0_4_0_SOURCE)	:= WEBSOCAT_WINAPI_X86_64_PC_WINDOWS_GNU_0_4_0
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_WINAPI_X86_64_PC_WINDOWS_GNU_0_4_0_SOURCE)
> +
> +WEBSOCAT_WINDOWS_SYS_0_36_1_MD5		:= b3083009944ab58cbd9c4941f4965545
> +WEBSOCAT_WINDOWS_SYS_0_36_1_URL		:= https://crates.io/api/v1/crates/windows-sys/0.36.1/download
> +WEBSOCAT_WINDOWS_SYS_0_36_1_SOURCE	:= $(SRCDIR)/windows-sys-0.36.1.crate
> +$(WEBSOCAT_WINDOWS_SYS_0_36_1_SOURCE)	:= WEBSOCAT_WINDOWS_SYS_0_36_1
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_WINDOWS_SYS_0_36_1_SOURCE)
> +
> +WEBSOCAT_WINDOWS_AARCH64_MSVC_0_36_1_MD5		:= 776128629d743f0d6127db259a0d8844
> +WEBSOCAT_WINDOWS_AARCH64_MSVC_0_36_1_URL		:= https://crates.io/api/v1/crates/windows_aarch64_msvc/0.36.1/download
> +WEBSOCAT_WINDOWS_AARCH64_MSVC_0_36_1_SOURCE	:= $(SRCDIR)/windows_aarch64_msvc-0.36.1.crate
> +$(WEBSOCAT_WINDOWS_AARCH64_MSVC_0_36_1_SOURCE)	:= WEBSOCAT_WINDOWS_AARCH64_MSVC_0_36_1
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_WINDOWS_AARCH64_MSVC_0_36_1_SOURCE)
> +
> +WEBSOCAT_WINDOWS_I686_GNU_0_36_1_MD5		:= 7f60b76e78bd2a190cf3ddc2b4c4920b
> +WEBSOCAT_WINDOWS_I686_GNU_0_36_1_URL		:= https://crates.io/api/v1/crates/windows_i686_gnu/0.36.1/download
> +WEBSOCAT_WINDOWS_I686_GNU_0_36_1_SOURCE	:= $(SRCDIR)/windows_i686_gnu-0.36.1.crate
> +$(WEBSOCAT_WINDOWS_I686_GNU_0_36_1_SOURCE)	:= WEBSOCAT_WINDOWS_I686_GNU_0_36_1
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_WINDOWS_I686_GNU_0_36_1_SOURCE)
> +
> +WEBSOCAT_WINDOWS_I686_MSVC_0_36_1_MD5		:= ce798410cba61fe713f3487cd6cafef4
> +WEBSOCAT_WINDOWS_I686_MSVC_0_36_1_URL		:= https://crates.io/api/v1/crates/windows_i686_msvc/0.36.1/download
> +WEBSOCAT_WINDOWS_I686_MSVC_0_36_1_SOURCE	:= $(SRCDIR)/windows_i686_msvc-0.36.1.crate
> +$(WEBSOCAT_WINDOWS_I686_MSVC_0_36_1_SOURCE)	:= WEBSOCAT_WINDOWS_I686_MSVC_0_36_1
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_WINDOWS_I686_MSVC_0_36_1_SOURCE)
> +
> +WEBSOCAT_WINDOWS_X86_64_GNU_0_36_1_MD5		:= f55176d04297df9dd5ccae7c748e26c7
> +WEBSOCAT_WINDOWS_X86_64_GNU_0_36_1_URL		:= https://crates.io/api/v1/crates/windows_x86_64_gnu/0.36.1/download
> +WEBSOCAT_WINDOWS_X86_64_GNU_0_36_1_SOURCE	:= $(SRCDIR)/windows_x86_64_gnu-0.36.1.crate
> +$(WEBSOCAT_WINDOWS_X86_64_GNU_0_36_1_SOURCE)	:= WEBSOCAT_WINDOWS_X86_64_GNU_0_36_1
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_WINDOWS_X86_64_GNU_0_36_1_SOURCE)
> +
> +WEBSOCAT_WINDOWS_X86_64_MSVC_0_36_1_MD5		:= 8e285ddee403a9abe62d6fe2bfbb736a
> +WEBSOCAT_WINDOWS_X86_64_MSVC_0_36_1_URL		:= https://crates.io/api/v1/crates/windows_x86_64_msvc/0.36.1/download
> +WEBSOCAT_WINDOWS_X86_64_MSVC_0_36_1_SOURCE	:= $(SRCDIR)/windows_x86_64_msvc-0.36.1.crate
> +$(WEBSOCAT_WINDOWS_X86_64_MSVC_0_36_1_SOURCE)	:= WEBSOCAT_WINDOWS_X86_64_MSVC_0_36_1
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_WINDOWS_X86_64_MSVC_0_36_1_SOURCE)
> +
> +WEBSOCAT_WS2_32_SYS_0_2_1_MD5		:= 38346bab0933c9eb1e36d22fe4220ba7
> +WEBSOCAT_WS2_32_SYS_0_2_1_URL		:= https://crates.io/api/v1/crates/ws2_32-sys/0.2.1/download
> +WEBSOCAT_WS2_32_SYS_0_2_1_SOURCE	:= $(SRCDIR)/ws2_32-sys-0.2.1.crate
> +$(WEBSOCAT_WS2_32_SYS_0_2_1_SOURCE)	:= WEBSOCAT_WS2_32_SYS_0_2_1
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_WS2_32_SYS_0_2_1_SOURCE)
> +
> +WEBSOCAT_ZEROIZE_1_5_7_MD5		:= a72e719c29bea6a044b0ff01cad88cfb
> +WEBSOCAT_ZEROIZE_1_5_7_URL		:= https://crates.io/api/v1/crates/zeroize/1.5.7/download
> +WEBSOCAT_ZEROIZE_1_5_7_SOURCE	:= $(SRCDIR)/zeroize-1.5.7.crate
> +$(WEBSOCAT_ZEROIZE_1_5_7_SOURCE)	:= WEBSOCAT_ZEROIZE_1_5_7
> +WEBSOCAT_SOURCES			+= $(WEBSOCAT_ZEROIZE_1_5_7_SOURCE)
> +
> +
> +# vim: syntax=make
> diff --git a/rules/websocat.in b/rules/websocat.in
> new file mode 100644
> index 0000000..9bc7a5d
> --- /dev/null
> +++ b/rules/websocat.in
> @@ -0,0 +1,8 @@
> +## SECTION=networking
> +
> +config WEBSOCAT
> +	tristate
> +	prompt "websocat"
> +	select OPENSSL
> +	help
> +	  Netcat, curl and socat for WebSockets
> diff --git a/rules/websocat.make b/rules/websocat.make
> new file mode 100644
> index 0000000..e43fada
> --- /dev/null
> +++ b/rules/websocat.make
> @@ -0,0 +1,65 @@
> +# -*-makefile-*-
> +#
> +# Copyright (C) 2023 by Jon Ringle <jringle@gridpoint.com>
> +#
> +# For further information about the PTXdist project and license conditions
> +# see the README file.
> +#
> +
> +#
> +# We provide this package
> +#
> +PACKAGES-$(PTXCONF_WEBSOCAT) += websocat
> +
> +#
> +# Paths and names
> +#
> +WEBSOCAT_VERSION	:= 1.11.0
> +WEBSOCAT_MD5		:= 2a43004dc1c256119089994b5ddb414b
> +WEBSOCAT		:= websocat-$(WEBSOCAT_VERSION)
> +WEBSOCAT_SUFFIX		:= tar.gz
> +WEBSOCAT_URL		:= https://github.com/vi/websocat/archive/refs/tags/v${WEBSOCAT_VERSION}.$(WEBSOCAT_SUFFIX)
> +WEBSOCAT_SOURCE		:= $(SRCDIR)/$(WEBSOCAT).$(WEBSOCAT_SUFFIX)
> +WEBSOCAT_DIR		:= $(BUILDDIR)/$(WEBSOCAT)
> +WEBSOCAT_LICENSE	:= MIT

Add "AND unknown" here to indicate that the licenses for the rust crates
are missing.

> +WEBSOCAT_LICENSE_FILES	:= file://LICENSE;md5=b0249af598633524d7f0cb5b558c832c
> +
> +WEBSOCAT_CONF_TOOL	:= cargo
> +WEBSOCAT_CONF_OPT	:= \
> +	$(CROSS_CARGO_OPT) \
> +	--features=ssl
> +
> +WEBSOCAT_MAKE_ENV	:= \
> +	$(CROSS_CARGO_ENV) \
> +	PKG_CONFIG_SYSROOT_DIR=/. \
> +
> +WEBSOCAT_TOOLS := \
> +	websocat
> +
> +$(STATEDIR)/websocat.install:
> +	@$(call targetinfo)
> +	@$(call world/execute, WEBSOCAT, \
> +		install -v -m755 -t $(WEBSOCAT_PKGDIR)/bin \
> +		$(addprefix $(WEBSOCAT_DIR)/target/$(PTXCONF_GNU_TARGET)/release/, $(WEBSOCAT_TOOLS)))

Do you expect that more tools will be added? If not, then just put websocat
here directly without the addprefix.

Michael

> +	@$(call touch)
> +
> +# ----------------------------------------------------------------------------
> +# Target-Install
> +# ----------------------------------------------------------------------------
> +
> +$(STATEDIR)/websocat.targetinstall:
> +	@$(call targetinfo)
> +
> +	@$(call install_init, websocat)
> +	@$(call install_fixup, websocat, PRIORITY, optional)
> +	@$(call install_fixup, websocat, SECTION, base)
> +	@$(call install_fixup, websocat, AUTHOR, "Jon Ringle <jringle@gridpoint.com>")
> +	@$(call install_fixup, websocat, DESCRIPTION, missing)
> +
> +	@$(call install_copy, websocat, 0, 0, 0755, -, /bin/websocat)
> +
> +	@$(call install_finish, websocat)
> +
> +	@$(call touch)
> +
> +# vim: syntax=make
> -- 
> 2.25.1
> 
> 
> 

-- 
Pengutronix e.K.                           |                             |
Steuerwalder Str. 21                       | http://www.pengutronix.de/  |
31137 Hildesheim, Germany                  | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |



^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2023-08-09  6:01 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-08-08 12:39 [ptxdist] [PATCH] websocat: new package jonringle
2023-08-09  6:00 ` Michael Olbrich

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox