diff options
| author | Czarek Nakamoto <cyjan@mrcyjanek.net> | 2024-10-31 13:11:01 +0000 |
|---|---|---|
| committer | Czarek Nakamoto <cyjan@mrcyjanek.net> | 2024-10-31 13:11:01 +0000 |
| commit | dfc7c5eea0bed2f4dc7a8cabfb33ad49370cd3a1 (patch) | |
| tree | 9706ca4b29798280a6c4ba8118f0d2cf91f17628 /patches/zano | |
| parent | 1d8e0fb30b53c28756f23676d5a3e1a99a9b3051 (diff) | |
initial zano commit
Diffstat (limited to 'patches/zano')
| -rw-r--r-- | patches/zano/0001-added-monero-s-contirb-depends-system.patch | 13600 | ||||
| -rw-r--r-- | patches/zano/0002-add-missing-include.patch | 64 |
2 files changed, 13664 insertions, 0 deletions
diff --git a/patches/zano/0001-added-monero-s-contirb-depends-system.patch b/patches/zano/0001-added-monero-s-contirb-depends-system.patch new file mode 100644 index 0000000..d1fa781 --- /dev/null +++ b/patches/zano/0001-added-monero-s-contirb-depends-system.patch @@ -0,0 +1,13600 @@ +From c6914299688d535e567ba985c05d4cafc7f99e16 Mon Sep 17 00:00:00 2001 +From: Czarek Nakamoto <cyjan@mrcyjanek.net> +Date: Thu, 31 Oct 2024 13:06:52 +0000 +Subject: [PATCH 1/2] added monero's contirb/depends system + +--- + contrib/depends/.gitignore | 10 + + contrib/depends/Makefile | 229 + + contrib/depends/README.md | 74 + + contrib/depends/builders/darwin.mk | 22 + + contrib/depends/builders/default.mk | 20 + + contrib/depends/builders/linux.mk | 2 + + contrib/depends/config.guess | 1466 ++++ + contrib/depends/config.site.in | 66 + + contrib/depends/config.sub | 1836 +++++ + contrib/depends/description.md | 53 + + contrib/depends/funcs.mk | 270 + + contrib/depends/hosts/android.mk | 22 + + contrib/depends/hosts/darwin.mk | 23 + + contrib/depends/hosts/default.mk | 26 + + contrib/depends/hosts/freebsd.mk | 18 + + contrib/depends/hosts/linux.mk | 32 + + contrib/depends/hosts/mingw32.mk | 11 + + contrib/depends/packages.md | 165 + + contrib/depends/packages/android_ndk.mk | 24 + + contrib/depends/packages/boost.mk | 49 + + contrib/depends/packages/darwin_sdk.mk | 10 + + contrib/depends/packages/eudev.mk | 30 + + contrib/depends/packages/expat.mk | 28 + + contrib/depends/packages/freebsd_base.mk | 23 + + contrib/depends/packages/graphviz.mk | 30 + + contrib/depends/packages/gtest.mk | 39 + + contrib/depends/packages/hidapi.mk | 38 + + contrib/depends/packages/icu4c.mk | 27 + + contrib/depends/packages/libICE.mk | 23 + + contrib/depends/packages/libSM.mk | 23 + + contrib/depends/packages/libiconv.mk | 35 + + contrib/depends/packages/libusb.mk | 39 + + contrib/depends/packages/native_biplist.mk | 20 + + contrib/depends/packages/native_ccache.mk | 25 + + contrib/depends/packages/native_cctools.mk | 28 + + contrib/depends/packages/native_cdrkit.mk | 26 + + contrib/depends/packages/native_clang.mk | 29 + + .../depends/packages/native_cmake-unused.mk | 23 + + contrib/depends/packages/native_ds_store.mk | 17 + + .../depends/packages/native_libdmg-hfsplus.mk | 22 + + contrib/depends/packages/native_libtapi.mk | 28 + + contrib/depends/packages/native_mac_alias.mk | 21 + + contrib/depends/packages/native_protobuf.mk | 27 + + contrib/depends/packages/ncurses.mk | 63 + + contrib/depends/packages/openssl.mk | 68 + + contrib/depends/packages/packages.mk | 38 + + contrib/depends/packages/polyseed.mk | 28 + + contrib/depends/packages/protobuf.mk | 36 + + contrib/depends/packages/readline.mk | 29 + + contrib/depends/packages/sodium.mk | 34 + + contrib/depends/packages/unbound.mk | 36 + + contrib/depends/packages/unwind.mk | 29 + + contrib/depends/packages/xproto.mk | 21 + + contrib/depends/packages/zeromq.mk | 35 + + .../depends/patches/boost/fix_arm_arch.patch | 11 + + .../depends/patches/boost/fix_aroptions.patch | 28 + + .../depends/patches/boost/fix_pthread.patch | 14 + + .../patches/boost/fix_pthread_win.patch | 14 + + .../depends/patches/cmake/cmake-1-fixes.patch | 67 + + .../patches/hidapi/missing_win_include.patch | 21 + + ...-001-dont-build-static-dynamic-twice.patch | 37 + + .../patches/libiconv/fix-whitespace.patch | 13 + + .../patches/native_biplist/sorted_list.patch | 29 + + .../native_cdrkit/cdrkit-deterministic.patch | 86 + + .../patches/native_mac_alias/python3.patch | 72 + + contrib/depends/patches/ncurses/fallback.c | 6621 +++++++++++++++++ + .../polyseed/0001-disable-soname.patch | 48 + + .../patches/polyseed/force-static-mingw.patch | 23 + + .../depends/patches/protobuf/visibility.patch | 159 + + .../disable-glibc-getrandom-getentropy.patch | 25 + + .../patches/sodium/fix-whitespace.patch | 13 + + .../unbound/disable-glibc-reallocarray.patch | 14 + + .../patches/unwind/fix_obj_order.patch | 11 + + ...a27b04c5822cb88a69677382a0f053367143.patch | 22 + + contrib/depends/protobuf.mk | 29 + + contrib/depends/toolchain.cmake.in | 176 + + 76 files changed, 12979 insertions(+) + create mode 100644 contrib/depends/.gitignore + create mode 100644 contrib/depends/Makefile + create mode 100644 contrib/depends/README.md + create mode 100644 contrib/depends/builders/darwin.mk + create mode 100644 contrib/depends/builders/default.mk + create mode 100644 contrib/depends/builders/linux.mk + create mode 100755 contrib/depends/config.guess + create mode 100644 contrib/depends/config.site.in + create mode 100755 contrib/depends/config.sub + create mode 100644 contrib/depends/description.md + create mode 100644 contrib/depends/funcs.mk + create mode 100644 contrib/depends/hosts/android.mk + create mode 100644 contrib/depends/hosts/darwin.mk + create mode 100644 contrib/depends/hosts/default.mk + create mode 100644 contrib/depends/hosts/freebsd.mk + create mode 100644 contrib/depends/hosts/linux.mk + create mode 100644 contrib/depends/hosts/mingw32.mk + create mode 100644 contrib/depends/packages.md + create mode 100644 contrib/depends/packages/android_ndk.mk + create mode 100644 contrib/depends/packages/boost.mk + create mode 100644 contrib/depends/packages/darwin_sdk.mk + create mode 100644 contrib/depends/packages/eudev.mk + create mode 100644 contrib/depends/packages/expat.mk + create mode 100644 contrib/depends/packages/freebsd_base.mk + create mode 100644 contrib/depends/packages/graphviz.mk + create mode 100644 contrib/depends/packages/gtest.mk + create mode 100644 contrib/depends/packages/hidapi.mk + create mode 100644 contrib/depends/packages/icu4c.mk + create mode 100644 contrib/depends/packages/libICE.mk + create mode 100644 contrib/depends/packages/libSM.mk + create mode 100644 contrib/depends/packages/libiconv.mk + create mode 100644 contrib/depends/packages/libusb.mk + create mode 100644 contrib/depends/packages/native_biplist.mk + create mode 100644 contrib/depends/packages/native_ccache.mk + create mode 100644 contrib/depends/packages/native_cctools.mk + create mode 100644 contrib/depends/packages/native_cdrkit.mk + create mode 100644 contrib/depends/packages/native_clang.mk + create mode 100644 contrib/depends/packages/native_cmake-unused.mk + create mode 100644 contrib/depends/packages/native_ds_store.mk + create mode 100644 contrib/depends/packages/native_libdmg-hfsplus.mk + create mode 100644 contrib/depends/packages/native_libtapi.mk + create mode 100644 contrib/depends/packages/native_mac_alias.mk + create mode 100644 contrib/depends/packages/native_protobuf.mk + create mode 100644 contrib/depends/packages/ncurses.mk + create mode 100644 contrib/depends/packages/openssl.mk + create mode 100644 contrib/depends/packages/packages.mk + create mode 100644 contrib/depends/packages/polyseed.mk + create mode 100644 contrib/depends/packages/protobuf.mk + create mode 100644 contrib/depends/packages/readline.mk + create mode 100644 contrib/depends/packages/sodium.mk + create mode 100644 contrib/depends/packages/unbound.mk + create mode 100644 contrib/depends/packages/unwind.mk + create mode 100644 contrib/depends/packages/xproto.mk + create mode 100644 contrib/depends/packages/zeromq.mk + create mode 100644 contrib/depends/patches/boost/fix_arm_arch.patch + create mode 100644 contrib/depends/patches/boost/fix_aroptions.patch + create mode 100644 contrib/depends/patches/boost/fix_pthread.patch + create mode 100644 contrib/depends/patches/boost/fix_pthread_win.patch + create mode 100644 contrib/depends/patches/cmake/cmake-1-fixes.patch + create mode 100644 contrib/depends/patches/hidapi/missing_win_include.patch + create mode 100644 contrib/depends/patches/icu4c/icu-001-dont-build-static-dynamic-twice.patch + create mode 100644 contrib/depends/patches/libiconv/fix-whitespace.patch + create mode 100644 contrib/depends/patches/native_biplist/sorted_list.patch + create mode 100644 contrib/depends/patches/native_cdrkit/cdrkit-deterministic.patch + create mode 100644 contrib/depends/patches/native_mac_alias/python3.patch + create mode 100644 contrib/depends/patches/ncurses/fallback.c + create mode 100644 contrib/depends/patches/polyseed/0001-disable-soname.patch + create mode 100644 contrib/depends/patches/polyseed/force-static-mingw.patch + create mode 100644 contrib/depends/patches/protobuf/visibility.patch + create mode 100644 contrib/depends/patches/sodium/disable-glibc-getrandom-getentropy.patch + create mode 100644 contrib/depends/patches/sodium/fix-whitespace.patch + create mode 100644 contrib/depends/patches/unbound/disable-glibc-reallocarray.patch + create mode 100644 contrib/depends/patches/unwind/fix_obj_order.patch + create mode 100644 contrib/depends/patches/zeromq/06aba27b04c5822cb88a69677382a0f053367143.patch + create mode 100644 contrib/depends/protobuf.mk + create mode 100644 contrib/depends/toolchain.cmake.in + +diff --git a/contrib/depends/.gitignore b/contrib/depends/.gitignore +new file mode 100644 +index 00000000..3cb4b9ac +--- /dev/null ++++ b/contrib/depends/.gitignore +@@ -0,0 +1,10 @@ ++SDKs/ ++work/ ++built/ ++sources/ ++config.site ++x86_64* ++i686* ++mips* ++arm* ++aarch64* +diff --git a/contrib/depends/Makefile b/contrib/depends/Makefile +new file mode 100644 +index 00000000..479b2e1c +--- /dev/null ++++ b/contrib/depends/Makefile +@@ -0,0 +1,229 @@ ++.NOTPARALLEL : ++ ++SOURCES_PATH ?= $(BASEDIR)/sources ++BASE_CACHE ?= $(BASEDIR)/built ++FALLBACK_DOWNLOAD_PATH ?= https://downloads.getmonero.org/depends-sources ++ ++BUILD = $(shell ./config.guess) ++HOST ?= $(BUILD) ++PATCHES_PATH = $(BASEDIR)/patches ++BASEDIR = $(CURDIR) ++HASH_LENGTH:=11 ++DOWNLOAD_CONNECT_TIMEOUT:=30 ++DOWNLOAD_RETRIES:=5 ++HOST_ID_SALT ?= salt ++BUILD_ID_SALT ?= salt ++ ++host:=$(BUILD) ++ifneq ($(HOST),) ++host:=$(HOST) ++host_toolchain:=$(HOST)- ++endif ++ ++ifneq ($(DEBUG),) ++release_type=Debug ++else ++release_type=Release ++endif ++ ++ifneq ($(TESTS),) ++build_tests=ON ++release_type=Debug ++else ++build_tests=OFF ++endif ++ ++base_build_dir=$(BASEDIR)/work/build ++base_staging_dir=$(BASEDIR)/work/staging ++base_download_dir=$(BASEDIR)/work/download ++canonical_host:=$(shell ./config.sub $(HOST)) ++build:=$(shell ./config.sub $(BUILD)) ++ ++build_arch =$(firstword $(subst -, ,$(build))) ++build_vendor=$(word 2,$(subst -, ,$(build))) ++full_build_os:=$(subst $(build_arch)-$(build_vendor)-,,$(build)) ++build_os:=$(findstring linux,$(full_build_os)) ++build_os+=$(findstring darwin,$(full_build_os)) ++build_os:=$(strip $(build_os)) ++ifeq ($(build_os),) ++build_os=$(full_build_os) ++endif ++ ++host_arch=$(firstword $(subst -, ,$(canonical_host))) ++host_vendor=$(word 2,$(subst -, ,$(canonical_host))) ++full_host_os:=$(subst $(host_arch)-$(host_vendor)-,,$(canonical_host)) ++host_os:=$(findstring android,$(full_host_os)) ++ifeq ($(host_os),) ++host_os:=$(findstring linux,$(full_host_os)) ++endif ++host_os+=$(findstring darwin,$(full_host_os)) ++host_os+=$(findstring freebsd,$(full_host_os)) ++host_os+=$(findstring mingw32,$(full_host_os)) ++host_os:=$(strip $(host_os)) ++ifeq ($(host_os),) ++host_os=$(full_host_os) ++endif ++ ++$(host_arch)_$(host_os)_prefix=$(BASEDIR)/$(host) ++$(host_arch)_$(host_os)_host=$(host) ++host_prefix=$($(host_arch)_$(host_os)_prefix) ++build_prefix=$(host_prefix)/native ++ifeq ($(host_os),mingw32) ++host_cmake=Windows ++endif ++ifeq ($(host_os),linux) ++host_cmake=Linux ++endif ++ifeq ($(host_os),freebsd) ++host_cmake=FreeBSD ++endif ++ifeq ($(host_os),darwin) ++host_cmake=Darwin ++endif ++ifeq ($(host_os),android) ++host_cmake=Android ++endif ++ ++AT_$(V):= ++AT_:=@ ++AT:=$(AT_$(V)) ++ ++all: install ++ ++include hosts/$(host_os).mk ++include hosts/default.mk ++include builders/$(build_os).mk ++include builders/default.mk ++include packages/packages.mk ++ ++build_id_string:=$(BUILD_ID_SALT) ++build_id_string+=$(shell $(build_CC) --version 2>/dev/null) ++build_id_string+=$(shell $(build_AR) --version 2>/dev/null) ++build_id_string+=$(shell $(build_CXX) --version 2>/dev/null) ++build_id_string+=$(shell $(build_RANLIB) --version 2>/dev/null) ++build_id_string+=$(shell $(build_STRIP) --version 2>/dev/null) ++ ++$(host_arch)_$(host_os)_id_string:=$(HOST_ID_SALT) ++$(host_arch)_$(host_os)_id_string+=$(shell $(host_CC) --version 2>/dev/null) ++$(host_arch)_$(host_os)_id_string+=$(shell $(host_AR) --version 2>/dev/null) ++$(host_arch)_$(host_os)_id_string+=$(shell $(host_CXX) --version 2>/dev/null) ++$(host_arch)_$(host_os)_id_string+=$(shell $(host_RANLIB) --version 2>/dev/null) ++$(host_arch)_$(host_os)_id_string+=$(shell $(host_STRIP) --version 2>/dev/null) ++ ++packages += $($(host_arch)_$(host_os)_packages) $($(host_os)_packages) ++native_packages += $($(host_arch)_$(host_os)_native_packages) $($(host_os)_native_packages) ++ ++all_packages = $(packages) $(native_packages) ++ ++meta_depends = Makefile funcs.mk builders/default.mk hosts/default.mk hosts/$(host_os).mk builders/$(build_os).mk ++ ++$(host_arch)_$(host_os)_native_toolchain?=$($(host_os)_native_toolchain) ++ ++include funcs.mk ++ ++CONF_PKGS := cmake-conf mxe-conf ++ ++build-only-$(1)_$(3): CMAKE_RUNRESULT_FILE = $(PREFIX)/share/cmake/modules/TryRunResults.cmake ++build-only-$(1)_$(3): CMAKE_TOOLCHAIN_FILE = $(PREFIX)/$(3)/share/cmake/mxe-conf.cmake ++build-only-$(1)_$(3): CMAKE_TOOLCHAIN_DIR = $(PREFIX)/$(3)/share/cmake/mxe-conf.d ++build-only-$(1)_$(3): CMAKE_STATIC_BOOL = $(if $(findstring shared,$(3)),OFF,ON) ++build-only-$(1)_$(3): CMAKE_SHARED_BOOL = $(if $(findstring shared,$(3)),ON,OFF) ++ ++ ++toolchain_path=$($($(host_arch)_$(host_os)_native_toolchain)_prefixbin) ++final_build_id_long+=$(shell $(build_SHA256SUM) config.site.in) ++final_build_id_long+=$(shell $(build_SHA256SUM) toolchain.cmake.in) ++final_build_id+=$(shell echo -n "$(final_build_id_long)" | $(build_SHA256SUM) | cut -c-$(HASH_LENGTH)) ++$(host_prefix)/.stamp_$(final_build_id): $(native_packages) $(packages) ++ $(AT)rm -rf $(@D) ++ $(AT)mkdir -p $(@D) ++ $(AT)echo copying packages: $^ ++ $(AT)echo to: $(@D) ++ $(AT)cd $(@D); $(foreach package,$^, tar xf $($(package)_cached); ) ++ $(AT)touch $@ ++ ++$(host_prefix)/share/config.site : config.site.in $(host_prefix)/.stamp_$(final_build_id) ++ $(AT)@mkdir -p $(@D) ++ $(AT)sed -e 's|@HOST@|$(host)|' \ ++ -e 's|@CC@|$(toolchain_path)$(host_CC)|' \ ++ -e 's|@CXX@|$(toolchain_path)$(host_CXX)|' \ ++ -e 's|@AR@|$(toolchain_path)$(host_AR)|' \ ++ -e 's|@RANLIB@|$(toolchain_path)$(host_RANLIB)|' \ ++ -e 's|@NM@|$(toolchain_path)$(host_NM)|' \ ++ -e 's|@STRIP@|$(toolchain_path)$(host_STRIP)|' \ ++ -e 's|@build_os@|$(build_os)|' \ ++ -e 's|@host_os@|$(host_os)|' \ ++ -e 's|@CFLAGS@|$(strip $(host_CFLAGS) $(host_$(release_type)_CFLAGS))|' \ ++ -e 's|@CXXFLAGS@|$(strip $(host_CXXFLAGS) $(host_$(release_type)_CXXFLAGS))|' \ ++ -e 's|@CPPFLAGS@|$(strip $(host_CPPFLAGS) $(host_$(release_type)_CPPFLAGS))|' \ ++ -e 's|@LDFLAGS@|$(strip $(host_LDFLAGS) $(host_$(release_type)_LDFLAGS))|' \ ++ -e 's|@allow_host_packages@|$(ALLOW_HOST_PACKAGES)|' \ ++ -e 's|@debug@|$(DEBUG)|' \ ++ $< > $@ ++ $(AT)touch $@ ++ ++$(host_prefix)/share/toolchain.cmake : toolchain.cmake.in $(host_prefix)/.stamp_$(final_build_id) ++ $(AT)@mkdir -p $(@D) ++ $(AT)sed -e 's|@HOST@|$(host)|' \ ++ -e 's|@CC@|$(toolchain_path)$(host_CC)|' \ ++ -e 's|@CXX@|$(toolchain_path)$(host_CXX)|' \ ++ -e 's|@AR@|$(toolchain_path)$(host_AR)|' \ ++ -e 's|@RANLIB@|$(toolchain_path)$(host_RANLIB)|' \ ++ -e 's|@NM@|$(toolchain_path)$(host_NM)|' \ ++ -e 's|@STRIP@|$(toolchain_path)$(host_STRIP)|' \ ++ -e 's|@build_os@|$(build_os)|' \ ++ -e 's|@host_os@|$(host_os)|' \ ++ -e 's|@CFLAGS@|$(strip $(host_CFLAGS) $(host_$(release_type)_CFLAGS))|' \ ++ -e 's|@CXXFLAGS@|$(strip $(host_CXXFLAGS) $(host_$(release_type)_CXXFLAGS))|' \ ++ -e 's|@CPPFLAGS@|$(strip $(host_CPPFLAGS) $(host_$(release_type)_CPPFLAGS))|' \ ++ -e 's|@LDFLAGS@|$(strip $(host_LDFLAGS) $(host_$(release_type)_LDFLAGS))|' \ ++ -e 's|@allow_host_packages@|$(ALLOW_HOST_PACKAGES)|' \ ++ -e 's|@debug@|$(DEBUG)|' \ ++ -e 's|@release_type@|$(release_type)|' \ ++ -e 's|@build_tests@|$(build_tests)|' \ ++ -e 's|@depends@|$(host_cmake)|' \ ++ -e 's|@prefix@|$($(host_arch)_$(host_os)_prefix)|'\ ++ -e 's|@arch@|$(host_arch)|'\ ++ $< > $@ ++ $(AT)touch $@ ++ ++define check_or_remove_cached ++ mkdir -p $(BASE_CACHE)/$(host)/$(package) && cd $(BASE_CACHE)/$(host)/$(package); \ ++ $(build_SHA256SUM) -c $($(package)_cached_checksum) >/dev/null 2>/dev/null || \ ++ ( rm -f $($(package)_cached_checksum); \ ++ if test -f "$($(package)_cached)"; then echo "Checksum mismatch for $(package). Forcing rebuild.."; rm -f $($(package)_cached_checksum) $($(package)_cached); fi ) ++endef ++ ++define check_or_remove_sources ++ mkdir -p $($(package)_source_dir); cd $($(package)_source_dir); \ ++ test -f $($(package)_fetched) && ( $(build_SHA256SUM) -c $($(package)_fetched) >/dev/null 2>/dev/null || \ ++ ( echo "Checksum missing or mismatched for $(package) source. Forcing re-download."; \ ++ rm -f $($(package)_all_sources) $($(1)_fetched))) || true ++endef ++ ++check-packages: ++ @$(foreach package,$(all_packages),$(call check_or_remove_cached,$(package));) ++check-sources: ++ @$(foreach package,$(all_packages),$(call check_or_remove_sources,$(package));) ++ ++$(host_prefix)/share/config.site: check-packages ++$(host_prefix)/share/toolchain.cmake: check-packages ++ ++check-packages: check-sources ++ ++install: check-packages $(host_prefix)/share/config.site ++install: check-packages $(host_prefix)/share/toolchain.cmake ++ ++download-one: check-sources $(all_sources) ++ ++download-osx: ++ @$(MAKE) -s HOST=x86_64-apple-darwin11 download-one ++download-linux: ++ @$(MAKE) -s HOST=x86_64-unknown-linux-gnu download-one ++download-win: ++ @$(MAKE) -s HOST=x86_64-w64-mingw32 download-one ++download: download-osx download-linux download-win ++ ++ $(foreach package,$(all_packages),$(eval $(call ext_add_stages,$(package)))) ++ ++.PHONY: install cached download-one download-osx download-linux download-win download check-packages check-sources +diff --git a/contrib/depends/README.md b/contrib/depends/README.md +new file mode 100644 +index 00000000..1aa5b276 +--- /dev/null ++++ b/contrib/depends/README.md +@@ -0,0 +1,74 @@ ++### Usage ++ ++To build dependencies for the current arch+OS: ++ ++```bash ++make ++``` ++ ++To build for another arch/OS: ++ ++```bash ++make HOST=host-platform-triplet ++``` ++ ++For example: ++ ++```bash ++make HOST=x86_64-w64-mingw32 -j4 ++``` ++ ++A toolchain will be generated that's suitable for plugging into Monero's ++cmake. In the above example, a dir named x86_64-w64-mingw32 will be ++created. To use it for Monero: ++ ++```bash ++cmake -DCMAKE_TOOLCHAIN=`pwd`/contrib/depends/x86_64-w64-mingw32 ++``` ++ ++Common `host-platform-triplets` for cross compilation are: ++ ++- `i686-w64-mingw32` for Win32 ++- `x86_64-w64-mingw32` for Win64 ++- `x86_64-apple-darwin11` for MacOSX x86_64 ++- `arm-linux-gnueabihf` for Linux ARM 32 bit ++- `aarch64-linux-gnu` for Linux ARM 64 bit ++- `riscv64-linux-gnu` for Linux RISCV 64 bit ++ ++No other options are needed, the paths are automatically configured. ++ ++Dependency Options: ++The following can be set when running make: make FOO=bar ++ ++``` ++SOURCES_PATH: downloaded sources will be placed here ++BASE_CACHE: built packages will be placed here ++FALLBACK_DOWNLOAD_PATH: If a source file can't be fetched, try here before giving up ++DEBUG: disable some optimizations and enable more runtime checking ++HOST_ID_SALT: Optional salt to use when generating host package ids ++BUILD_ID_SALT: Optional salt to use when generating build package ids ++``` ++ ++Additional targets: ++ ++``` ++download: run 'make download' to fetch all sources without building them ++download-osx: run 'make download-osx' to fetch all sources needed for osx builds ++download-win: run 'make download-win' to fetch all sources needed for win builds ++download-linux: run 'make download-linux' to fetch all sources needed for linux builds ++``` ++ ++#Mingw builds ++ ++Building for 32/64bit mingw requires switching alternatives to a posix mode ++ ++```bash ++update-alternatives --set x86_64-w64-mingw32-g++ x86_64-w64-mingw32-g++-posix ++update-alternatives --set x86_64-w64-mingw32-gcc x86_64-w64-mingw32-gcc-posix ++``` ++ ++### Other documentation ++ ++- [description.md](description.md): General description of the depends system ++- [packages.md](packages.md): Steps for adding packages ++ +diff --git a/contrib/depends/builders/darwin.mk b/contrib/depends/builders/darwin.mk +new file mode 100644 +index 00000000..27f550ab +--- /dev/null ++++ b/contrib/depends/builders/darwin.mk +@@ -0,0 +1,22 @@ ++build_darwin_CC: = $(shell xcrun -f clang) ++build_darwin_CXX: = $(shell xcrun -f clang++) ++build_darwin_AR: = $(shell xcrun -f ar) ++build_darwin_RANLIB: = $(shell xcrun -f ranlib) ++build_darwin_STRIP: = $(shell xcrun -f strip) ++build_darwin_OTOOL: = $(shell xcrun -f otool) ++build_darwin_NM: = $(shell xcrun -f nm) ++build_darwin_INSTALL_NAME_TOOL:=$(shell xcrun -f install_name_tool) ++build_darwin_SHA256SUM = shasum -a 256 ++build_darwin_DOWNLOAD = curl --location --fail --connect-timeout $(DOWNLOAD_CONNECT_TIMEOUT) --retry $(DOWNLOAD_RETRIES) -o ++ ++#darwin host on darwin builder. overrides darwin host preferences. ++darwin_CC=$(shell xcrun -f clang) -mmacosx-version-min=$(OSX_MIN_VERSION) ++darwin_CXX:=$(shell xcrun -f clang++) -mmacosx-version-min=$(OSX_MIN_VERSION) -stdlib=libc++ ++darwin_AR:=$(shell xcrun -f ar) ++darwin_RANLIB:=$(shell xcrun -f ranlib) ++darwin_STRIP:=$(shell xcrun -f strip) ++darwin_LIBTOOL:=$(shell xcrun -f libtool) ++darwin_OTOOL:=$(shell xcrun -f otool) ++darwin_NM:=$(shell xcrun -f nm) ++darwin_INSTALL_NAME_TOOL:=$(shell xcrun -f install_name_tool) ++darwin_native_toolchain= +diff --git a/contrib/depends/builders/default.mk b/contrib/depends/builders/default.mk +new file mode 100644 +index 00000000..c4191435 +--- /dev/null ++++ b/contrib/depends/builders/default.mk +@@ -0,0 +1,20 @@ ++default_build_CC = gcc ++default_build_CXX = g++ ++default_build_AR = ar ++default_build_RANLIB = ranlib ++default_build_STRIP = strip ++default_build_NM = nm ++default_build_OTOOL = otool ++default_build_INSTALL_NAME_TOOL = install_name_tool ++ ++define add_build_tool_func ++build_$(build_os)_$1 ?= $$(default_build_$1) ++build_$(build_arch)_$(build_os)_$1 ?= $$(build_$(build_os)_$1) ++build_$1=$$(build_$(build_arch)_$(build_os)_$1) ++endef ++$(foreach var,CC CXX AR RANLIB NM STRIP SHA256SUM DOWNLOAD OTOOL INSTALL_NAME_TOOL,$(eval $(call add_build_tool_func,$(var)))) ++define add_build_flags_func ++build_$(build_arch)_$(build_os)_$1 += $(build_$(build_os)_$1) ++build_$1=$$(build_$(build_arch)_$(build_os)_$1) ++endef ++$(foreach flags, CFLAGS CXXFLAGS ARFLAGS LDFLAGS, $(eval $(call add_build_flags_func,$(flags)))) +diff --git a/contrib/depends/builders/linux.mk b/contrib/depends/builders/linux.mk +new file mode 100644 +index 00000000..b03f4240 +--- /dev/null ++++ b/contrib/depends/builders/linux.mk +@@ -0,0 +1,2 @@ ++build_linux_SHA256SUM = sha256sum ++build_linux_DOWNLOAD = curl --location --fail --connect-timeout $(DOWNLOAD_CONNECT_TIMEOUT) --retry $(DOWNLOAD_RETRIES) -o +diff --git a/contrib/depends/config.guess b/contrib/depends/config.guess +new file mode 100755 +index 00000000..69ed3e57 +--- /dev/null ++++ b/contrib/depends/config.guess +@@ -0,0 +1,1466 @@ ++#! /bin/sh ++# Attempt to guess a canonical system name. ++# Copyright 1992-2017 Free Software Foundation, Inc. ++ ++timestamp='2017-03-05' ++ ++# This file is free software; you can redistribute it and/or modify it ++# under the terms of the GNU General Public License as published by ++# the Free Software Foundation; either version 3 of the License, or ++# (at your option) any later version. ++# ++# This program is distributed in the hope that it will be useful, but ++# WITHOUT ANY WARRANTY; without even the implied warranty of ++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++# General Public License for more details. ++# ++# You should have received a copy of the GNU General Public License ++# along with this program; if not, see <http://www.gnu.org/licenses/>. ++# ++# As a special exception to the GNU General Public License, if you ++# distribute this file as part of a program that contains a ++# configuration script generated by Autoconf, you may include it under ++# the same distribution terms that you use for the rest of that ++# program. This Exception is an additional permission under section 7 ++# of the GNU General Public License, version 3 ("GPLv3"). ++# ++# Originally written by Per Bothner; maintained since 2000 by Ben Elliston. ++# ++# You can get the latest version of this script from: ++# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess ++# ++# Please send patches to <config-patches@gnu.org>. ++ ++ ++me=`echo "$0" | sed -e 's,.*/,,'` ++ ++usage="\ ++Usage: $0 [OPTION] ++ ++Output the configuration name of the system \`$me' is run on. ++ ++Operation modes: ++ -h, --help print this help, then exit ++ -t, --time-stamp print date of last modification, then exit ++ -v, --version print version number, then exit ++ ++Report bugs and patches to <config-patches@gnu.org>." ++ ++version="\ ++GNU config.guess ($timestamp) ++ ++Originally written by Per Bothner. ++Copyright 1992-2017 Free Software Foundation, Inc. ++ ++This is free software; see the source for copying conditions. There is NO ++warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." ++ ++help=" ++Try \`$me --help' for more information." ++ ++# Parse command line ++while test $# -gt 0 ; do ++ case $1 in ++ --time-stamp | --time* | -t ) ++ echo "$timestamp" ; exit ;; ++ --version | -v ) ++ echo "$version" ; exit ;; ++ --help | --h* | -h ) ++ echo "$usage"; exit ;; ++ -- ) # Stop option processing ++ shift; break ;; ++ - ) # Use stdin as input. ++ break ;; ++ -* ) ++ echo "$me: invalid option $1$help" >&2 ++ exit 1 ;; ++ * ) ++ break ;; ++ esac ++done ++ ++if test $# != 0; then ++ echo "$me: too many arguments$help" >&2 ++ exit 1 ++fi ++ ++trap 'exit 1' 1 2 15 ++ ++# CC_FOR_BUILD -- compiler used by this script. Note that the use of a ++# compiler to aid in system detection is discouraged as it requires ++# temporary files to be created and, as you can see below, it is a ++# headache to deal with in a portable fashion. ++ ++# Historically, `CC_FOR_BUILD' used to be named `HOST_CC'. We still ++# use `HOST_CC' if defined, but it is deprecated. ++ ++# Portable tmp directory creation inspired by the Autoconf team. ++ ++set_cc_for_build=' ++trap "exitcode=\$?; (rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null) && exit \$exitcode" 0 ; ++trap "rm -f \$tmpfiles 2>/dev/null; rmdir \$tmp 2>/dev/null; exit 1" 1 2 13 15 ; ++: ${TMPDIR=/tmp} ; ++ { tmp=`(umask 077 && mktemp -d "$TMPDIR/cgXXXXXX") 2>/dev/null` && test -n "$tmp" && test -d "$tmp" ; } || ++ { test -n "$RANDOM" && tmp=$TMPDIR/cg$$-$RANDOM && (umask 077 && mkdir $tmp) ; } || ++ { tmp=$TMPDIR/cg-$$ && (umask 077 && mkdir $tmp) && echo "Warning: creating insecure temp directory" >&2 ; } || ++ { echo "$me: cannot create a temporary directory in $TMPDIR" >&2 ; exit 1 ; } ; ++dummy=$tmp/dummy ; ++tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ; ++case $CC_FOR_BUILD,$HOST_CC,$CC in ++ ,,) echo "int x;" > $dummy.c ; ++ for c in cc gcc c89 c99 ; do ++ if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then ++ CC_FOR_BUILD="$c"; break ; ++ fi ; ++ done ; ++ if test x"$CC_FOR_BUILD" = x ; then ++ CC_FOR_BUILD=no_compiler_found ; ++ fi ++ ;; ++ ,,*) CC_FOR_BUILD=$CC ;; ++ ,*,*) CC_FOR_BUILD=$HOST_CC ;; ++esac ; set_cc_for_build= ;' ++ ++# This is needed to find uname on a Pyramid OSx when run in the BSD universe. ++# (ghazi@noc.rutgers.edu 1994-08-24) ++if (test -f /.attbin/uname) >/dev/null 2>&1 ; then ++ PATH=$PATH:/.attbin ; export PATH ++fi ++ ++UNAME_MACHINE=`(uname -m) 2>/dev/null` || UNAME_MACHINE=unknown ++UNAME_RELEASE=`(uname -r) 2>/dev/null` || UNAME_RELEASE=unknown ++UNAME_SYSTEM=`(uname -s) 2>/dev/null` || UNAME_SYSTEM=unknown ++UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown ++ ++case "${UNAME_SYSTEM}" in ++Linux|GNU|GNU/*) ++ # If the system lacks a compiler, then just pick glibc. ++ # We could probably try harder. ++ LIBC=gnu ++ ++ eval $set_cc_for_build ++ cat <<-EOF > $dummy.c ++ #include <features.h> ++ #if defined(__UCLIBC__) ++ LIBC=uclibc ++ #elif defined(__dietlibc__) ++ LIBC=dietlibc ++ #else ++ LIBC=gnu ++ #endif ++ EOF ++ eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC' | sed 's, ,,g'` ++ ;; ++esac ++ ++# Note: order is significant - the case branches are not exclusive. ++ ++case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in ++ *:NetBSD:*:*) ++ # NetBSD (nbsd) targets should (where applicable) match one or ++ # more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*, ++ # *-*-netbsdecoff* and *-*-netbsd*. For targets that recently ++ # switched to ELF, *-*-netbsd* would select the old ++ # object file format. This provides both forward ++ # compatibility and a consistent mechanism for selecting the ++ # object file format. ++ # ++ # Note: NetBSD doesn't particularly care about the vendor ++ # portion of the name. We always set it to "unknown". ++ sysctl="sysctl -n hw.machine_arch" ++ UNAME_MACHINE_ARCH=`(uname -p 2>/dev/null || \ ++ /sbin/$sysctl 2>/dev/null || \ ++ /usr/sbin/$sysctl 2>/dev/null || \ ++ echo unknown)` ++ case "${UNAME_MACHINE_ARCH}" in ++ armeb) machine=armeb-unknown ;; ++ arm*) machine=arm-unknown ;; ++ sh3el) machine=shl-unknown ;; ++ sh3eb) machine=sh-unknown ;; ++ sh5el) machine=sh5le-unknown ;; ++ earmv*) ++ arch=`echo ${UNAME_MACHINE_ARCH} | sed -e 's,^e\(armv[0-9]\).*$,\1,'` ++ endian=`echo ${UNAME_MACHINE_ARCH} | sed -ne 's,^.*\(eb\)$,\1,p'` ++ machine=${arch}${endian}-unknown ++ ;; ++ *) machine=${UNAME_MACHINE_ARCH}-unknown ;; ++ esac ++ # The Operating System including object format, if it has switched ++ # to ELF recently (or will in the future) and ABI. ++ case "${UNAME_MACHINE_ARCH}" in ++ earm*) ++ os=netbsdelf ++ ;; ++ arm*|i386|m68k|ns32k|sh3*|sparc|vax) ++ eval $set_cc_for_build ++ if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \ ++ | grep -q __ELF__ ++ then ++ # Once all utilities can be ECOFF (netbsdecoff) or a.out (netbsdaout). ++ # Return netbsd for either. FIX? ++ os=netbsd ++ else ++ os=netbsdelf ++ fi ++ ;; ++ *) ++ os=netbsd ++ ;; ++ esac ++ # Determine ABI tags. ++ case "${UNAME_MACHINE_ARCH}" in ++ earm*) ++ expr='s/^earmv[0-9]/-eabi/;s/eb$//' ++ abi=`echo ${UNAME_MACHINE_ARCH} | sed -e "$expr"` ++ ;; ++ esac ++ # The OS release ++ # Debian GNU/NetBSD machines have a different userland, and ++ # thus, need a distinct triplet. However, they do not need ++ # kernel version information, so it can be replaced with a ++ # suitable tag, in the style of linux-gnu. ++ case "${UNAME_VERSION}" in ++ Debian*) ++ release='-gnu' ++ ;; ++ *) ++ release=`echo ${UNAME_RELEASE} | sed -e 's/[-_].*//' | cut -d. -f1,2` ++ ;; ++ esac ++ # Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM: ++ # contains redundant information, the shorter form: ++ # CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used. ++ echo "${machine}-${os}${release}${abi}" ++ exit ;; ++ *:Bitrig:*:*) ++ UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'` ++ echo ${UNAME_MACHINE_ARCH}-unknown-bitrig${UNAME_RELEASE} ++ exit ;; ++ *:OpenBSD:*:*) ++ UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'` ++ echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE} ++ exit ;; ++ *:LibertyBSD:*:*) ++ UNAME_MACHINE_ARCH=`arch | sed 's/^.*BSD\.//'` ++ echo ${UNAME_MACHINE_ARCH}-unknown-libertybsd${UNAME_RELEASE} ++ exit ;; ++ *:ekkoBSD:*:*) ++ echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE} ++ exit ;; ++ *:SolidBSD:*:*) ++ echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE} ++ exit ;; ++ macppc:MirBSD:*:*) ++ echo powerpc-unknown-mirbsd${UNAME_RELEASE} ++ exit ;; ++ *:MirBSD:*:*) ++ echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE} ++ exit ;; ++ *:Sortix:*:*) ++ echo ${UNAME_MACHINE}-unknown-sortix ++ exit ;; ++ alpha:OSF1:*:*) ++ case $UNAME_RELEASE in ++ *4.0) ++ UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $3}'` ++ ;; ++ *5.*) ++ UNAME_RELEASE=`/usr/sbin/sizer -v | awk '{print $4}'` ++ ;; ++ esac ++ # According to Compaq, /usr/sbin/psrinfo has been available on ++ # OSF/1 and Tru64 systems produced since 1995. I hope that ++ # covers most systems running today. This code pipes the CPU ++ # types through head -n 1, so we only detect the type of CPU 0. ++ ALPHA_CPU_TYPE=`/usr/sbin/psrinfo -v | sed -n -e 's/^ The alpha \(.*\) processor.*$/\1/p' | head -n 1` ++ case "$ALPHA_CPU_TYPE" in ++ "EV4 (21064)") ++ UNAME_MACHINE=alpha ;; ++ "EV4.5 (21064)") ++ UNAME_MACHINE=alpha ;; ++ "LCA4 (21066/21068)") ++ UNAME_MACHINE=alpha ;; ++ "EV5 (21164)") ++ UNAME_MACHINE=alphaev5 ;; ++ "EV5.6 (21164A)") ++ UNAME_MACHINE=alphaev56 ;; ++ "EV5.6 (21164PC)") ++ UNAME_MACHINE=alphapca56 ;; ++ "EV5.7 (21164PC)") ++ UNAME_MACHINE=alphapca57 ;; ++ "EV6 (21264)") ++ UNAME_MACHINE=alphaev6 ;; ++ "EV6.7 (21264A)") ++ UNAME_MACHINE=alphaev67 ;; ++ "EV6.8CB (21264C)") ++ UNAME_MACHINE=alphaev68 ;; ++ "EV6.8AL (21264B)") ++ UNAME_MACHINE=alphaev68 ;; ++ "EV6.8CX (21264D)") ++ UNAME_MACHINE=alphaev68 ;; ++ "EV6.9A (21264/EV69A)") ++ UNAME_MACHINE=alphaev69 ;; ++ "EV7 (21364)") ++ UNAME_MACHINE=alphaev7 ;; ++ "EV7.9 (21364A)") ++ UNAME_MACHINE=alphaev79 ;; ++ esac ++ # A Pn.n version is a patched version. ++ # A Vn.n version is a released version. ++ # A Tn.n version is a released field test version. ++ # A Xn.n version is an unreleased experimental baselevel. ++ # 1.2 uses "1.2" for uname -r. ++ echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz` ++ # Reset EXIT trap before exiting to avoid spurious non-zero exit code. ++ exitcode=$? ++ trap '' 0 ++ exit $exitcode ;; ++ Alpha\ *:Windows_NT*:*) ++ # How do we know it's Interix rather than the generic POSIX subsystem? ++ # Should we change UNAME_MACHINE based on the output of uname instead ++ # of the specific Alpha model? ++ echo alpha-pc-interix ++ exit ;; ++ 21064:Windows_NT:50:3) ++ echo alpha-dec-winnt3.5 ++ exit ;; ++ Amiga*:UNIX_System_V:4.0:*) ++ echo m68k-unknown-sysv4 ++ exit ;; ++ *:[Aa]miga[Oo][Ss]:*:*) ++ echo ${UNAME_MACHINE}-unknown-amigaos ++ exit ;; ++ *:[Mm]orph[Oo][Ss]:*:*) ++ echo ${UNAME_MACHINE}-unknown-morphos ++ exit ;; ++ *:OS/390:*:*) ++ echo i370-ibm-openedition ++ exit ;; ++ *:z/VM:*:*) ++ echo s390-ibm-zvmoe ++ exit ;; ++ *:OS400:*:*) ++ echo powerpc-ibm-os400 ++ exit ;; ++ arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*) ++ echo arm-acorn-riscix${UNAME_RELEASE} ++ exit ;; ++ arm*:riscos:*:*|arm*:RISCOS:*:*) ++ echo arm-unknown-riscos ++ exit ;; ++ SR2?01:HI-UX/MPP:*:* | SR8000:HI-UX/MPP:*:*) ++ echo hppa1.1-hitachi-hiuxmpp ++ exit ;; ++ Pyramid*:OSx*:*:* | MIS*:OSx*:*:* | MIS*:SMP_DC-OSx*:*:*) ++ # akee@wpdis03.wpafb.af.mil (Earle F. Ake) contributed MIS and NILE. ++ if test "`(/bin/universe) 2>/dev/null`" = att ; then ++ echo pyramid-pyramid-sysv3 ++ else ++ echo pyramid-pyramid-bsd ++ fi ++ exit ;; ++ NILE*:*:*:dcosx) ++ echo pyramid-pyramid-svr4 ++ exit ;; ++ DRS?6000:unix:4.0:6*) ++ echo sparc-icl-nx6 ++ exit ;; ++ DRS?6000:UNIX_SV:4.2*:7* | DRS?6000:isis:4.2*:7*) ++ case `/usr/bin/uname -p` in ++ sparc) echo sparc-icl-nx7; exit ;; ++ esac ;; ++ s390x:SunOS:*:*) ++ echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` ++ exit ;; ++ sun4H:SunOS:5.*:*) ++ echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` ++ exit ;; ++ sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*) ++ echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` ++ exit ;; ++ i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*) ++ echo i386-pc-auroraux${UNAME_RELEASE} ++ exit ;; ++ i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) ++ eval $set_cc_for_build ++ SUN_ARCH=i386 ++ # If there is a compiler, see if it is configured for 64-bit objects. ++ # Note that the Sun cc does not turn __LP64__ into 1 like gcc does. ++ # This test works for both compilers. ++ if [ "$CC_FOR_BUILD" != no_compiler_found ]; then ++ if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \ ++ (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ ++ grep IS_64BIT_ARCH >/dev/null ++ then ++ SUN_ARCH=x86_64 ++ fi ++ fi ++ echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` ++ exit ;; ++ sun4*:SunOS:6*:*) ++ # According to config.sub, this is the proper way to canonicalize ++ # SunOS6. Hard to guess exactly what SunOS6 will be like, but ++ # it's likely to be more like Solaris than SunOS4. ++ echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` ++ exit ;; ++ sun4*:SunOS:*:*) ++ case "`/usr/bin/arch -k`" in ++ Series*|S4*) ++ UNAME_RELEASE=`uname -v` ++ ;; ++ esac ++ # Japanese Language versions have a version number like `4.1.3-JL'. ++ echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'` ++ exit ;; ++ sun3*:SunOS:*:*) ++ echo m68k-sun-sunos${UNAME_RELEASE} ++ exit ;; ++ sun*:*:4.2BSD:*) ++ UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null` ++ test "x${UNAME_RELEASE}" = x && UNAME_RELEASE=3 ++ case "`/bin/arch`" in ++ sun3) ++ echo m68k-sun-sunos${UNAME_RELEASE} ++ ;; ++ sun4) ++ echo sparc-sun-sunos${UNAME_RELEASE} ++ ;; ++ esac ++ exit ;; ++ aushp:SunOS:*:*) ++ echo sparc-auspex-sunos${UNAME_RELEASE} ++ exit ;; ++ # The situation for MiNT is a little confusing. The machine name ++ # can be virtually everything (everything which is not ++ # "atarist" or "atariste" at least should have a processor ++ # > m68000). The system name ranges from "MiNT" over "FreeMiNT" ++ # to the lowercase version "mint" (or "freemint"). Finally ++ # the system name "TOS" denotes a system which is actually not ++ # MiNT. But MiNT is downward compatible to TOS, so this should ++ # be no problem. ++ atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*) ++ echo m68k-atari-mint${UNAME_RELEASE} ++ exit ;; ++ atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*) ++ echo m68k-atari-mint${UNAME_RELEASE} ++ exit ;; ++ *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*) ++ echo m68k-atari-mint${UNAME_RELEASE} ++ exit ;; ++ milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*) ++ echo m68k-milan-mint${UNAME_RELEASE} ++ exit ;; ++ hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*) ++ echo m68k-hades-mint${UNAME_RELEASE} ++ exit ;; ++ *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*) ++ echo m68k-unknown-mint${UNAME_RELEASE} ++ exit ;; ++ m68k:machten:*:*) ++ echo m68k-apple-machten${UNAME_RELEASE} ++ exit ;; ++ powerpc:machten:*:*) ++ echo powerpc-apple-machten${UNAME_RELEASE} ++ exit ;; ++ RISC*:Mach:*:*) ++ echo mips-dec-mach_bsd4.3 ++ exit ;; ++ RISC*:ULTRIX:*:*) ++ echo mips-dec-ultrix${UNAME_RELEASE} ++ exit ;; ++ VAX*:ULTRIX*:*:*) ++ echo vax-dec-ultrix${UNAME_RELEASE} ++ exit ;; ++ 2020:CLIX:*:* | 2430:CLIX:*:*) ++ echo clipper-intergraph-clix${UNAME_RELEASE} ++ exit ;; ++ mips:*:*:UMIPS | mips:*:*:RISCos) ++ eval $set_cc_for_build ++ sed 's/^ //' << EOF >$dummy.c ++#ifdef __cplusplus ++#include <stdio.h> /* for printf() prototype */ ++ int main (int argc, char *argv[]) { ++#else ++ int main (argc, argv) int argc; char *argv[]; { ++#endif ++ #if defined (host_mips) && defined (MIPSEB) ++ #if defined (SYSTYPE_SYSV) ++ printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0); ++ #endif ++ #if defined (SYSTYPE_SVR4) ++ printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0); ++ #endif ++ #if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD) ++ printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0); ++ #endif ++ #endif ++ exit (-1); ++ } ++EOF ++ $CC_FOR_BUILD -o $dummy $dummy.c && ++ dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` && ++ SYSTEM_NAME=`$dummy $dummyarg` && ++ { echo "$SYSTEM_NAME"; exit; } ++ echo mips-mips-riscos${UNAME_RELEASE} ++ exit ;; ++ Motorola:PowerMAX_OS:*:*) ++ echo powerpc-motorola-powermax ++ exit ;; ++ Motorola:*:4.3:PL8-*) ++ echo powerpc-harris-powermax ++ exit ;; ++ Night_Hawk:*:*:PowerMAX_OS | Synergy:PowerMAX_OS:*:*) ++ echo powerpc-harris-powermax ++ exit ;; ++ Night_Hawk:Power_UNIX:*:*) ++ echo powerpc-harris-powerunix ++ exit ;; ++ m88k:CX/UX:7*:*) ++ echo m88k-harris-cxux7 ++ exit ;; ++ m88k:*:4*:R4*) ++ echo m88k-motorola-sysv4 ++ exit ;; ++ m88k:*:3*:R3*) ++ echo m88k-motorola-sysv3 ++ exit ;; ++ AViiON:dgux:*:*) ++ # DG/UX returns AViiON for all architectures ++ UNAME_PROCESSOR=`/usr/bin/uname -p` ++ if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ] ++ then ++ if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \ ++ [ ${TARGET_BINARY_INTERFACE}x = x ] ++ then ++ echo m88k-dg-dgux${UNAME_RELEASE} ++ else ++ echo m88k-dg-dguxbcs${UNAME_RELEASE} ++ fi ++ else ++ echo i586-dg-dgux${UNAME_RELEASE} ++ fi ++ exit ;; ++ M88*:DolphinOS:*:*) # DolphinOS (SVR3) ++ echo m88k-dolphin-sysv3 ++ exit ;; ++ M88*:*:R3*:*) ++ # Delta 88k system running SVR3 ++ echo m88k-motorola-sysv3 ++ exit ;; ++ XD88*:*:*:*) # Tektronix XD88 system running UTekV (SVR3) ++ echo m88k-tektronix-sysv3 ++ exit ;; ++ Tek43[0-9][0-9]:UTek:*:*) # Tektronix 4300 system running UTek (BSD) ++ echo m68k-tektronix-bsd ++ exit ;; ++ *:IRIX*:*:*) ++ echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'` ++ exit ;; ++ ????????:AIX?:[12].1:2) # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX. ++ echo romp-ibm-aix # uname -m gives an 8 hex-code CPU id ++ exit ;; # Note that: echo "'`uname -s`'" gives 'AIX ' ++ i*86:AIX:*:*) ++ echo i386-ibm-aix ++ exit ;; ++ ia64:AIX:*:*) ++ if [ -x /usr/bin/oslevel ] ; then ++ IBM_REV=`/usr/bin/oslevel` ++ else ++ IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} ++ fi ++ echo ${UNAME_MACHINE}-ibm-aix${IBM_REV} ++ exit ;; ++ *:AIX:2:3) ++ if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then ++ eval $set_cc_for_build ++ sed 's/^ //' << EOF >$dummy.c ++ #include <sys/systemcfg.h> ++ ++ main() ++ { ++ if (!__power_pc()) ++ exit(1); ++ puts("powerpc-ibm-aix3.2.5"); ++ exit(0); ++ } ++EOF ++ if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` ++ then ++ echo "$SYSTEM_NAME" ++ else ++ echo rs6000-ibm-aix3.2.5 ++ fi ++ elif grep bos324 /usr/include/stdio.h >/dev/null 2>&1; then ++ echo rs6000-ibm-aix3.2.4 ++ else ++ echo rs6000-ibm-aix3.2 ++ fi ++ exit ;; ++ *:AIX:*:[4567]) ++ IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'` ++ if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then ++ IBM_ARCH=rs6000 ++ else ++ IBM_ARCH=powerpc ++ fi ++ if [ -x /usr/bin/lslpp ] ; then ++ IBM_REV=`/usr/bin/lslpp -Lqc bos.rte.libc | ++ awk -F: '{ print $3 }' | sed s/[0-9]*$/0/` ++ else ++ IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE} ++ fi ++ echo ${IBM_ARCH}-ibm-aix${IBM_REV} ++ exit ;; ++ *:AIX:*:*) ++ echo rs6000-ibm-aix ++ exit ;; ++ ibmrt:4.4BSD:*|romp-ibm:BSD:*) ++ echo romp-ibm-bsd4.4 ++ exit ;; ++ ibmrt:*BSD:*|romp-ibm:BSD:*) # covers RT/PC BSD and ++ echo romp-ibm-bsd${UNAME_RELEASE} # 4.3 with uname added to ++ exit ;; # report: romp-ibm BSD 4.3 ++ *:BOSX:*:*) ++ echo rs6000-bull-bosx ++ exit ;; ++ DPX/2?00:B.O.S.:*:*) ++ echo m68k-bull-sysv3 ++ exit ;; ++ 9000/[34]??:4.3bsd:1.*:*) ++ echo m68k-hp-bsd ++ exit ;; ++ hp300:4.4BSD:*:* | 9000/[34]??:4.3bsd:2.*:*) ++ echo m68k-hp-bsd4.4 ++ exit ;; ++ 9000/[34678]??:HP-UX:*:*) ++ HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` ++ case "${UNAME_MACHINE}" in ++ 9000/31? ) HP_ARCH=m68000 ;; ++ 9000/[34]?? ) HP_ARCH=m68k ;; ++ 9000/[678][0-9][0-9]) ++ if [ -x /usr/bin/getconf ]; then ++ sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null` ++ sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null` ++ case "${sc_cpu_version}" in ++ 523) HP_ARCH=hppa1.0 ;; # CPU_PA_RISC1_0 ++ 528) HP_ARCH=hppa1.1 ;; # CPU_PA_RISC1_1 ++ 532) # CPU_PA_RISC2_0 ++ case "${sc_kernel_bits}" in ++ 32) HP_ARCH=hppa2.0n ;; ++ 64) HP_ARCH=hppa2.0w ;; ++ '') HP_ARCH=hppa2.0 ;; # HP-UX 10.20 ++ esac ;; ++ esac ++ fi ++ if [ "${HP_ARCH}" = "" ]; then ++ eval $set_cc_for_build ++ sed 's/^ //' << EOF >$dummy.c ++ ++ #define _HPUX_SOURCE ++ #include <stdlib.h> ++ #include <unistd.h> ++ ++ int main () ++ { ++ #if defined(_SC_KERNEL_BITS) ++ long bits = sysconf(_SC_KERNEL_BITS); ++ #endif ++ long cpu = sysconf (_SC_CPU_VERSION); ++ ++ switch (cpu) ++ { ++ case CPU_PA_RISC1_0: puts ("hppa1.0"); break; ++ case CPU_PA_RISC1_1: puts ("hppa1.1"); break; ++ case CPU_PA_RISC2_0: ++ #if defined(_SC_KERNEL_BITS) ++ switch (bits) ++ { ++ case 64: puts ("hppa2.0w"); break; ++ case 32: puts ("hppa2.0n"); break; ++ default: puts ("hppa2.0"); break; ++ } break; ++ #else /* !defined(_SC_KERNEL_BITS) */ ++ puts ("hppa2.0"); break; ++ #endif ++ default: puts ("hppa1.0"); break; ++ } ++ exit (0); ++ } ++EOF ++ (CCOPTS="" $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy` ++ test -z "$HP_ARCH" && HP_ARCH=hppa ++ fi ;; ++ esac ++ if [ ${HP_ARCH} = hppa2.0w ] ++ then ++ eval $set_cc_for_build ++ ++ # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating ++ # 32-bit code. hppa64-hp-hpux* has the same kernel and a compiler ++ # generating 64-bit code. GNU and HP use different nomenclature: ++ # ++ # $ CC_FOR_BUILD=cc ./config.guess ++ # => hppa2.0w-hp-hpux11.23 ++ # $ CC_FOR_BUILD="cc +DA2.0w" ./config.guess ++ # => hppa64-hp-hpux11.23 ++ ++ if echo __LP64__ | (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | ++ grep -q __LP64__ ++ then ++ HP_ARCH=hppa2.0w ++ else ++ HP_ARCH=hppa64 ++ fi ++ fi ++ echo ${HP_ARCH}-hp-hpux${HPUX_REV} ++ exit ;; ++ ia64:HP-UX:*:*) ++ HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'` ++ echo ia64-hp-hpux${HPUX_REV} ++ exit ;; ++ 3050*:HI-UX:*:*) ++ eval $set_cc_for_build ++ sed 's/^ //' << EOF >$dummy.c ++ #include <unistd.h> ++ int ++ main () ++ { ++ long cpu = sysconf (_SC_CPU_VERSION); ++ /* The order matters, because CPU_IS_HP_MC68K erroneously returns ++ true for CPU_PA_RISC1_0. CPU_IS_PA_RISC returns correct ++ results, however. */ ++ if (CPU_IS_PA_RISC (cpu)) ++ { ++ switch (cpu) ++ { ++ case CPU_PA_RISC1_0: puts ("hppa1.0-hitachi-hiuxwe2"); break; ++ case CPU_PA_RISC1_1: puts ("hppa1.1-hitachi-hiuxwe2"); break; ++ case CPU_PA_RISC2_0: puts ("hppa2.0-hitachi-hiuxwe2"); break; ++ default: puts ("hppa-hitachi-hiuxwe2"); break; ++ } ++ } ++ else if (CPU_IS_HP_MC68K (cpu)) ++ puts ("m68k-hitachi-hiuxwe2"); ++ else puts ("unknown-hitachi-hiuxwe2"); ++ exit (0); ++ } ++EOF ++ $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` && ++ { echo "$SYSTEM_NAME"; exit; } ++ echo unknown-hitachi-hiuxwe2 ++ exit ;; ++ 9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* ) ++ echo hppa1.1-hp-bsd ++ exit ;; ++ 9000/8??:4.3bsd:*:*) ++ echo hppa1.0-hp-bsd ++ exit ;; ++ *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*) ++ echo hppa1.0-hp-mpeix ++ exit ;; ++ hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* ) ++ echo hppa1.1-hp-osf ++ exit ;; ++ hp8??:OSF1:*:*) ++ echo hppa1.0-hp-osf ++ exit ;; ++ i*86:OSF1:*:*) ++ if [ -x /usr/sbin/sysversion ] ; then ++ echo ${UNAME_MACHINE}-unknown-osf1mk ++ else ++ echo ${UNAME_MACHINE}-unknown-osf1 ++ fi ++ exit ;; ++ parisc*:Lites*:*:*) ++ echo hppa1.1-hp-lites ++ exit ;; ++ C1*:ConvexOS:*:* | convex:ConvexOS:C1*:*) ++ echo c1-convex-bsd ++ exit ;; ++ C2*:ConvexOS:*:* | convex:ConvexOS:C2*:*) ++ if getsysinfo -f scalar_acc ++ then echo c32-convex-bsd ++ else echo c2-convex-bsd ++ fi ++ exit ;; ++ C34*:ConvexOS:*:* | convex:ConvexOS:C34*:*) ++ echo c34-convex-bsd ++ exit ;; ++ C38*:ConvexOS:*:* | convex:ConvexOS:C38*:*) ++ echo c38-convex-bsd ++ exit ;; ++ C4*:ConvexOS:*:* | convex:ConvexOS:C4*:*) ++ echo c4-convex-bsd ++ exit ;; ++ CRAY*Y-MP:*:*:*) ++ echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' ++ exit ;; ++ CRAY*[A-Z]90:*:*:*) ++ echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \ ++ | sed -e 's/CRAY.*\([A-Z]90\)/\1/' \ ++ -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \ ++ -e 's/\.[^.]*$/.X/' ++ exit ;; ++ CRAY*TS:*:*:*) ++ echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' ++ exit ;; ++ CRAY*T3E:*:*:*) ++ echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' ++ exit ;; ++ CRAY*SV1:*:*:*) ++ echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' ++ exit ;; ++ *:UNICOS/mp:*:*) ++ echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/' ++ exit ;; ++ F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*) ++ FUJITSU_PROC=`uname -m | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz` ++ FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'` ++ FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'` ++ echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" ++ exit ;; ++ 5000:UNIX_System_V:4.*:*) ++ FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'` ++ FUJITSU_REL=`echo ${UNAME_RELEASE} | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/ /_/'` ++ echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}" ++ exit ;; ++ i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*) ++ echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE} ++ exit ;; ++ sparc*:BSD/OS:*:*) ++ echo sparc-unknown-bsdi${UNAME_RELEASE} ++ exit ;; ++ *:BSD/OS:*:*) ++ echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE} ++ exit ;; ++ *:FreeBSD:*:*) ++ UNAME_PROCESSOR=`/usr/bin/uname -p` ++ case ${UNAME_PROCESSOR} in ++ amd64) ++ UNAME_PROCESSOR=x86_64 ;; ++ i386) ++ UNAME_PROCESSOR=i586 ;; ++ esac ++ echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ++ exit ;; ++ i*:CYGWIN*:*) ++ echo ${UNAME_MACHINE}-pc-cygwin ++ exit ;; ++ *:MINGW64*:*) ++ echo ${UNAME_MACHINE}-pc-mingw64 ++ exit ;; ++ *:MINGW*:*) ++ echo ${UNAME_MACHINE}-pc-mingw32 ++ exit ;; ++ *:MSYS*:*) ++ echo ${UNAME_MACHINE}-pc-msys ++ exit ;; ++ i*:windows32*:*) ++ # uname -m includes "-pc" on this system. ++ echo ${UNAME_MACHINE}-mingw32 ++ exit ;; ++ i*:PW*:*) ++ echo ${UNAME_MACHINE}-pc-pw32 ++ exit ;; ++ *:Interix*:*) ++ case ${UNAME_MACHINE} in ++ x86) ++ echo i586-pc-interix${UNAME_RELEASE} ++ exit ;; ++ authenticamd | genuineintel | EM64T) ++ echo x86_64-unknown-interix${UNAME_RELEASE} ++ exit ;; ++ IA64) ++ echo ia64-unknown-interix${UNAME_RELEASE} ++ exit ;; ++ esac ;; ++ [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*) ++ echo i${UNAME_MACHINE}-pc-mks ++ exit ;; ++ 8664:Windows_NT:*) ++ echo x86_64-pc-mks ++ exit ;; ++ i*:Windows_NT*:* | Pentium*:Windows_NT*:*) ++ # How do we know it's Interix rather than the generic POSIX subsystem? ++ # It also conflicts with pre-2.0 versions of AT&T UWIN. Should we ++ # UNAME_MACHINE based on the output of uname instead of i386? ++ echo i586-pc-interix ++ exit ;; ++ i*:UWIN*:*) ++ echo ${UNAME_MACHINE}-pc-uwin ++ exit ;; ++ amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*) ++ echo x86_64-unknown-cygwin ++ exit ;; ++ p*:CYGWIN*:*) ++ echo powerpcle-unknown-cygwin ++ exit ;; ++ prep*:SunOS:5.*:*) ++ echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` ++ exit ;; ++ *:GNU:*:*) ++ # the GNU system ++ echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-${LIBC}`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'` ++ exit ;; ++ *:GNU/*:*:*) ++ # other systems with GNU libc and userland ++ echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr "[:upper:]" "[:lower:]"``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-${LIBC} ++ exit ;; ++ i*86:Minix:*:*) ++ echo ${UNAME_MACHINE}-pc-minix ++ exit ;; ++ aarch64:Linux:*:*) ++ echo ${UNAME_MACHINE}-unknown-linux-${LIBC} ++ exit ;; ++ aarch64_be:Linux:*:*) ++ UNAME_MACHINE=aarch64_be ++ echo ${UNAME_MACHINE}-unknown-linux-${LIBC} ++ exit ;; ++ alpha:Linux:*:*) ++ case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in ++ EV5) UNAME_MACHINE=alphaev5 ;; ++ EV56) UNAME_MACHINE=alphaev56 ;; ++ PCA56) UNAME_MACHINE=alphapca56 ;; ++ PCA57) UNAME_MACHINE=alphapca56 ;; ++ EV6) UNAME_MACHINE=alphaev6 ;; ++ EV67) UNAME_MACHINE=alphaev67 ;; ++ EV68*) UNAME_MACHINE=alphaev68 ;; ++ esac ++ objdump --private-headers /bin/sh | grep -q ld.so.1 ++ if test "$?" = 0 ; then LIBC=gnulibc1 ; fi ++ echo ${UNAME_MACHINE}-unknown-linux-${LIBC} ++ exit ;; ++ arc:Linux:*:* | arceb:Linux:*:*) ++ echo ${UNAME_MACHINE}-unknown-linux-${LIBC} ++ exit ;; ++ arm*:Linux:*:*) ++ eval $set_cc_for_build ++ if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \ ++ | grep -q __ARM_EABI__ ++ then ++ echo ${UNAME_MACHINE}-unknown-linux-${LIBC} ++ else ++ if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \ ++ | grep -q __ARM_PCS_VFP ++ then ++ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabi ++ else ++ echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabihf ++ fi ++ fi ++ exit ;; ++ avr32*:Linux:*:*) ++ echo ${UNAME_MACHINE}-unknown-linux-${LIBC} ++ exit ;; ++ cris:Linux:*:*) ++ echo ${UNAME_MACHINE}-axis-linux-${LIBC} ++ exit ;; ++ crisv32:Linux:*:*) ++ echo ${UNAME_MACHINE}-axis-linux-${LIBC} ++ exit ;; ++ e2k:Linux:*:*) ++ echo ${UNAME_MACHINE}-unknown-linux-${LIBC} ++ exit ;; ++ frv:Linux:*:*) ++ echo ${UNAME_MACHINE}-unknown-linux-${LIBC} ++ exit ;; ++ hexagon:Linux:*:*) ++ echo ${UNAME_MACHINE}-unknown-linux-${LIBC} ++ exit ;; ++ i*86:Linux:*:*) ++ echo ${UNAME_MACHINE}-pc-linux-${LIBC} ++ exit ;; ++ ia64:Linux:*:*) ++ echo ${UNAME_MACHINE}-unknown-linux-${LIBC} ++ exit ;; ++ k1om:Linux:*:*) ++ echo ${UNAME_MACHINE}-unknown-linux-${LIBC} ++ exit ;; ++ m32r*:Linux:*:*) ++ echo ${UNAME_MACHINE}-unknown-linux-${LIBC} ++ exit ;; ++ m68*:Linux:*:*) ++ echo ${UNAME_MACHINE}-unknown-linux-${LIBC} ++ exit ;; ++ mips:Linux:*:* | mips64:Linux:*:*) ++ eval $set_cc_for_build ++ sed 's/^ //' << EOF >$dummy.c ++ #undef CPU ++ #undef ${UNAME_MACHINE} ++ #undef ${UNAME_MACHINE}el ++ #if defined(__MIPSEL__) || defined(__MIPSEL) || defined(_MIPSEL) || defined(MIPSEL) ++ CPU=${UNAME_MACHINE}el ++ #else ++ #if defined(__MIPSEB__) || defined(__MIPSEB) || defined(_MIPSEB) || defined(MIPSEB) ++ CPU=${UNAME_MACHINE} ++ #else ++ CPU= ++ #endif ++ #endif ++EOF ++ eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'` ++ test x"${CPU}" != x && { echo "${CPU}-unknown-linux-${LIBC}"; exit; } ++ ;; ++ mips64el:Linux:*:*) ++ echo ${UNAME_MACHINE}-unknown-linux-${LIBC} ++ exit ;; ++ openrisc*:Linux:*:*) ++ echo or1k-unknown-linux-${LIBC} ++ exit ;; ++ or32:Linux:*:* | or1k*:Linux:*:*) ++ echo ${UNAME_MACHINE}-unknown-linux-${LIBC} ++ exit ;; ++ padre:Linux:*:*) ++ echo sparc-unknown-linux-${LIBC} ++ exit ;; ++ parisc64:Linux:*:* | hppa64:Linux:*:*) ++ echo hppa64-unknown-linux-${LIBC} ++ exit ;; ++ parisc:Linux:*:* | hppa:Linux:*:*) ++ # Look for CPU level ++ case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in ++ PA7*) echo hppa1.1-unknown-linux-${LIBC} ;; ++ PA8*) echo hppa2.0-unknown-linux-${LIBC} ;; ++ *) echo hppa-unknown-linux-${LIBC} ;; ++ esac ++ exit ;; ++ ppc64:Linux:*:*) ++ echo powerpc64-unknown-linux-${LIBC} ++ exit ;; ++ ppc:Linux:*:*) ++ echo powerpc-unknown-linux-${LIBC} ++ exit ;; ++ ppc64le:Linux:*:*) ++ echo powerpc64le-unknown-linux-${LIBC} ++ exit ;; ++ ppcle:Linux:*:*) ++ echo powerpcle-unknown-linux-${LIBC} ++ exit ;; ++ riscv32:Linux:*:* | riscv64:Linux:*:*) ++ echo ${UNAME_MACHINE}-unknown-linux-${LIBC} ++ exit ;; ++ s390:Linux:*:* | s390x:Linux:*:*) ++ echo ${UNAME_MACHINE}-ibm-linux-${LIBC} ++ exit ;; ++ sh64*:Linux:*:*) ++ echo ${UNAME_MACHINE}-unknown-linux-${LIBC} ++ exit ;; ++ sh*:Linux:*:*) ++ echo ${UNAME_MACHINE}-unknown-linux-${LIBC} ++ exit ;; ++ sparc:Linux:*:* | sparc64:Linux:*:*) ++ echo ${UNAME_MACHINE}-unknown-linux-${LIBC} ++ exit ;; ++ tile*:Linux:*:*) ++ echo ${UNAME_MACHINE}-unknown-linux-${LIBC} ++ exit ;; ++ vax:Linux:*:*) ++ echo ${UNAME_MACHINE}-dec-linux-${LIBC} ++ exit ;; ++ x86_64:Linux:*:*) ++ echo ${UNAME_MACHINE}-pc-linux-${LIBC} ++ exit ;; ++ xtensa*:Linux:*:*) ++ echo ${UNAME_MACHINE}-unknown-linux-${LIBC} ++ exit ;; ++ i*86:DYNIX/ptx:4*:*) ++ # ptx 4.0 does uname -s correctly, with DYNIX/ptx in there. ++ # earlier versions are messed up and put the nodename in both ++ # sysname and nodename. ++ echo i386-sequent-sysv4 ++ exit ;; ++ i*86:UNIX_SV:4.2MP:2.*) ++ # Unixware is an offshoot of SVR4, but it has its own version ++ # number series starting with 2... ++ # I am not positive that other SVR4 systems won't match this, ++ # I just have to hope. -- rms. ++ # Use sysv4.2uw... so that sysv4* matches it. ++ echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION} ++ exit ;; ++ i*86:OS/2:*:*) ++ # If we were able to find `uname', then EMX Unix compatibility ++ # is probably installed. ++ echo ${UNAME_MACHINE}-pc-os2-emx ++ exit ;; ++ i*86:XTS-300:*:STOP) ++ echo ${UNAME_MACHINE}-unknown-stop ++ exit ;; ++ i*86:atheos:*:*) ++ echo ${UNAME_MACHINE}-unknown-atheos ++ exit ;; ++ i*86:syllable:*:*) ++ echo ${UNAME_MACHINE}-pc-syllable ++ exit ;; ++ i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*) ++ echo i386-unknown-lynxos${UNAME_RELEASE} ++ exit ;; ++ i*86:*DOS:*:*) ++ echo ${UNAME_MACHINE}-pc-msdosdjgpp ++ exit ;; ++ i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*) ++ UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'` ++ if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then ++ echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL} ++ else ++ echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL} ++ fi ++ exit ;; ++ i*86:*:5:[678]*) ++ # UnixWare 7.x, OpenUNIX and OpenServer 6. ++ case `/bin/uname -X | grep "^Machine"` in ++ *486*) UNAME_MACHINE=i486 ;; ++ *Pentium) UNAME_MACHINE=i586 ;; ++ *Pent*|*Celeron) UNAME_MACHINE=i686 ;; ++ esac ++ echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION} ++ exit ;; ++ i*86:*:3.2:*) ++ if test -f /usr/options/cb.name; then ++ UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name` ++ echo ${UNAME_MACHINE}-pc-isc$UNAME_REL ++ elif /bin/uname -X 2>/dev/null >/dev/null ; then ++ UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')` ++ (/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486 ++ (/bin/uname -X|grep '^Machine.*Pentium' >/dev/null) \ ++ && UNAME_MACHINE=i586 ++ (/bin/uname -X|grep '^Machine.*Pent *II' >/dev/null) \ ++ && UNAME_MACHINE=i686 ++ (/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \ ++ && UNAME_MACHINE=i686 ++ echo ${UNAME_MACHINE}-pc-sco$UNAME_REL ++ else ++ echo ${UNAME_MACHINE}-pc-sysv32 ++ fi ++ exit ;; ++ pc:*:*:*) ++ # Left here for compatibility: ++ # uname -m prints for DJGPP always 'pc', but it prints nothing about ++ # the processor, so we play safe by assuming i586. ++ # Note: whatever this is, it MUST be the same as what config.sub ++ # prints for the "djgpp" host, or else GDB configure will decide that ++ # this is a cross-build. ++ echo i586-pc-msdosdjgpp ++ exit ;; ++ Intel:Mach:3*:*) ++ echo i386-pc-mach3 ++ exit ;; ++ paragon:*:*:*) ++ echo i860-intel-osf1 ++ exit ;; ++ i860:*:4.*:*) # i860-SVR4 ++ if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then ++ echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4 ++ else # Add other i860-SVR4 vendors below as they are discovered. ++ echo i860-unknown-sysv${UNAME_RELEASE} # Unknown i860-SVR4 ++ fi ++ exit ;; ++ mini*:CTIX:SYS*5:*) ++ # "miniframe" ++ echo m68010-convergent-sysv ++ exit ;; ++ mc68k:UNIX:SYSTEM5:3.51m) ++ echo m68k-convergent-sysv ++ exit ;; ++ M680?0:D-NIX:5.3:*) ++ echo m68k-diab-dnix ++ exit ;; ++ M68*:*:R3V[5678]*:*) ++ test -r /sysV68 && { echo 'm68k-motorola-sysv'; exit; } ;; ++ 3[345]??:*:4.0:3.0 | 3[34]??A:*:4.0:3.0 | 3[34]??,*:*:4.0:3.0 | 3[34]??/*:*:4.0:3.0 | 4400:*:4.0:3.0 | 4850:*:4.0:3.0 | SKA40:*:4.0:3.0 | SDS2:*:4.0:3.0 | SHG2:*:4.0:3.0 | S7501*:*:4.0:3.0) ++ OS_REL='' ++ test -r /etc/.relid \ ++ && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` ++ /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ ++ && { echo i486-ncr-sysv4.3${OS_REL}; exit; } ++ /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ ++ && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; ++ 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) ++ /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ ++ && { echo i486-ncr-sysv4; exit; } ;; ++ NCR*:*:4.2:* | MPRAS*:*:4.2:*) ++ OS_REL='.3' ++ test -r /etc/.relid \ ++ && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` ++ /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ ++ && { echo i486-ncr-sysv4.3${OS_REL}; exit; } ++ /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ ++ && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ++ /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \ ++ && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; ++ m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) ++ echo m68k-unknown-lynxos${UNAME_RELEASE} ++ exit ;; ++ mc68030:UNIX_System_V:4.*:*) ++ echo m68k-atari-sysv4 ++ exit ;; ++ TSUNAMI:LynxOS:2.*:*) ++ echo sparc-unknown-lynxos${UNAME_RELEASE} ++ exit ;; ++ rs6000:LynxOS:2.*:*) ++ echo rs6000-unknown-lynxos${UNAME_RELEASE} ++ exit ;; ++ PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*) ++ echo powerpc-unknown-lynxos${UNAME_RELEASE} ++ exit ;; ++ SM[BE]S:UNIX_SV:*:*) ++ echo mips-dde-sysv${UNAME_RELEASE} ++ exit ;; ++ RM*:ReliantUNIX-*:*:*) ++ echo mips-sni-sysv4 ++ exit ;; ++ RM*:SINIX-*:*:*) ++ echo mips-sni-sysv4 ++ exit ;; ++ *:SINIX-*:*:*) ++ if uname -p 2>/dev/null >/dev/null ; then ++ UNAME_MACHINE=`(uname -p) 2>/dev/null` ++ echo ${UNAME_MACHINE}-sni-sysv4 ++ else ++ echo ns32k-sni-sysv ++ fi ++ exit ;; ++ PENTIUM:*:4.0*:*) # Unisys `ClearPath HMP IX 4000' SVR4/MP effort ++ # says <Richard.M.Bartel@ccMail.Census.GOV> ++ echo i586-unisys-sysv4 ++ exit ;; ++ *:UNIX_System_V:4*:FTX*) ++ # From Gerald Hewes <hewes@openmarket.com>. ++ # How about differentiating between stratus architectures? -djm ++ echo hppa1.1-stratus-sysv4 ++ exit ;; ++ *:*:*:FTX*) ++ # From seanf@swdc.stratus.com. ++ echo i860-stratus-sysv4 ++ exit ;; ++ i*86:VOS:*:*) ++ # From Paul.Green@stratus.com. ++ echo ${UNAME_MACHINE}-stratus-vos ++ exit ;; ++ *:VOS:*:*) ++ # From Paul.Green@stratus.com. ++ echo hppa1.1-stratus-vos ++ exit ;; ++ mc68*:A/UX:*:*) ++ echo m68k-apple-aux${UNAME_RELEASE} ++ exit ;; ++ news*:NEWS-OS:6*:*) ++ echo mips-sony-newsos6 ++ exit ;; ++ R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*) ++ if [ -d /usr/nec ]; then ++ echo mips-nec-sysv${UNAME_RELEASE} ++ else ++ echo mips-unknown-sysv${UNAME_RELEASE} ++ fi ++ exit ;; ++ BeBox:BeOS:*:*) # BeOS running on hardware made by Be, PPC only. ++ echo powerpc-be-beos ++ exit ;; ++ BeMac:BeOS:*:*) # BeOS running on Mac or Mac clone, PPC only. ++ echo powerpc-apple-beos ++ exit ;; ++ BePC:BeOS:*:*) # BeOS running on Intel PC compatible. ++ echo i586-pc-beos ++ exit ;; ++ BePC:Haiku:*:*) # Haiku running on Intel PC compatible. ++ echo i586-pc-haiku ++ exit ;; ++ x86_64:Haiku:*:*) ++ echo x86_64-unknown-haiku ++ exit ;; ++ SX-4:SUPER-UX:*:*) ++ echo sx4-nec-superux${UNAME_RELEASE} ++ exit ;; ++ SX-5:SUPER-UX:*:*) ++ echo sx5-nec-superux${UNAME_RELEASE} ++ exit ;; ++ SX-6:SUPER-UX:*:*) ++ echo sx6-nec-superux${UNAME_RELEASE} ++ exit ;; ++ SX-7:SUPER-UX:*:*) ++ echo sx7-nec-superux${UNAME_RELEASE} ++ exit ;; ++ SX-8:SUPER-UX:*:*) ++ echo sx8-nec-superux${UNAME_RELEASE} ++ exit ;; ++ SX-8R:SUPER-UX:*:*) ++ echo sx8r-nec-superux${UNAME_RELEASE} ++ exit ;; ++ SX-ACE:SUPER-UX:*:*) ++ echo sxace-nec-superux${UNAME_RELEASE} ++ exit ;; ++ Power*:Rhapsody:*:*) ++ echo powerpc-apple-rhapsody${UNAME_RELEASE} ++ exit ;; ++ *:Rhapsody:*:*) ++ echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE} ++ exit ;; ++ *:Darwin:*:*) ++ UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown ++ eval $set_cc_for_build ++ if test "$UNAME_PROCESSOR" = unknown ; then ++ UNAME_PROCESSOR=powerpc ++ fi ++ if test `echo "$UNAME_RELEASE" | sed -e 's/\..*//'` -le 10 ; then ++ if [ "$CC_FOR_BUILD" != no_compiler_found ]; then ++ if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \ ++ (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \ ++ grep IS_64BIT_ARCH >/dev/null ++ then ++ case $UNAME_PROCESSOR in ++ i386) UNAME_PROCESSOR=x86_64 ;; ++ powerpc) UNAME_PROCESSOR=powerpc64 ;; ++ esac ++ fi ++ fi ++ elif test "$UNAME_PROCESSOR" = i386 ; then ++ # Avoid executing cc on OS X 10.9, as it ships with a stub ++ # that puts up a graphical alert prompting to install ++ # developer tools. Any system running Mac OS X 10.7 or ++ # later (Darwin 11 and later) is required to have a 64-bit ++ # processor. This is not true of the ARM version of Darwin ++ # that Apple uses in portable devices. ++ UNAME_PROCESSOR=x86_64 ++ fi ++ echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE} ++ exit ;; ++ *:procnto*:*:* | *:QNX:[0123456789]*:*) ++ UNAME_PROCESSOR=`uname -p` ++ if test "$UNAME_PROCESSOR" = x86; then ++ UNAME_PROCESSOR=i386 ++ UNAME_MACHINE=pc ++ fi ++ echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE} ++ exit ;; ++ *:QNX:*:4*) ++ echo i386-pc-qnx ++ exit ;; ++ NEO-?:NONSTOP_KERNEL:*:*) ++ echo neo-tandem-nsk${UNAME_RELEASE} ++ exit ;; ++ NSE-*:NONSTOP_KERNEL:*:*) ++ echo nse-tandem-nsk${UNAME_RELEASE} ++ exit ;; ++ NSR-?:NONSTOP_KERNEL:*:*) ++ echo nsr-tandem-nsk${UNAME_RELEASE} ++ exit ;; ++ NSX-?:NONSTOP_KERNEL:*:*) ++ echo nsx-tandem-nsk${UNAME_RELEASE} ++ exit ;; ++ *:NonStop-UX:*:*) ++ echo mips-compaq-nonstopux ++ exit ;; ++ BS2000:POSIX*:*:*) ++ echo bs2000-siemens-sysv ++ exit ;; ++ DS/*:UNIX_System_V:*:*) ++ echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE} ++ exit ;; ++ *:Plan9:*:*) ++ # "uname -m" is not consistent, so use $cputype instead. 386 ++ # is converted to i386 for consistency with other x86 ++ # operating systems. ++ if test "$cputype" = 386; then ++ UNAME_MACHINE=i386 ++ else ++ UNAME_MACHINE="$cputype" ++ fi ++ echo ${UNAME_MACHINE}-unknown-plan9 ++ exit ;; ++ *:TOPS-10:*:*) ++ echo pdp10-unknown-tops10 ++ exit ;; ++ *:TENEX:*:*) ++ echo pdp10-unknown-tenex ++ exit ;; ++ KS10:TOPS-20:*:* | KL10:TOPS-20:*:* | TYPE4:TOPS-20:*:*) ++ echo pdp10-dec-tops20 ++ exit ;; ++ XKL-1:TOPS-20:*:* | TYPE5:TOPS-20:*:*) ++ echo pdp10-xkl-tops20 ++ exit ;; ++ *:TOPS-20:*:*) ++ echo pdp10-unknown-tops20 ++ exit ;; ++ *:ITS:*:*) ++ echo pdp10-unknown-its ++ exit ;; ++ SEI:*:*:SEIUX) ++ echo mips-sei-seiux${UNAME_RELEASE} ++ exit ;; ++ *:DragonFly:*:*) ++ echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ++ exit ;; ++ *:*VMS:*:*) ++ UNAME_MACHINE=`(uname -p) 2>/dev/null` ++ case "${UNAME_MACHINE}" in ++ A*) echo alpha-dec-vms ; exit ;; ++ I*) echo ia64-dec-vms ; exit ;; ++ V*) echo vax-dec-vms ; exit ;; ++ esac ;; ++ *:XENIX:*:SysV) ++ echo i386-pc-xenix ++ exit ;; ++ i*86:skyos:*:*) ++ echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE} | sed -e 's/ .*$//'` ++ exit ;; ++ i*86:rdos:*:*) ++ echo ${UNAME_MACHINE}-pc-rdos ++ exit ;; ++ i*86:AROS:*:*) ++ echo ${UNAME_MACHINE}-pc-aros ++ exit ;; ++ x86_64:VMkernel:*:*) ++ echo ${UNAME_MACHINE}-unknown-esx ++ exit ;; ++ amd64:Isilon\ OneFS:*:*) ++ echo x86_64-unknown-onefs ++ exit ;; ++esac ++ ++cat >&2 <<EOF ++$0: unable to guess system type ++ ++This script (version $timestamp), has failed to recognize the ++operating system you are using. If your script is old, overwrite ++config.guess and config.sub with the latest versions from: ++ ++ http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess ++and ++ http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub ++ ++If $0 has already been updated, send the following data and any ++information you think might be pertinent to config-patches@gnu.org to ++provide the necessary information to handle your system. ++ ++config.guess timestamp = $timestamp ++ ++uname -m = `(uname -m) 2>/dev/null || echo unknown` ++uname -r = `(uname -r) 2>/dev/null || echo unknown` ++uname -s = `(uname -s) 2>/dev/null || echo unknown` ++uname -v = `(uname -v) 2>/dev/null || echo unknown` ++ ++/usr/bin/uname -p = `(/usr/bin/uname -p) 2>/dev/null` ++/bin/uname -X = `(/bin/uname -X) 2>/dev/null` ++ ++hostinfo = `(hostinfo) 2>/dev/null` ++/bin/universe = `(/bin/universe) 2>/dev/null` ++/usr/bin/arch -k = `(/usr/bin/arch -k) 2>/dev/null` ++/bin/arch = `(/bin/arch) 2>/dev/null` ++/usr/bin/oslevel = `(/usr/bin/oslevel) 2>/dev/null` ++/usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null` ++ ++UNAME_MACHINE = ${UNAME_MACHINE} ++UNAME_RELEASE = ${UNAME_RELEASE} ++UNAME_SYSTEM = ${UNAME_SYSTEM} ++UNAME_VERSION = ${UNAME_VERSION} ++EOF ++ ++exit 1 ++ ++# Local variables: ++# eval: (add-hook 'write-file-hooks 'time-stamp) ++# time-stamp-start: "timestamp='" ++# time-stamp-format: "%:y-%02m-%02d" ++# time-stamp-end: "'" ++# End: +diff --git a/contrib/depends/config.site.in b/contrib/depends/config.site.in +new file mode 100644 +index 00000000..11dab898 +--- /dev/null ++++ b/contrib/depends/config.site.in +@@ -0,0 +1,66 @@ ++depends_prefix="`dirname ${ac_site_file}`/.." ++ ++cross_compiling=maybe ++host_alias=@HOST@ ++ac_tool_prefix=${host_alias}- ++ ++if test -z $with_boost; then ++ with_boost=$depends_prefix ++fi ++ ++if test x@host_os@ = xdarwin; then ++ BREW=no ++ PORT=no ++fi ++ ++PATH=$depends_prefix/native/bin:$PATH ++PKG_CONFIG="`which pkg-config` --static" ++ ++# These two need to remain exported because pkg-config does not see them ++# otherwise. That means they must be unexported at the end of configure.ac to ++# avoid ruining the cache. Sigh. ++export PKG_CONFIG_PATH=$depends_prefix/share/pkgconfig:$depends_prefix/lib/pkgconfig ++if test -z "@allow_host_packages@"; then ++ export PKGCONFIG_LIBDIR= ++fi ++ ++CPPFLAGS="-I$depends_prefix/include/ $CPPFLAGS" ++LDFLAGS="-L$depends_prefix/lib $LDFLAGS" ++ ++CC="@CC@" ++CXX="@CXX@" ++OBJC="${CC}" ++CCACHE=$depends_prefix/native/bin/ccache ++PYTHONPATH=$depends_prefix/native/lib/python/dist-packages:$PYTHONPATH ++ ++if test -n "@AR@"; then ++ AR=@AR@ ++ ac_cv_path_ac_pt_AR=${AR} ++fi ++ ++if test -n "@RANLIB@"; then ++ RANLIB=@RANLIB@ ++ ac_cv_path_ac_pt_RANLIB=${RANLIB} ++fi ++ ++if test -n "@NM@"; then ++ NM=@NM@ ++ ac_cv_path_ac_pt_NM=${NM} ++fi ++ ++if test -n "@debug@"; then ++ enable_reduce_exports=no ++fi ++ ++if test -n "@CFLAGS@"; then ++ CFLAGS="@CFLAGS@ $CFLAGS" ++fi ++if test -n "@CXXFLAGS@"; then ++ CXXFLAGS="@CXXFLAGS@ $CXXFLAGS" ++fi ++if test -n "@CPPFLAGS@"; then ++ CPPFLAGS="@CPPFLAGS@ $CPPFLAGS" ++fi ++if test -n "@LDFLAGS@"; then ++ LDFLAGS="@LDFLAGS@ $LDFLAGS" ++fi +diff --git a/contrib/depends/config.sub b/contrib/depends/config.sub +new file mode 100755 +index 00000000..40ea5dfe +--- /dev/null ++++ b/contrib/depends/config.sub +@@ -0,0 +1,1836 @@ ++#! /bin/sh ++# Configuration validation subroutine script. ++# Copyright 1992-2017 Free Software Foundation, Inc. ++ ++timestamp='2017-04-02' ++ ++# This file is free software; you can redistribute it and/or modify it ++# under the terms of the GNU General Public License as published by ++# the Free Software Foundation; either version 3 of the License, or ++# (at your option) any later version. ++# ++# This program is distributed in the hope that it will be useful, but ++# WITHOUT ANY WARRANTY; without even the implied warranty of ++# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU ++# General Public License for more details. ++# ++# You should have received a copy of the GNU General Public License ++# along with this program; if not, see <http://www.gnu.org/licenses/>. ++# ++# As a special exception to the GNU General Public License, if you ++# distribute this file as part of a program that contains a ++# configuration script generated by Autoconf, you may include it under ++# the same distribution terms that you use for the rest of that ++# program. This Exception is an additional permission under section 7 ++# of the GNU General Public License, version 3 ("GPLv3"). ++ ++ ++# Please send patches to <config-patches@gnu.org>. ++# ++# Configuration subroutine to validate and canonicalize a configuration type. ++# Supply the specified configuration type as an argument. ++# If it is invalid, we print an error message on stderr and exit with code 1. ++# Otherwise, we print the canonical config type on stdout and succeed. ++ ++# You can get the latest version of this script from: ++# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub ++ ++# This file is supposed to be the same for all GNU packages ++# and recognize all the CPU types, system types and aliases ++# that are meaningful with *any* GNU software. ++# Each package is responsible for reporting which valid configurations ++# it does not support. The user should be able to distinguish ++# a failure to support a valid configuration from a meaningless ++# configuration. ++ ++# The goal of this file is to map all the various variations of a given ++# machine specification into a single specification in the form: ++# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM ++# or in some cases, the newer four-part form: ++# CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM ++# It is wrong to echo any other type of specification. ++ ++me=`echo "$0" | sed -e 's,.*/,,'` ++ ++usage="\ ++Usage: $0 [OPTION] CPU-MFR-OPSYS or ALIAS ++ ++Canonicalize a configuration name. ++ ++Operation modes: ++ -h, --help print this help, then exit ++ -t, --time-stamp print date of last modification, then exit ++ -v, --version print version number, then exit ++ ++Report bugs and patches to <config-patches@gnu.org>." ++ ++version="\ ++GNU config.sub ($timestamp) ++ ++Copyright 1992-2017 Free Software Foundation, Inc. ++ ++This is free software; see the source for copying conditions. There is NO ++warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE." ++ ++help=" ++Try \`$me --help' for more information." ++ ++# Parse command line ++while test $# -gt 0 ; do ++ case $1 in ++ --time-stamp | --time* | -t ) ++ echo "$timestamp" ; exit ;; ++ --version | -v ) ++ echo "$version" ; exit ;; ++ --help | --h* | -h ) ++ echo "$usage"; exit ;; ++ -- ) # Stop option processing ++ shift; break ;; ++ - ) # Use stdin as input. ++ break ;; ++ -* ) ++ echo "$me: invalid option $1$help" ++ exit 1 ;; ++ ++ *local*) ++ # First pass through any local machine types. ++ echo $1 ++ exit ;; ++ ++ * ) ++ break ;; ++ esac ++done ++ ++case $# in ++ 0) echo "$me: missing argument$help" >&2 ++ exit 1;; ++ 1) ;; ++ *) echo "$me: too many arguments$help" >&2 ++ exit 1;; ++esac ++ ++# Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any). ++# Here we must recognize all the valid KERNEL-OS combinations. ++maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` ++case $maybe_os in ++ nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \ ++ linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \ ++ knetbsd*-gnu* | netbsd*-gnu* | netbsd*-eabi* | \ ++ kopensolaris*-gnu* | cloudabi*-eabi* | \ ++ storm-chaos* | os2-emx* | rtmk-nova*) ++ os=-$maybe_os ++ basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` ++ ;; ++ android-linux) ++ os=-linux-android ++ basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown ++ ;; ++ *) ++ basic_machine=`echo $1 | sed 's/-[^-]*$//'` ++ if [ $basic_machine != $1 ] ++ then os=`echo $1 | sed 's/.*-/-/'` ++ else os=; fi ++ ;; ++esac ++ ++### Let's recognize common machines as not being operating systems so ++### that things like config.sub decstation-3100 work. We also ++### recognize some manufacturers as not being operating systems, so we ++### can provide default operating systems below. ++case $os in ++ -sun*os*) ++ # Prevent following clause from handling this invalid input. ++ ;; ++ -dec* | -mips* | -sequent* | -encore* | -pc532* | -sgi* | -sony* | \ ++ -att* | -7300* | -3300* | -delta* | -motorola* | -sun[234]* | \ ++ -unicom* | -ibm* | -next | -hp | -isi* | -apollo | -altos* | \ ++ -convergent* | -ncr* | -news | -32* | -3600* | -3100* | -hitachi* |\ ++ -c[123]* | -convex* | -sun | -crds | -omron* | -dg | -ultra | -tti* | \ ++ -harris | -dolphin | -highlevel | -gould | -cbm | -ns | -masscomp | \ ++ -apple | -axis | -knuth | -cray | -microblaze*) ++ os= ++ basic_machine=$1 ++ ;; ++ -bluegene*) ++ os=-cnk ++ ;; ++ -sim | -cisco | -oki | -wec | -winbond) ++ os= ++ basic_machine=$1 ++ ;; ++ -scout) ++ ;; ++ -wrs) ++ os=-vxworks ++ basic_machine=$1 ++ ;; ++ -chorusos*) ++ os=-chorusos ++ basic_machine=$1 ++ ;; ++ -chorusrdb) ++ os=-chorusrdb ++ basic_machine=$1 ++ ;; ++ -hiux*) ++ os=-hiuxwe2 ++ ;; ++ -sco6) ++ os=-sco5v6 ++ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ++ ;; ++ -sco5) ++ os=-sco3.2v5 ++ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ++ ;; ++ -sco4) ++ os=-sco3.2v4 ++ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ++ ;; ++ -sco3.2.[4-9]*) ++ os=`echo $os | sed -e 's/sco3.2./sco3.2v/'` ++ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ++ ;; ++ -sco3.2v[4-9]*) ++ # Don't forget version if it is 3.2v4 or newer. ++ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ++ ;; ++ -sco5v6*) ++ # Don't forget version if it is 3.2v4 or newer. ++ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ++ ;; ++ -sco*) ++ os=-sco3.2v2 ++ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ++ ;; ++ -udk*) ++ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ++ ;; ++ -isc) ++ os=-isc2.2 ++ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ++ ;; ++ -clix*) ++ basic_machine=clipper-intergraph ++ ;; ++ -isc*) ++ basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'` ++ ;; ++ -lynx*178) ++ os=-lynxos178 ++ ;; ++ -lynx*5) ++ os=-lynxos5 ++ ;; ++ -lynx*) ++ os=-lynxos ++ ;; ++ -ptx*) ++ basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'` ++ ;; ++ -windowsnt*) ++ os=`echo $os | sed -e 's/windowsnt/winnt/'` ++ ;; ++ -psos*) ++ os=-psos ++ ;; ++ -mint | -mint[0-9]*) ++ basic_machine=m68k-atari ++ os=-mint ++ ;; ++esac ++ ++# Decode aliases for certain CPU-COMPANY combinations. ++case $basic_machine in ++ # Recognize the basic CPU types without company name. ++ # Some are omitted here because they have special meanings below. ++ 1750a | 580 \ ++ | a29k \ ++ | aarch64 | aarch64_be \ ++ | alpha | alphaev[4-8] | alphaev56 | alphaev6[78] | alphapca5[67] \ ++ | alpha64 | alpha64ev[4-8] | alpha64ev56 | alpha64ev6[78] | alpha64pca5[67] \ ++ | am33_2.0 \ ++ | arc | arceb \ ++ | arm | arm[bl]e | arme[lb] | armv[2-8] | armv[3-8][lb] | armv7[arm] \ ++ | avr | avr32 \ ++ | ba \ ++ | be32 | be64 \ ++ | bfin \ ++ | c4x | c8051 | clipper \ ++ | d10v | d30v | dlx | dsp16xx \ ++ | e2k | epiphany \ ++ | fido | fr30 | frv | ft32 \ ++ | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ ++ | hexagon \ ++ | i370 | i860 | i960 | ia16 | ia64 \ ++ | ip2k | iq2000 \ ++ | k1om \ ++ | le32 | le64 \ ++ | lm32 \ ++ | m32c | m32r | m32rle | m68000 | m68k | m88k \ ++ | maxq | mb | microblaze | microblazeel | mcore | mep | metag \ ++ | mips | mipsbe | mipseb | mipsel | mipsle \ ++ | mips16 \ ++ | mips64 | mips64el \ ++ | mips64octeon | mips64octeonel \ ++ | mips64orion | mips64orionel \ ++ | mips64r5900 | mips64r5900el \ ++ | mips64vr | mips64vrel \ ++ | mips64vr4100 | mips64vr4100el \ ++ | mips64vr4300 | mips64vr4300el \ ++ | mips64vr5000 | mips64vr5000el \ ++ | mips64vr5900 | mips64vr5900el \ ++ | mipsisa32 | mipsisa32el \ ++ | mipsisa32r2 | mipsisa32r2el \ ++ | mipsisa32r6 | mipsisa32r6el \ ++ | mipsisa64 | mipsisa64el \ ++ | mipsisa64r2 | mipsisa64r2el \ ++ | mipsisa64r6 | mipsisa64r6el \ ++ | mipsisa64sb1 | mipsisa64sb1el \ ++ | mipsisa64sr71k | mipsisa64sr71kel \ ++ | mipsr5900 | mipsr5900el \ ++ | mipstx39 | mipstx39el \ ++ | mn10200 | mn10300 \ ++ | moxie \ ++ | mt \ ++ | msp430 \ ++ | nds32 | nds32le | nds32be \ ++ | nios | nios2 | nios2eb | nios2el \ ++ | ns16k | ns32k \ ++ | open8 | or1k | or1knd | or32 \ ++ | pdp10 | pdp11 | pj | pjl \ ++ | powerpc | powerpc64 | powerpc64le | powerpcle \ ++ | pru \ ++ | pyramid \ ++ | riscv32 | riscv64 \ ++ | rl78 | rx \ ++ | score \ ++ | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[234]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ ++ | sh64 | sh64le \ ++ | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ ++ | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ ++ | spu \ ++ | tahoe | tic4x | tic54x | tic55x | tic6x | tic80 | tron \ ++ | ubicom32 \ ++ | v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \ ++ | visium \ ++ | wasm32 \ ++ | we32k \ ++ | x86 | xc16x | xstormy16 | xtensa \ ++ | z8k | z80) ++ basic_machine=$basic_machine-unknown ++ ;; ++ c54x) ++ basic_machine=tic54x-unknown ++ ;; ++ c55x) ++ basic_machine=tic55x-unknown ++ ;; ++ c6x) ++ basic_machine=tic6x-unknown ++ ;; ++ leon|leon[3-9]) ++ basic_machine=sparc-$basic_machine ++ ;; ++ m6811 | m68hc11 | m6812 | m68hc12 | m68hcs12x | nvptx | picochip) ++ basic_machine=$basic_machine-unknown ++ os=-none ++ ;; ++ m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k) ++ ;; ++ ms1) ++ basic_machine=mt-unknown ++ ;; ++ ++ strongarm | thumb | xscale) ++ basic_machine=arm-unknown ++ ;; ++ xgate) ++ basic_machine=$basic_machine-unknown ++ os=-none ++ ;; ++ xscaleeb) ++ basic_machine=armeb-unknown ++ ;; ++ ++ xscaleel) ++ basic_machine=armel-unknown ++ ;; ++ ++ # We use `pc' rather than `unknown' ++ # because (1) that's what they normally are, and ++ # (2) the word "unknown" tends to confuse beginning users. ++ i*86 | x86_64) ++ basic_machine=$basic_machine-pc ++ ;; ++ # Object if more than one company name word. ++ *-*-*) ++ echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 ++ exit 1 ++ ;; ++ # Recognize the basic CPU types with company name. ++ 580-* \ ++ | a29k-* \ ++ | aarch64-* | aarch64_be-* \ ++ | alpha-* | alphaev[4-8]-* | alphaev56-* | alphaev6[78]-* \ ++ | alpha64-* | alpha64ev[4-8]-* | alpha64ev56-* | alpha64ev6[78]-* \ ++ | alphapca5[67]-* | alpha64pca5[67]-* | arc-* | arceb-* \ ++ | arm-* | armbe-* | armle-* | armeb-* | armv*-* \ ++ | avr-* | avr32-* \ ++ | ba-* \ ++ | be32-* | be64-* \ ++ | bfin-* | bs2000-* \ ++ | c[123]* | c30-* | [cjt]90-* | c4x-* \ ++ | c8051-* | clipper-* | craynv-* | cydra-* \ ++ | d10v-* | d30v-* | dlx-* \ ++ | e2k-* | elxsi-* \ ++ | f30[01]-* | f700-* | fido-* | fr30-* | frv-* | fx80-* \ ++ | h8300-* | h8500-* \ ++ | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ ++ | hexagon-* \ ++ | i*86-* | i860-* | i960-* | ia16-* | ia64-* \ ++ | ip2k-* | iq2000-* \ ++ | k1om-* \ ++ | le32-* | le64-* \ ++ | lm32-* \ ++ | m32c-* | m32r-* | m32rle-* \ ++ | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ ++ | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \ ++ | microblaze-* | microblazeel-* \ ++ | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ ++ | mips16-* \ ++ | mips64-* | mips64el-* \ ++ | mips64octeon-* | mips64octeonel-* \ ++ | mips64orion-* | mips64orionel-* \ ++ | mips64r5900-* | mips64r5900el-* \ ++ | mips64vr-* | mips64vrel-* \ ++ | mips64vr4100-* | mips64vr4100el-* \ ++ | mips64vr4300-* | mips64vr4300el-* \ ++ | mips64vr5000-* | mips64vr5000el-* \ ++ | mips64vr5900-* | mips64vr5900el-* \ ++ | mipsisa32-* | mipsisa32el-* \ ++ | mipsisa32r2-* | mipsisa32r2el-* \ ++ | mipsisa32r6-* | mipsisa32r6el-* \ ++ | mipsisa64-* | mipsisa64el-* \ ++ | mipsisa64r2-* | mipsisa64r2el-* \ ++ | mipsisa64r6-* | mipsisa64r6el-* \ ++ | mipsisa64sb1-* | mipsisa64sb1el-* \ ++ | mipsisa64sr71k-* | mipsisa64sr71kel-* \ ++ | mipsr5900-* | mipsr5900el-* \ ++ | mipstx39-* | mipstx39el-* \ ++ | mmix-* \ ++ | mt-* \ ++ | msp430-* \ ++ | nds32-* | nds32le-* | nds32be-* \ ++ | nios-* | nios2-* | nios2eb-* | nios2el-* \ ++ | none-* | np1-* | ns16k-* | ns32k-* \ ++ | open8-* \ ++ | or1k*-* \ ++ | orion-* \ ++ | pdp10-* | pdp11-* | pj-* | pjl-* | pn-* | power-* \ ++ | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* \ ++ | pru-* \ ++ | pyramid-* \ ++ | riscv32-* | riscv64-* \ ++ | rl78-* | romp-* | rs6000-* | rx-* \ ++ | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ ++ | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ ++ | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ ++ | sparclite-* \ ++ | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | sv1-* | sx*-* \ ++ | tahoe-* \ ++ | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ ++ | tile*-* \ ++ | tron-* \ ++ | ubicom32-* \ ++ | v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \ ++ | vax-* \ ++ | visium-* \ ++ | wasm32-* \ ++ | we32k-* \ ++ | x86-* | x86_64-* | xc16x-* | xps100-* \ ++ | xstormy16-* | xtensa*-* \ ++ | ymp-* \ ++ | z8k-* | z80-*) ++ ;; ++ # Recognize the basic CPU types without company name, with glob match. ++ xtensa*) ++ basic_machine=$basic_machine-unknown ++ ;; ++ # Recognize the various machine names and aliases which stand ++ # for a CPU type and a company and sometimes even an OS. ++ 386bsd) ++ basic_machine=i386-unknown ++ os=-bsd ++ ;; ++ 3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc) ++ basic_machine=m68000-att ++ ;; ++ 3b*) ++ basic_machine=we32k-att ++ ;; ++ a29khif) ++ basic_machine=a29k-amd ++ os=-udi ++ ;; ++ abacus) ++ basic_machine=abacus-unknown ++ ;; ++ adobe68k) ++ basic_machine=m68010-adobe ++ os=-scout ++ ;; ++ alliant | fx80) ++ basic_machine=fx80-alliant ++ ;; ++ altos | altos3068) ++ basic_machine=m68k-altos ++ ;; ++ am29k) ++ basic_machine=a29k-none ++ os=-bsd ++ ;; ++ amd64) ++ basic_machine=x86_64-pc ++ ;; ++ amd64-*) ++ basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'` ++ ;; ++ amdahl) ++ basic_machine=580-amdahl ++ os=-sysv ++ ;; ++ amiga | amiga-*) ++ basic_machine=m68k-unknown ++ ;; ++ amigaos | amigados) ++ basic_machine=m68k-unknown ++ os=-amigaos ++ ;; ++ amigaunix | amix) ++ basic_machine=m68k-unknown ++ os=-sysv4 ++ ;; ++ apollo68) ++ basic_machine=m68k-apollo ++ os=-sysv ++ ;; ++ apollo68bsd) ++ basic_machine=m68k-apollo ++ os=-bsd ++ ;; ++ aros) ++ basic_machine=i386-pc ++ os=-aros ++ ;; ++ asmjs) ++ basic_machine=asmjs-unknown ++ ;; ++ aux) ++ basic_machine=m68k-apple ++ os=-aux ++ ;; ++ balance) ++ basic_machine=ns32k-sequent ++ os=-dynix ++ ;; ++ blackfin) ++ basic_machine=bfin-unknown ++ os=-linux ++ ;; ++ blackfin-*) ++ basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'` ++ os=-linux ++ ;; ++ bluegene*) ++ basic_machine=powerpc-ibm ++ os=-cnk ++ ;; ++ c54x-*) ++ basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'` ++ ;; ++ c55x-*) ++ basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'` ++ ;; ++ c6x-*) ++ basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'` ++ ;; ++ c90) ++ basic_machine=c90-cray ++ os=-unicos ++ ;; ++ cegcc) ++ basic_machine=arm-unknown ++ os=-cegcc ++ ;; ++ convex-c1) ++ basic_machine=c1-convex ++ os=-bsd ++ ;; ++ convex-c2) ++ basic_machine=c2-convex ++ os=-bsd ++ ;; ++ convex-c32) ++ basic_machine=c32-convex ++ os=-bsd ++ ;; ++ convex-c34) ++ basic_machine=c34-convex ++ os=-bsd ++ ;; ++ convex-c38) ++ basic_machine=c38-convex ++ os=-bsd ++ ;; ++ cray | j90) ++ basic_machine=j90-cray ++ os=-unicos ++ ;; ++ craynv) ++ basic_machine=craynv-cray ++ os=-unicosmp ++ ;; ++ cr16 | cr16-*) ++ basic_machine=cr16-unknown ++ os=-elf ++ ;; ++ crds | unos) ++ basic_machine=m68k-crds ++ ;; ++ crisv32 | crisv32-* | etraxfs*) ++ basic_machine=crisv32-axis ++ ;; ++ cris | cris-* | etrax*) ++ basic_machine=cris-axis ++ ;; ++ crx) ++ basic_machine=crx-unknown ++ os=-elf ++ ;; ++ da30 | da30-*) ++ basic_machine=m68k-da30 ++ ;; ++ decstation | decstation-3100 | pmax | pmax-* | pmin | dec3100 | decstatn) ++ basic_machine=mips-dec ++ ;; ++ decsystem10* | dec10*) ++ basic_machine=pdp10-dec ++ os=-tops10 ++ ;; ++ decsystem20* | dec20*) ++ basic_machine=pdp10-dec ++ os=-tops20 ++ ;; ++ delta | 3300 | motorola-3300 | motorola-delta \ ++ | 3300-motorola | delta-motorola) ++ basic_machine=m68k-motorola ++ ;; ++ delta88) ++ basic_machine=m88k-motorola ++ os=-sysv3 ++ ;; ++ dicos) ++ basic_machine=i686-pc ++ os=-dicos ++ ;; ++ djgpp) ++ basic_machine=i586-pc ++ os=-msdosdjgpp ++ ;; ++ dpx20 | dpx20-*) ++ basic_machine=rs6000-bull ++ os=-bosx ++ ;; ++ dpx2* | dpx2*-bull) ++ basic_machine=m68k-bull ++ os=-sysv3 ++ ;; ++ e500v[12]) ++ basic_machine=powerpc-unknown ++ os=$os"spe" ++ ;; ++ e500v[12]-*) ++ basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` ++ os=$os"spe" ++ ;; ++ ebmon29k) ++ basic_machine=a29k-amd ++ os=-ebmon ++ ;; ++ elxsi) ++ basic_machine=elxsi-elxsi ++ os=-bsd ++ ;; ++ encore | umax | mmax) ++ basic_machine=ns32k-encore ++ ;; ++ es1800 | OSE68k | ose68k | ose | OSE) ++ basic_machine=m68k-ericsson ++ os=-ose ++ ;; ++ fx2800) ++ basic_machine=i860-alliant ++ ;; ++ genix) ++ basic_machine=ns32k-ns ++ ;; ++ gmicro) ++ basic_machine=tron-gmicro ++ os=-sysv ++ ;; ++ go32) ++ basic_machine=i386-pc ++ os=-go32 ++ ;; ++ h3050r* | hiux*) ++ basic_machine=hppa1.1-hitachi ++ os=-hiuxwe2 ++ ;; ++ h8300hms) ++ basic_machine=h8300-hitachi ++ os=-hms ++ ;; ++ h8300xray) ++ basic_machine=h8300-hitachi ++ os=-xray ++ ;; ++ h8500hms) ++ basic_machine=h8500-hitachi ++ os=-hms ++ ;; ++ harris) ++ basic_machine=m88k-harris ++ os=-sysv3 ++ ;; ++ hp300-*) ++ basic_machine=m68k-hp ++ ;; ++ hp300bsd) ++ basic_machine=m68k-hp ++ os=-bsd ++ ;; ++ hp300hpux) ++ basic_machine=m68k-hp ++ os=-hpux ++ ;; ++ hp3k9[0-9][0-9] | hp9[0-9][0-9]) ++ basic_machine=hppa1.0-hp ++ ;; ++ hp9k2[0-9][0-9] | hp9k31[0-9]) ++ basic_machine=m68000-hp ++ ;; ++ hp9k3[2-9][0-9]) ++ basic_machine=m68k-hp ++ ;; ++ hp9k6[0-9][0-9] | hp6[0-9][0-9]) ++ basic_machine=hppa1.0-hp ++ ;; ++ hp9k7[0-79][0-9] | hp7[0-79][0-9]) ++ basic_machine=hppa1.1-hp ++ ;; ++ hp9k78[0-9] | hp78[0-9]) ++ # FIXME: really hppa2.0-hp ++ basic_machine=hppa1.1-hp ++ ;; ++ hp9k8[67]1 | hp8[67]1 | hp9k80[24] | hp80[24] | hp9k8[78]9 | hp8[78]9 | hp9k893 | hp893) ++ # FIXME: really hppa2.0-hp ++ basic_machine=hppa1.1-hp ++ ;; ++ hp9k8[0-9][13679] | hp8[0-9][13679]) ++ basic_machine=hppa1.1-hp ++ ;; ++ hp9k8[0-9][0-9] | hp8[0-9][0-9]) ++ basic_machine=hppa1.0-hp ++ ;; ++ hppa-next) ++ os=-nextstep3 ++ ;; ++ hppaosf) ++ basic_machine=hppa1.1-hp ++ os=-osf ++ ;; ++ hppro) ++ basic_machine=hppa1.1-hp ++ os=-proelf ++ ;; ++ i370-ibm* | ibm*) ++ basic_machine=i370-ibm ++ ;; ++ i*86v32) ++ basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` ++ os=-sysv32 ++ ;; ++ i*86v4*) ++ basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` ++ os=-sysv4 ++ ;; ++ i*86v) ++ basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` ++ os=-sysv ++ ;; ++ i*86sol2) ++ basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'` ++ os=-solaris2 ++ ;; ++ i386mach) ++ basic_machine=i386-mach ++ os=-mach ++ ;; ++ i386-vsta | vsta) ++ basic_machine=i386-unknown ++ os=-vsta ++ ;; ++ iris | iris4d) ++ basic_machine=mips-sgi ++ case $os in ++ -irix*) ++ ;; ++ *) ++ os=-irix4 ++ ;; ++ esac ++ ;; ++ isi68 | isi) ++ basic_machine=m68k-isi ++ os=-sysv ++ ;; ++ leon-*|leon[3-9]-*) ++ basic_machine=sparc-`echo $basic_machine | sed 's/-.*//'` ++ ;; ++ m68knommu) ++ basic_machine=m68k-unknown ++ os=-linux ++ ;; ++ m68knommu-*) ++ basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'` ++ os=-linux ++ ;; ++ m88k-omron*) ++ basic_machine=m88k-omron ++ ;; ++ magnum | m3230) ++ basic_machine=mips-mips ++ os=-sysv ++ ;; ++ merlin) ++ basic_machine=ns32k-utek ++ os=-sysv ++ ;; ++ microblaze*) ++ basic_machine=microblaze-xilinx ++ ;; ++ mingw64) ++ basic_machine=x86_64-pc ++ os=-mingw64 ++ ;; ++ mingw32) ++ basic_machine=i686-pc ++ os=-mingw32 ++ ;; ++ mingw32ce) ++ basic_machine=arm-unknown ++ os=-mingw32ce ++ ;; ++ miniframe) ++ basic_machine=m68000-convergent ++ ;; ++ *mint | -mint[0-9]* | *MiNT | *MiNT[0-9]*) ++ basic_machine=m68k-atari ++ os=-mint ++ ;; ++ mips3*-*) ++ basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'` ++ ;; ++ mips3*) ++ basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown ++ ;; ++ monitor) ++ basic_machine=m68k-rom68k ++ os=-coff ++ ;; ++ morphos) ++ basic_machine=powerpc-unknown ++ os=-morphos ++ ;; ++ moxiebox) ++ basic_machine=moxie-unknown ++ os=-moxiebox ++ ;; ++ msdos) ++ basic_machine=i386-pc ++ os=-msdos ++ ;; ++ ms1-*) ++ basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'` ++ ;; ++ msys) ++ basic_machine=i686-pc ++ os=-msys ++ ;; ++ mvs) ++ basic_machine=i370-ibm ++ os=-mvs ++ ;; ++ nacl) ++ basic_machine=le32-unknown ++ os=-nacl ++ ;; ++ ncr3000) ++ basic_machine=i486-ncr ++ os=-sysv4 ++ ;; ++ netbsd386) ++ basic_machine=i386-unknown ++ os=-netbsd ++ ;; ++ netwinder) ++ basic_machine=armv4l-rebel ++ os=-linux ++ ;; ++ news | news700 | news800 | news900) ++ basic_machine=m68k-sony ++ os=-newsos ++ ;; ++ news1000) ++ basic_machine=m68030-sony ++ os=-newsos ++ ;; ++ news-3600 | risc-news) ++ basic_machine=mips-sony ++ os=-newsos ++ ;; ++ necv70) ++ basic_machine=v70-nec ++ os=-sysv ++ ;; ++ next | m*-next ) ++ basic_machine=m68k-next ++ case $os in ++ -nextstep* ) ++ ;; ++ -ns2*) ++ os=-nextstep2 ++ ;; ++ *) ++ os=-nextstep3 ++ ;; ++ esac ++ ;; ++ nh3000) ++ basic_machine=m68k-harris ++ os=-cxux ++ ;; ++ nh[45]000) ++ basic_machine=m88k-harris ++ os=-cxux ++ ;; ++ nindy960) ++ basic_machine=i960-intel ++ os=-nindy ++ ;; ++ mon960) ++ basic_machine=i960-intel ++ os=-mon960 ++ ;; ++ nonstopux) ++ basic_machine=mips-compaq ++ os=-nonstopux ++ ;; ++ np1) ++ basic_machine=np1-gould ++ ;; ++ neo-tandem) ++ basic_machine=neo-tandem ++ ;; ++ nse-tandem) ++ basic_machine=nse-tandem ++ ;; ++ nsr-tandem) ++ basic_machine=nsr-tandem ++ ;; ++ nsx-tandem) ++ basic_machine=nsx-tandem ++ ;; ++ op50n-* | op60c-*) ++ basic_machine=hppa1.1-oki ++ os=-proelf ++ ;; ++ openrisc | openrisc-*) ++ basic_machine=or32-unknown ++ ;; ++ os400) ++ basic_machine=powerpc-ibm ++ os=-os400 ++ ;; ++ OSE68000 | ose68000) ++ basic_machine=m68000-ericsson ++ os=-ose ++ ;; ++ os68k) ++ basic_machine=m68k-none ++ os=-os68k ++ ;; ++ pa-hitachi) ++ basic_machine=hppa1.1-hitachi ++ os=-hiuxwe2 ++ ;; ++ paragon) ++ basic_machine=i860-intel ++ os=-osf ++ ;; ++ parisc) ++ basic_machine=hppa-unknown ++ os=-linux ++ ;; ++ parisc-*) ++ basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'` ++ os=-linux ++ ;; ++ pbd) ++ basic_machine=sparc-tti ++ ;; ++ pbb) ++ basic_machine=m68k-tti ++ ;; ++ pc532 | pc532-*) ++ basic_machine=ns32k-pc532 ++ ;; ++ pc98) ++ basic_machine=i386-pc ++ ;; ++ pc98-*) ++ basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'` ++ ;; ++ pentium | p5 | k5 | k6 | nexgen | viac3) ++ basic_machine=i586-pc ++ ;; ++ pentiumpro | p6 | 6x86 | athlon | athlon_*) ++ basic_machine=i686-pc ++ ;; ++ pentiumii | pentium2 | pentiumiii | pentium3) ++ basic_machine=i686-pc ++ ;; ++ pentium4) ++ basic_machine=i786-pc ++ ;; ++ pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*) ++ basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'` ++ ;; ++ pentiumpro-* | p6-* | 6x86-* | athlon-*) ++ basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` ++ ;; ++ pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*) ++ basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'` ++ ;; ++ pentium4-*) ++ basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'` ++ ;; ++ pn) ++ basic_machine=pn-gould ++ ;; ++ power) basic_machine=power-ibm ++ ;; ++ ppc | ppcbe) basic_machine=powerpc-unknown ++ ;; ++ ppc-* | ppcbe-*) ++ basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'` ++ ;; ++ ppcle | powerpclittle) ++ basic_machine=powerpcle-unknown ++ ;; ++ ppcle-* | powerpclittle-*) ++ basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'` ++ ;; ++ ppc64) basic_machine=powerpc64-unknown ++ ;; ++ ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'` ++ ;; ++ ppc64le | powerpc64little) ++ basic_machine=powerpc64le-unknown ++ ;; ++ ppc64le-* | powerpc64little-*) ++ basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'` ++ ;; ++ ps2) ++ basic_machine=i386-ibm ++ ;; ++ pw32) ++ basic_machine=i586-unknown ++ os=-pw32 ++ ;; ++ rdos | rdos64) ++ basic_machine=x86_64-pc ++ os=-rdos ++ ;; ++ rdos32) ++ basic_machine=i386-pc ++ os=-rdos ++ ;; ++ rom68k) ++ basic_machine=m68k-rom68k ++ os=-coff ++ ;; ++ rm[46]00) ++ basic_machine=mips-siemens ++ ;; ++ rtpc | rtpc-*) ++ basic_machine=romp-ibm ++ ;; ++ s390 | s390-*) ++ basic_machine=s390-ibm ++ ;; ++ s390x | s390x-*) ++ basic_machine=s390x-ibm ++ ;; ++ sa29200) ++ basic_machine=a29k-amd ++ os=-udi ++ ;; ++ sb1) ++ basic_machine=mipsisa64sb1-unknown ++ ;; ++ sb1el) ++ basic_machine=mipsisa64sb1el-unknown ++ ;; ++ sde) ++ basic_machine=mipsisa32-sde ++ os=-elf ++ ;; ++ sei) ++ basic_machine=mips-sei ++ os=-seiux ++ ;; ++ sequent) ++ basic_machine=i386-sequent ++ ;; ++ sh) ++ basic_machine=sh-hitachi ++ os=-hms ++ ;; ++ sh5el) ++ basic_machine=sh5le-unknown ++ ;; ++ sh64) ++ basic_machine=sh64-unknown ++ ;; ++ sparclite-wrs | simso-wrs) ++ basic_machine=sparclite-wrs ++ os=-vxworks ++ ;; ++ sps7) ++ basic_machine=m68k-bull ++ os=-sysv2 ++ ;; ++ spur) ++ basic_machine=spur-unknown ++ ;; ++ st2000) ++ basic_machine=m68k-tandem ++ ;; ++ stratus) ++ basic_machine=i860-stratus ++ os=-sysv4 ++ ;; ++ strongarm-* | thumb-*) ++ basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'` ++ ;; ++ sun2) ++ basic_machine=m68000-sun ++ ;; ++ sun2os3) ++ basic_machine=m68000-sun ++ os=-sunos3 ++ ;; ++ sun2os4) ++ basic_machine=m68000-sun ++ os=-sunos4 ++ ;; ++ sun3os3) ++ basic_machine=m68k-sun ++ os=-sunos3 ++ ;; ++ sun3os4) ++ basic_machine=m68k-sun ++ os=-sunos4 ++ ;; ++ sun4os3) ++ basic_machine=sparc-sun ++ os=-sunos3 ++ ;; ++ sun4os4) ++ basic_machine=sparc-sun ++ os=-sunos4 ++ ;; ++ sun4sol2) ++ basic_machine=sparc-sun ++ os=-solaris2 ++ ;; ++ sun3 | sun3-*) ++ basic_machine=m68k-sun ++ ;; ++ sun4) ++ basic_machine=sparc-sun ++ ;; ++ sun386 | sun386i | roadrunner) ++ basic_machine=i386-sun ++ ;; ++ sv1) ++ basic_machine=sv1-cray ++ os=-unicos ++ ;; ++ symmetry) ++ basic_machine=i386-sequent ++ os=-dynix ++ ;; ++ t3e) ++ basic_machine=alphaev5-cray ++ os=-unicos ++ ;; ++ t90) ++ basic_machine=t90-cray ++ os=-unicos ++ ;; ++ tile*) ++ basic_machine=$basic_machine-unknown ++ os=-linux-gnu ++ ;; ++ tx39) ++ basic_machine=mipstx39-unknown ++ ;; ++ tx39el) ++ basic_machine=mipstx39el-unknown ++ ;; ++ toad1) ++ basic_machine=pdp10-xkl ++ os=-tops20 ++ ;; ++ tower | tower-32) ++ basic_machine=m68k-ncr ++ ;; ++ tpf) ++ basic_machine=s390x-ibm ++ os=-tpf ++ ;; ++ udi29k) ++ basic_machine=a29k-amd ++ os=-udi ++ ;; ++ ultra3) ++ basic_machine=a29k-nyu ++ os=-sym1 ++ ;; ++ v810 | necv810) ++ basic_machine=v810-nec ++ os=-none ++ ;; ++ vaxv) ++ basic_machine=vax-dec ++ os=-sysv ++ ;; ++ vms) ++ basic_machine=vax-dec ++ os=-vms ++ ;; ++ vpp*|vx|vx-*) ++ basic_machine=f301-fujitsu ++ ;; ++ vxworks960) ++ basic_machine=i960-wrs ++ os=-vxworks ++ ;; ++ vxworks68) ++ basic_machine=m68k-wrs ++ os=-vxworks ++ ;; ++ vxworks29k) ++ basic_machine=a29k-wrs ++ os=-vxworks ++ ;; ++ wasm32) ++ basic_machine=wasm32-unknown ++ ;; ++ w65*) ++ basic_machine=w65-wdc ++ os=-none ++ ;; ++ w89k-*) ++ basic_machine=hppa1.1-winbond ++ os=-proelf ++ ;; ++ xbox) ++ basic_machine=i686-pc ++ os=-mingw32 ++ ;; ++ xps | xps100) ++ basic_machine=xps100-honeywell ++ ;; ++ xscale-* | xscalee[bl]-*) ++ basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'` ++ ;; ++ ymp) ++ basic_machine=ymp-cray ++ os=-unicos ++ ;; ++ z8k-*-coff) ++ basic_machine=z8k-unknown ++ os=-sim ++ ;; ++ z80-*-coff) ++ basic_machine=z80-unknown ++ os=-sim ++ ;; ++ none) ++ basic_machine=none-none ++ os=-none ++ ;; ++ ++# Here we handle the default manufacturer of certain CPU types. It is in ++# some cases the only manufacturer, in others, it is the most popular. ++ w89k) ++ basic_machine=hppa1.1-winbond ++ ;; ++ op50n) ++ basic_machine=hppa1.1-oki ++ ;; ++ op60c) ++ basic_machine=hppa1.1-oki ++ ;; ++ romp) ++ basic_machine=romp-ibm ++ ;; ++ mmix) ++ basic_machine=mmix-knuth ++ ;; ++ rs6000) ++ basic_machine=rs6000-ibm ++ ;; ++ vax) ++ basic_machine=vax-dec ++ ;; ++ pdp10) ++ # there are many clones, so DEC is not a safe bet ++ basic_machine=pdp10-unknown ++ ;; ++ pdp11) ++ basic_machine=pdp11-dec ++ ;; ++ we32k) ++ basic_machine=we32k-att ++ ;; ++ sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) ++ basic_machine=sh-unknown ++ ;; ++ sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) ++ basic_machine=sparc-sun ++ ;; ++ cydra) ++ basic_machine=cydra-cydrome ++ ;; ++ orion) ++ basic_machine=orion-highlevel ++ ;; ++ orion105) ++ basic_machine=clipper-highlevel ++ ;; ++ mac | mpw | mac-mpw) ++ basic_machine=m68k-apple ++ ;; ++ pmac | pmac-mpw) ++ basic_machine=powerpc-apple ++ ;; ++ *-unknown) ++ # Make sure to match an already-canonicalized machine name. ++ ;; ++ *) ++ echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2 ++ exit 1 ++ ;; ++esac ++ ++# Here we canonicalize certain aliases for manufacturers. ++case $basic_machine in ++ *-digital*) ++ basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'` ++ ;; ++ *-commodore*) ++ basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'` ++ ;; ++ *) ++ ;; ++esac ++ ++# Decode manufacturer-specific aliases for certain operating systems. ++ ++if [ x"$os" != x"" ] ++then ++case $os in ++ # First match some system type aliases ++ # that might get confused with valid system types. ++ # -solaris* is a basic system type, with this one exception. ++ -auroraux) ++ os=-auroraux ++ ;; ++ -solaris1 | -solaris1.*) ++ os=`echo $os | sed -e 's|solaris1|sunos4|'` ++ ;; ++ -solaris) ++ os=-solaris2 ++ ;; ++ -svr4*) ++ os=-sysv4 ++ ;; ++ -unixware*) ++ os=-sysv4.2uw ++ ;; ++ -gnu/linux*) ++ os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'` ++ ;; ++ # First accept the basic system types. ++ # The portable systems comes first. ++ # Each alternative MUST END IN A *, to match a version number. ++ # -sysv* is not here because it comes later, after sysvr4. ++ -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ ++ | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\ ++ | -hpux* | -unos* | -osf* | -luna* | -dgux* | -auroraux* | -solaris* \ ++ | -sym* | -kopensolaris* | -plan9* \ ++ | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ ++ | -aos* | -aros* | -cloudabi* | -sortix* \ ++ | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ ++ | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ ++ | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ ++ | -bitrig* | -openbsd* | -solidbsd* | -libertybsd* \ ++ | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \ ++ | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ ++ | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ ++ | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ ++ | -chorusos* | -chorusrdb* | -cegcc* | -glidix* \ ++ | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ ++ | -midipix* | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \ ++ | -linux-newlib* | -linux-musl* | -linux-uclibc* \ ++ | -uxpv* | -beos* | -mpeix* | -udk* | -moxiebox* \ ++ | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \ ++ | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \ ++ | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \ ++ | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \ ++ | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \ ++ | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \ ++ | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* \ ++ | -onefs* | -tirtos* | -phoenix* | -fuchsia* | -redox*) ++ # Remember, each alternative MUST END IN *, to match a version number. ++ ;; ++ -qnx*) ++ case $basic_machine in ++ x86-* | i*86-*) ++ ;; ++ *) ++ os=-nto$os ++ ;; ++ esac ++ ;; ++ -nto-qnx*) ++ ;; ++ -nto*) ++ os=`echo $os | sed -e 's|nto|nto-qnx|'` ++ ;; ++ -sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \ ++ | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \ ++ | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*) ++ ;; ++ -mac*) ++ os=`echo $os | sed -e 's|mac|macos|'` ++ ;; ++ -linux-dietlibc) ++ os=-linux-dietlibc ++ ;; ++ -linux*) ++ os=`echo $os | sed -e 's|linux|linux-gnu|'` ++ ;; ++ -sunos5*) ++ os=`echo $os | sed -e 's|sunos5|solaris2|'` ++ ;; ++ -sunos6*) ++ os=`echo $os | sed -e 's|sunos6|solaris3|'` ++ ;; ++ -opened*) ++ os=-openedition ++ ;; ++ -os400*) ++ os=-os400 ++ ;; ++ -wince*) ++ os=-wince ++ ;; ++ -osfrose*) ++ os=-osfrose ++ ;; ++ -osf*) ++ os=-osf ++ ;; ++ -utek*) ++ os=-bsd ++ ;; ++ -dynix*) ++ os=-bsd ++ ;; ++ -acis*) ++ os=-aos ++ ;; ++ -atheos*) ++ os=-atheos ++ ;; ++ -syllable*) ++ os=-syllable ++ ;; ++ -386bsd) ++ os=-bsd ++ ;; ++ -ctix* | -uts*) ++ os=-sysv ++ ;; ++ -nova*) ++ os=-rtmk-nova ++ ;; ++ -ns2 ) ++ os=-nextstep2 ++ ;; ++ -nsk*) ++ os=-nsk ++ ;; ++ # Preserve the version number of sinix5. ++ -sinix5.*) ++ os=`echo $os | sed -e 's|sinix|sysv|'` ++ ;; ++ -sinix*) ++ os=-sysv4 ++ ;; ++ -tpf*) ++ os=-tpf ++ ;; ++ -triton*) ++ os=-sysv3 ++ ;; ++ -oss*) ++ os=-sysv3 ++ ;; ++ -svr4) ++ os=-sysv4 ++ ;; ++ -svr3) ++ os=-sysv3 ++ ;; ++ -sysvr4) ++ os=-sysv4 ++ ;; ++ # This must come after -sysvr4. ++ -sysv*) ++ ;; ++ -ose*) ++ os=-ose ++ ;; ++ -es1800*) ++ os=-ose ++ ;; ++ -xenix) ++ os=-xenix ++ ;; ++ -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) ++ os=-mint ++ ;; ++ -aros*) ++ os=-aros ++ ;; ++ -zvmoe) ++ os=-zvmoe ++ ;; ++ -dicos*) ++ os=-dicos ++ ;; ++ -nacl*) ++ ;; ++ -ios) ++ ;; ++ -none) ++ ;; ++ *) ++ # Get rid of the `-' at the beginning of $os. ++ os=`echo $os | sed 's/[^-]*-//'` ++ echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2 ++ exit 1 ++ ;; ++esac ++else ++ ++# Here we handle the default operating systems that come with various machines. ++# The value should be what the vendor currently ships out the door with their ++# machine or put another way, the most popular os provided with the machine. ++ ++# Note that if you're going to try to match "-MANUFACTURER" here (say, ++# "-sun"), then you have to tell the case statement up towards the top ++# that MANUFACTURER isn't an operating system. Otherwise, code above ++# will signal an error saying that MANUFACTURER isn't an operating ++# system, and we'll never get to this point. ++ ++case $basic_machine in ++ score-*) ++ os=-elf ++ ;; ++ spu-*) ++ os=-elf ++ ;; ++ *-acorn) ++ os=-riscix1.2 ++ ;; ++ arm*-rebel) ++ os=-linux ++ ;; ++ arm*-semi) ++ os=-aout ++ ;; ++ c4x-* | tic4x-*) ++ os=-coff ++ ;; ++ c8051-*) ++ os=-elf ++ ;; ++ hexagon-*) ++ os=-elf ++ ;; ++ tic54x-*) ++ os=-coff ++ ;; ++ tic55x-*) ++ os=-coff ++ ;; ++ tic6x-*) ++ os=-coff ++ ;; ++ # This must come before the *-dec entry. ++ pdp10-*) ++ os=-tops20 ++ ;; ++ pdp11-*) ++ os=-none ++ ;; ++ *-dec | vax-*) ++ os=-ultrix4.2 ++ ;; ++ m68*-apollo) ++ os=-domain ++ ;; ++ i386-sun) ++ os=-sunos4.0.2 ++ ;; ++ m68000-sun) ++ os=-sunos3 ++ ;; ++ m68*-cisco) ++ os=-aout ++ ;; ++ mep-*) ++ os=-elf ++ ;; ++ mips*-cisco) ++ os=-elf ++ ;; ++ mips*-*) ++ os=-elf ++ ;; ++ or32-*) ++ os=-coff ++ ;; ++ *-tti) # must be before sparc entry or we get the wrong os. ++ os=-sysv3 ++ ;; ++ sparc-* | *-sun) ++ os=-sunos4.1.1 ++ ;; ++ pru-*) ++ os=-elf ++ ;; ++ *-be) ++ os=-beos ++ ;; ++ *-haiku) ++ os=-haiku ++ ;; ++ *-ibm) ++ os=-aix ++ ;; ++ *-knuth) ++ os=-mmixware ++ ;; ++ *-wec) ++ os=-proelf ++ ;; ++ *-winbond) ++ os=-proelf ++ ;; ++ *-oki) ++ os=-proelf ++ ;; ++ *-hp) ++ os=-hpux ++ ;; ++ *-hitachi) ++ os=-hiux ++ ;; ++ i860-* | *-att | *-ncr | *-altos | *-motorola | *-convergent) ++ os=-sysv ++ ;; ++ *-cbm) ++ os=-amigaos ++ ;; ++ *-dg) ++ os=-dgux ++ ;; ++ *-dolphin) ++ os=-sysv3 ++ ;; ++ m68k-ccur) ++ os=-rtu ++ ;; ++ m88k-omron*) ++ os=-luna ++ ;; ++ *-next ) ++ os=-nextstep ++ ;; ++ *-sequent) ++ os=-ptx ++ ;; ++ *-crds) ++ os=-unos ++ ;; ++ *-ns) ++ os=-genix ++ ;; ++ i370-*) ++ os=-mvs ++ ;; ++ *-next) ++ os=-nextstep3 ++ ;; ++ *-gould) ++ os=-sysv ++ ;; ++ *-highlevel) ++ os=-bsd ++ ;; ++ *-encore) ++ os=-bsd ++ ;; ++ *-sgi) ++ os=-irix ++ ;; ++ *-siemens) ++ os=-sysv4 ++ ;; ++ *-masscomp) ++ os=-rtu ++ ;; ++ f30[01]-fujitsu | f700-fujitsu) ++ os=-uxpv ++ ;; ++ *-rom68k) ++ os=-coff ++ ;; ++ *-*bug) ++ os=-coff ++ ;; ++ *-apple) ++ os=-macos ++ ;; ++ *-atari*) ++ os=-mint ++ ;; ++ *) ++ os=-none ++ ;; ++esac ++fi ++ ++# Here we handle the case where we know the os, and the CPU type, but not the ++# manufacturer. We pick the logical manufacturer. ++vendor=unknown ++case $basic_machine in ++ *-unknown) ++ case $os in ++ -riscix*) ++ vendor=acorn ++ ;; ++ -sunos*) ++ vendor=sun ++ ;; ++ -cnk*|-aix*) ++ vendor=ibm ++ ;; ++ -beos*) ++ vendor=be ++ ;; ++ -hpux*) ++ vendor=hp ++ ;; ++ -mpeix*) ++ vendor=hp ++ ;; ++ -hiux*) ++ vendor=hitachi ++ ;; ++ -unos*) ++ vendor=crds ++ ;; ++ -dgux*) ++ vendor=dg ++ ;; ++ -luna*) ++ vendor=omron ++ ;; ++ -genix*) ++ vendor=ns ++ ;; ++ -mvs* | -opened*) ++ vendor=ibm ++ ;; ++ -os400*) ++ vendor=ibm ++ ;; ++ -ptx*) ++ vendor=sequent ++ ;; ++ -tpf*) ++ vendor=ibm ++ ;; ++ -vxsim* | -vxworks* | -windiss*) ++ vendor=wrs ++ ;; ++ -aux*) ++ vendor=apple ++ ;; ++ -hms*) ++ vendor=hitachi ++ ;; ++ -mpw* | -macos*) ++ vendor=apple ++ ;; ++ -*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*) ++ vendor=atari ++ ;; ++ -vos*) ++ vendor=stratus ++ ;; ++ esac ++ basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"` ++ ;; ++esac ++ ++echo $basic_machine$os ++exit ++ ++# Local variables: ++# eval: (add-hook 'write-file-hooks 'time-stamp) ++# time-stamp-start: "timestamp='" ++# time-stamp-format: "%:y-%02m-%02d" ++# time-stamp-end: "'" ++# End: +diff --git a/contrib/depends/description.md b/contrib/depends/description.md +new file mode 100644 +index 00000000..74f9ef3f +--- /dev/null ++++ b/contrib/depends/description.md +@@ -0,0 +1,53 @@ ++This is a system of building and caching dependencies necessary for building Bitcoin. ++There are several features that make it different from most similar systems: ++ ++### It is designed to be builder and host agnostic ++ ++In theory, binaries for any target OS/architecture can be created, from a ++builder running any OS/architecture. In practice, build-side tools must be ++specified when the defaults don't fit, and packages must be amended to work ++on new hosts. For now, a build architecture of x86_64 is assumed, either on ++Linux or OSX. ++ ++### No reliance on timestamps ++ ++File presence is used to determine what needs to be built. This makes the ++results distributable and easily digestable by automated builders. ++ ++### Each build only has its specified dependencies available at build-time. ++ ++For each build, the sysroot is wiped and the (recursive) dependencies are ++installed. This makes each build deterministic, since there will never be any ++unknown files available to cause side-effects. ++ ++### Each package is cached and only rebuilt as needed. ++ ++Before building, a unique build-id is generated for each package. This id ++consists of a hash of all files used to build the package (Makefiles, packages, ++etc), and as well as a hash of the same data for each recursive dependency. If ++any portion of a package's build recipe changes, it will be rebuilt as well as ++any other package that depends on it. If any of the main makefiles (Makefile, ++funcs.mk, etc) are changed, all packages will be rebuilt. After building, the ++results are cached into a tarball that can be re-used and distributed. ++ ++### Package build results are (relatively) deterministic. ++ ++Each package is configured and patched so that it will yield the same ++build-results with each consequent build, within a reasonable set of ++constraints. Some things like timestamp insertion are unavoidable, and are ++beyond the scope of this system. Additionally, the toolchain itself must be ++capable of deterministic results. When revisions are properly bumped, a cached ++build should represent an exact single payload. ++ ++### Sources are fetched and verified automatically ++ ++Each package must define its source location and checksum. The build will fail ++if the fetched source does not match. Sources may be pre-seeded and/or cached ++as desired. ++ ++### Self-cleaning ++ ++Build and staging dirs are wiped after use, and any previous version of a ++cached result is removed following a successful build. Automated builders ++should be able to build each revision and store the results with no further ++intervention. +diff --git a/contrib/depends/funcs.mk b/contrib/depends/funcs.mk +new file mode 100644 +index 00000000..e08669c9 +--- /dev/null ++++ b/contrib/depends/funcs.mk +@@ -0,0 +1,270 @@ ++define int_vars ++#Set defaults for vars which may be overridden per-package ++$(1)_cc=$($($(1)_type)_CC) ++$(1)_cxx=$($($(1)_type)_CXX) ++$(1)_objc=$($($(1)_type)_OBJC) ++$(1)_objcxx=$($($(1)_type)_OBJCXX) ++$(1)_ar=$($($(1)_type)_AR) ++$(1)_ranlib=$($($(1)_type)_RANLIB) ++$(1)_libtool=$($($(1)_type)_LIBTOOL) ++$(1)_nm=$($($(1)_type)_NM) ++$(1)_cflags=$($($(1)_type)_CFLAGS) $($($(1)_type)_$(release_type)_CFLAGS) ++$(1)_cxxflags=$($($(1)_type)_CXXFLAGS) $($($(1)_type)_$(release_type)_CXXFLAGS) ++$(1)_arflags=$($($(1)_type)_ARFLAGS) $($($(1)_type)_$(release_type)_ARFLAGS) ++$(1)_ldflags=$($($(1)_type)_LDFLAGS) $($($(1)_type)_$(release_type)_LDFLAGS) -L$($($(1)_type)_prefix)/lib ++$(1)_cppflags=$($($(1)_type)_CPPFLAGS) $($($(1)_type)_$(release_type)_CPPFLAGS) -I$($($(1)_type)_prefix)/include ++$(1)_recipe_hash:= ++endef ++ ++define int_get_all_dependencies ++$(sort $(foreach dep,$(2),$(2) $(call int_get_all_dependencies,$(1),$($(dep)_dependencies)))) ++endef ++ ++define fetch_file_inner ++ ( mkdir -p $$($(1)_download_dir) && echo Fetching $(3) from $(2) && \ ++ $(build_DOWNLOAD) "$$($(1)_download_dir)/$(4).temp" "$(2)/$(3)" && \ ++ echo "$(5) $$($(1)_download_dir)/$(4).temp" > $$($(1)_download_dir)/.$(4).hash && \ ++ $(build_SHA256SUM) -c $$($(1)_download_dir)/.$(4).hash && \ ++ mv $$($(1)_download_dir)/$(4).temp $$($(1)_source_dir)/$(4) && \ ++ rm -rf $$($(1)_download_dir) ) ++endef ++ ++define fetch_file ++ ( test -f $$($(1)_source_dir)/$(4) || \ ++ ( $(call fetch_file_inner,$(1),$(2),$(3),$(4),$(5)) || \ ++ $(call fetch_file_inner,$(1),$(FALLBACK_DOWNLOAD_PATH),$(4),$(4),$(5)))) ++endef ++ ++define int_get_build_recipe_hash ++$(eval $(1)_all_file_checksums:=$(shell $(build_SHA256SUM) $(meta_depends) packages/$(1).mk $(addprefix $(PATCHES_PATH)/$(1)/,$($(1)_patches)) | cut -d" " -f1)) ++$(eval $(1)_recipe_hash:=$(shell echo -n "$($(1)_all_file_checksums)" | $(build_SHA256SUM) | cut -d" " -f1)) ++endef ++ ++define int_get_build_id ++$(eval $(1)_dependencies += $($(1)_$(host_arch)_$(host_os)_dependencies) $($(1)_$(host_os)_dependencies)) ++$(eval $(1)_all_dependencies:=$(call int_get_all_dependencies,$(1),$($($(1)_type)_native_toolchain) $($(1)_dependencies))) ++$(foreach dep,$($(1)_all_dependencies),$(eval $(1)_build_id_deps+=$(dep)-$($(dep)_version)-$($(dep)_recipe_hash))) ++$(eval $(1)_build_id_long:=$(1)-$($(1)_version)-$($(1)_recipe_hash)-$(release_type) $($(1)_build_id_deps) $($($(1)_type)_id_string)) ++$(eval $(1)_build_id:=$(shell echo -n "$($(1)_build_id_long)" | $(build_SHA256SUM) | cut -c-$(HASH_LENGTH))) ++final_build_id_long+=$($(package)_build_id_long) ++ ++#compute package-specific paths ++$(1)_build_subdir?=. ++$(1)_download_file?=$($(1)_file_name) ++$(1)_source_dir:=$(SOURCES_PATH) ++$(1)_source:=$$($(1)_source_dir)/$($(1)_file_name) ++$(1)_staging_dir=$(base_staging_dir)/$(host)/$(1)/$($(1)_version)-$($(1)_build_id) ++$(1)_staging_prefix_dir:=$$($(1)_staging_dir)$($($(1)_type)_prefix) ++$(1)_extract_dir:=$(base_build_dir)/$(host)/$(1)/$($(1)_version)-$($(1)_build_id) ++$(1)_download_dir:=$(base_download_dir)/$(1)-$($(1)_version) ++$(1)_build_dir:=$$($(1)_extract_dir)/$$($(1)_build_subdir) ++$(1)_cached_checksum:=$(BASE_CACHE)/$(host)/$(1)/$(1)-$($(1)_version)-$($(1)_build_id).tar.gz.hash ++$(1)_patch_dir:=$(base_build_dir)/$(host)/$(1)/$($(1)_version)-$($(1)_build_id)/.patches-$($(1)_build_id) ++$(1)_prefixbin:=$($($(1)_type)_prefix)/bin/ ++$(1)_cached:=$(BASE_CACHE)/$(host)/$(1)/$(1)-$($(1)_version)-$($(1)_build_id).tar.gz ++$(1)_all_sources=$($(1)_file_name) $($(1)_extra_sources) ++ ++#stamps ++$(1)_fetched=$(SOURCES_PATH)/download-stamps/.stamp_fetched-$(1)-$($(1)_file_name).hash ++$(1)_extracted=$$($(1)_extract_dir)/.stamp_extracted ++$(1)_preprocessed=$$($(1)_extract_dir)/.stamp_preprocessed ++$(1)_cleaned=$$($(1)_extract_dir)/.stamp_cleaned ++$(1)_built=$$($(1)_build_dir)/.stamp_built ++$(1)_configured=$$($(1)_build_dir)/.stamp_configured ++$(1)_staged=$$($(1)_staging_dir)/.stamp_staged ++$(1)_postprocessed=$$($(1)_staging_prefix_dir)/.stamp_postprocessed ++$(1)_download_path_fixed=$(subst :,\:,$$($(1)_download_path)) ++ ++ ++#default commands ++$(1)_fetch_cmds ?= $(call fetch_file,$(1),$(subst \:,:,$$($(1)_download_path_fixed)),$$($(1)_download_file),$($(1)_file_name),$($(1)_sha256_hash)) ++$(1)_extract_cmds ?= mkdir -p $$($(1)_extract_dir) && echo "$$($(1)_sha256_hash) $$($(1)_source)" > $$($(1)_extract_dir)/.$$($(1)_file_name).hash && $(build_SHA256SUM) -c $$($(1)_extract_dir)/.$$($(1)_file_name).hash && tar --strip-components=1 -xf $$($(1)_source) ++$(1)_preprocess_cmds ?= ++$(1)_build_cmds ?= ++$(1)_config_cmds ?= ++$(1)_stage_cmds ?= ++$(1)_set_vars ?= ++ ++ ++all_sources+=$$($(1)_fetched) ++endef ++#$(foreach dep_target,$($(1)_all_dependencies),$(eval $(1)_dependency_targets=$($(dep_target)_cached))) ++ ++ ++define int_config_attach_build_config ++$(eval $(call $(1)_set_vars,$(1))) ++$(1)_cflags+=$($(1)_cflags_$(release_type)) ++$(1)_cflags+=$($(1)_cflags_$(host_arch)) $($(1)_cflags_$(host_arch)_$(release_type)) ++$(1)_cflags+=$($(1)_cflags_$(host_os)) $($(1)_cflags_$(host_os)_$(release_type)) ++$(1)_cflags+=$($(1)_cflags_$(host_arch)_$(host_os)) $($(1)_cflags_$(host_arch)_$(host_os)_$(release_type)) ++ ++$(1)_cxxflags+=$($(1)_cxxflags_$(release_type)) ++$(1)_cxxflags+=$($(1)_cxxflags_$(host_arch)) $($(1)_cxxflags_$(host_arch)_$(release_type)) ++$(1)_cxxflags+=$($(1)_cxxflags_$(host_os)) $($(1)_cxxflags_$(host_os)_$(release_type)) ++$(1)_cxxflags+=$($(1)_cxxflags_$(host_arch)_$(host_os)) $($(1)_cxxflags_$(host_arch)_$(host_os)_$(release_type)) ++ ++$(1)_arflags+=$($(1)_arflags_$(release_type)) ++$(1)_arflags+=$($(1)_arflags_$(host_arch)) $($(1)_arflags_$(host_arch)_$(release_type)) ++$(1)_arflags+=$($(1)_arflags_$(host_os)) $($(1)_arflags_$(host_os)_$(release_type)) ++$(1)_arflags+=$($(1)_arflags_$(host_arch)_$(host_os)) $($(1)_arflags_$(host_arch)_$(host_os)_$(release_type)) ++ ++$(1)_cppflags+=$($(1)_cppflags_$(release_type)) ++$(1)_cppflags+=$($(1)_cppflags_$(host_arch)) $($(1)_cppflags_$(host_arch)_$(release_type)) ++$(1)_cppflags+=$($(1)_cppflags_$(host_os)) $($(1)_cppflags_$(host_os)_$(release_type)) ++$(1)_cppflags+=$($(1)_cppflags_$(host_arch)_$(host_os)) $($(1)_cppflags_$(host_arch)_$(host_os)_$(release_type)) ++ ++$(1)_ldflags+=$($(1)_ldflags_$(release_type)) ++$(1)_ldflags+=$($(1)_ldflags_$(host_arch)) $($(1)_ldflags_$(host_arch)_$(release_type)) ++$(1)_ldflags+=$($(1)_ldflags_$(host_os)) $($(1)_ldflags_$(host_os)_$(release_type)) ++$(1)_ldflags+=$($(1)_ldflags_$(host_arch)_$(host_os)) $($(1)_ldflags_$(host_arch)_$(host_os)_$(release_type)) ++ ++$(1)_build_opts+=$$($(1)_build_opts_$(release_type)) ++$(1)_build_opts+=$$($(1)_build_opts_$(host_arch)) $$($(1)_build_opts_$(host_arch)_$(release_type)) ++$(1)_build_opts+=$$($(1)_build_opts_$(host_os)) $$($(1)_build_opts_$(host_os)_$(release_type)) ++$(1)_build_opts+=$$($(1)_build_opts_$(host_arch)_$(host_os)) $$($(1)_build_opts_$(host_arch)_$(host_os)_$(release_type)) ++ ++$(1)_config_opts+=$$($(1)_config_opts_$(release_type)) ++$(1)_config_opts+=$$($(1)_config_opts_$(host_arch)) $$($(1)_config_opts_$(host_arch)_$(release_type)) ++$(1)_config_opts+=$$($(1)_config_opts_$(host_os)) $$($(1)_config_opts_$(host_os)_$(release_type)) ++$(1)_config_opts+=$$($(1)_config_opts_$(host_arch)_$(host_os)) $$($(1)_config_opts_$(host_arch)_$(host_os)_$(release_type)) ++ ++$(1)_config_env+=$$($(1)_config_env_$(release_type)) ++$(1)_config_env+=$($(1)_config_env_$(host_arch)) $($(1)_config_env_$(host_arch)_$(release_type)) ++$(1)_config_env+=$($(1)_config_env_$(host_os)) $($(1)_config_env_$(host_os)_$(release_type)) ++$(1)_config_env+=$($(1)_config_env_$(host_arch)_$(host_os)) $($(1)_config_env_$(host_arch)_$(host_os)_$(release_type)) ++ ++$(1)_build_env+=$$($(1)_build_env_$(release_type)) ++$(1)_build_env+=$($(1)_build_env_$(host_arch)) $($(1)_build_env_$(host_arch)_$(release_type)) ++$(1)_build_env+=$($(1)_build_env_$(host_os)) $($(1)_build_env_$(host_os)_$(release_type)) ++$(1)_build_env+=$($(1)_build_env_$(host_arch)_$(host_os)) $($(1)_build_env_$(host_arch)_$(host_os)_$(release_type)) ++ ++$(1)_config_env+=PKG_CONFIG_LIBDIR=$($($(1)_type)_prefix)/lib/pkgconfig ++$(1)_config_env+=PKG_CONFIG_PATH=$($($(1)_type)_prefix)/share/pkgconfig ++$(1)_config_env+=PATH="$(build_prefix)/bin:$(PATH)" ++$(1)_build_env+=PATH="$(build_prefix)/bin:$(PATH)" ++$(1)_stage_env+=PATH="$(build_prefix)/bin:$(PATH)" ++$(1)_autoconf=./configure --host=$($($(1)_type)_host) --prefix=$($($(1)_type)_prefix) $$($(1)_config_opts) CC="$$($(1)_cc)" CXX="$$($(1)_cxx)" ++ ++ifeq ($(filter $(1),libusb unbound),) ++$(1)_autoconf += --disable-dependency-tracking ++endif ++ifneq ($($(1)_nm),) ++$(1)_autoconf += NM="$$($(1)_nm)" ++endif ++ifneq ($($(1)_ranlib),) ++$(1)_autoconf += RANLIB="$$($(1)_ranlib)" ++endif ++ifneq ($($(1)_ar),) ++$(1)_autoconf += AR="$$($(1)_ar)" ++endif ++ifneq ($($(1)_arflags),) ++$(1)_autoconf += ARFLAGS="$$($(1)_arflags)" ++endif ++ifneq ($($(1)_cflags),) ++$(1)_autoconf += CFLAGS="$$($(1)_cflags)" ++endif ++ifneq ($($(1)_cxxflags),) ++$(1)_autoconf += CXXFLAGS="$$($(1)_cxxflags)" ++endif ++ifneq ($($(1)_cppflags),) ++$(1)_autoconf += CPPFLAGS="$$($(1)_cppflags)" ++endif ++ifneq ($($(1)_ldflags),) ++$(1)_autoconf += LDFLAGS="$$($(1)_ldflags)" ++endif ++endef ++ ++define int_add_cmds ++$($(1)_fetched): ++ $(AT)mkdir -p $$(@D) $(SOURCES_PATH) ++ $(AT)rm -f $$@ ++ $(AT)touch $$@ ++ $(AT)cd $$(@D); $(call $(1)_fetch_cmds,$(1)) ++ $(AT)cd $($(1)_source_dir); $(foreach source,$($(1)_all_sources),$(build_SHA256SUM) $(source) >> $$(@);) ++ $(AT)touch $$@ ++$($(1)_extracted): | $($(1)_fetched) ++ $(AT)echo Extracting $(1)... ++ $(AT)mkdir -p $$(@D) ++ $(AT)cd $$(@D); $(call $(1)_extract_cmds,$(1)) ++ $(AT)touch $$@ ++$($(1)_preprocessed): | $($(1)_dependencies) $($(1)_extracted) ++ $(AT)echo Preprocessing $(1)... ++ $(AT)mkdir -p $$(@D) $($(1)_patch_dir) ++ $(AT)$(foreach patch,$($(1)_patches),cd $(PATCHES_PATH)/$(1); cp $(patch) $($(1)_patch_dir) ;) ++ $(AT)cd $$(@D); $(call $(1)_preprocess_cmds, $(1)) ++ $(AT)touch $$@ ++$($(1)_configured): | $($(1)_preprocessed) ++ $(AT)echo Configuring $(1)... ++ $(AT)rm -rf $(host_prefix); mkdir -p $(host_prefix)/lib; cd $(host_prefix); $(foreach package,$($(1)_all_dependencies), tar xf $($(package)_cached); ) ++ $(AT)mkdir -p $$(@D) ++ $(AT)+cd $$(@D); $($(1)_config_env) $(call $(1)_config_cmds, $(1)) ++ $(AT)touch $$@ ++$($(1)_built): | $($(1)_configured) ++ $(AT)echo Building $(1)... ++ $(AT)mkdir -p $$(@D) ++ $(AT)+cd $$(@D); $($(1)_build_env) $(call $(1)_build_cmds, $(1)) ++ $(AT)touch $$@ ++$($(1)_staged): | $($(1)_built) ++ $(AT)echo Staging $(1)... ++ $(AT)mkdir -p $($(1)_staging_dir)/$(host_prefix) ++ $(AT)cd $($(1)_build_dir); $($(1)_stage_env) $(call $(1)_stage_cmds, $(1)) ++ $(AT)rm -rf $($(1)_extract_dir) ++ $(AT)touch $$@ ++$($(1)_postprocessed): | $($(1)_staged) ++ $(AT)echo Postprocessing $(1)... ++ $(AT)cd $($(1)_staging_prefix_dir); $(call $(1)_postprocess_cmds) ++ $(AT)touch $$@ ++$($(1)_cached): | $($(1)_dependencies) $($(1)_postprocessed) ++ $(AT)echo Caching $(1)... ++ $(AT)cd $$($(1)_staging_dir)/$(host_prefix); find . | sort | tar --no-recursion -czf $$($(1)_staging_dir)/$$(@F) -T - ++ $(AT)mkdir -p $$(@D) ++ $(AT)rm -rf $$(@D) && mkdir -p $$(@D) ++ $(AT)mv $$($(1)_staging_dir)/$$(@F) $$(@) ++ $(AT)rm -rf $($(1)_staging_dir) ++$($(1)_cached_checksum): $($(1)_cached) ++ $(AT)cd $$(@D); $(build_SHA256SUM) $$(<F) > $$(@) ++ ++.PHONY: $(1) ++$(1): | $($(1)_cached_checksum) ++.SECONDARY: $($(1)_cached) $($(1)_postprocessed) $($(1)_staged) $($(1)_built) $($(1)_configured) $($(1)_preprocessed) $($(1)_extracted) $($(1)_fetched) ++ ++endef ++ ++stages = fetched extracted preprocessed configured built staged postprocessed cached cached_checksum ++ ++define ext_add_stages ++$(foreach stage,$(stages), ++ $(1)_$(stage): $($(1)_$(stage)) ++ .PHONY: $(1)_$(stage)) ++endef ++ ++# These functions create the build targets for each package. They must be ++# broken down into small steps so that each part is done for all packages ++# before moving on to the next step. Otherwise, a package's info ++# (build-id for example) would only be available to another package if it ++# happened to be computed already. ++ ++#set the type for host/build packages. ++$(foreach native_package,$(native_packages),$(eval $(native_package)_type=build)) ++$(foreach package,$(packages),$(eval $(package)_type=$(host_arch)_$(host_os))) ++ ++#set overridable defaults ++$(foreach package,$(all_packages),$(eval $(call int_vars,$(package)))) ++ ++#include package files ++$(foreach package,$(all_packages),$(eval include packages/$(package).mk)) ++ ++#compute a hash of all files that comprise this package's build recipe ++$(foreach package,$(all_packages),$(eval $(call int_get_build_recipe_hash,$(package)))) ++ ++#generate a unique id for this package, incorporating its dependencies as well ++$(foreach package,$(all_packages),$(eval $(call int_get_build_id,$(package)))) ++ ++#compute final vars after reading package vars ++$(foreach package,$(all_packages),$(eval $(call int_config_attach_build_config,$(package)))) ++ ++#create build targets ++$(foreach package,$(all_packages),$(eval $(call int_add_cmds,$(package)))) ++ ++#special exception: if a toolchain package exists, all non-native packages depend on it ++$(foreach package,$(packages),$(eval $($(package)_unpacked): |$($($(host_arch)_$(host_os)_native_toolchain)_cached) )) +diff --git a/contrib/depends/hosts/android.mk b/contrib/depends/hosts/android.mk +new file mode 100644 +index 00000000..d6f8b99d +--- /dev/null ++++ b/contrib/depends/hosts/android.mk +@@ -0,0 +1,22 @@ ++ANDROID_API=21 ++ ++ifeq ($(host_arch),arm) ++host_toolchain=arm-linux-androideabi- ++endif ++ ++android_CC=$(host_toolchain)clang ++android_CXX=$(host_toolchain)clang++ ++android_RANLIB=: ++ ++android_CFLAGS=-pipe ++android_CXXFLAGS=$(android_CFLAGS) ++android_ARFLAGS=crsD ++ ++android_release_CFLAGS=-O2 ++android_release_CXXFLAGS=$(android_release_CFLAGS) ++ ++android_debug_CFLAGS=-g -O0 ++android_debug_CXXFLAGS=$(android_debug_CFLAGS) ++ ++android_native_toolchain=android_ndk ++ +diff --git a/contrib/depends/hosts/darwin.mk b/contrib/depends/hosts/darwin.mk +new file mode 100644 +index 00000000..cbe79508 +--- /dev/null ++++ b/contrib/depends/hosts/darwin.mk +@@ -0,0 +1,23 @@ ++OSX_MIN_VERSION=10.8 ++LD64_VERSION=609 ++ifeq (aarch64, $(host_arch)) ++CC_target=arm64-apple-$(host_os) ++else ++CC_target=$(host) ++endif ++darwin_CC=clang -target $(CC_target) -mmacosx-version-min=$(OSX_MIN_VERSION) --sysroot $(host_prefix)/native/SDK/ -mlinker-version=$(LD64_VERSION) -B$(host_prefix)/native/bin/$(host)- ++darwin_CXX=clang++ -target $(CC_target) -mmacosx-version-min=$(OSX_MIN_VERSION) --sysroot $(host_prefix)/native/SDK/ -mlinker-version=$(LD64_VERSION) -stdlib=libc++ -B$(host_prefix)/native/bin/$(host)- ++ ++darwin_RANLIB=$(host_prefix)/native/bin/$(host)-ranlib ++ ++darwin_CFLAGS=-pipe ++darwin_CXXFLAGS=$(darwin_CFLAGS) ++darwin_ARFLAGS=cr ++ ++darwin_release_CFLAGS=-O1 ++darwin_release_CXXFLAGS=$(darwin_release_CFLAGS) ++ ++darwin_debug_CFLAGS=-O1 ++darwin_debug_CXXFLAGS=$(darwin_debug_CFLAGS) ++ ++darwin_native_toolchain=native_cctools darwin_sdk +diff --git a/contrib/depends/hosts/default.mk b/contrib/depends/hosts/default.mk +new file mode 100644 +index 00000000..2e7f9fa2 +--- /dev/null ++++ b/contrib/depends/hosts/default.mk +@@ -0,0 +1,26 @@ ++default_host_CC = $(host_toolchain)gcc ++default_host_CXX = $(host_toolchain)g++ ++default_host_AR = $(host_toolchain)ar ++default_host_RANLIB = $(host_toolchain)ranlib ++default_host_STRIP = $(host_toolchain)strip ++default_host_LIBTOOL = $(host_toolchain)libtool ++default_host_INSTALL_NAME_TOOL = $(host_toolchain)install_name_tool ++default_host_OTOOL = $(host_toolchain)otool ++default_host_NM = $(host_toolchain)nm ++ ++define add_host_tool_func ++$(host_os)_$1?=$$(default_host_$1) ++$(host_arch)_$(host_os)_$1?=$$($(host_os)_$1) ++$(host_arch)_$(host_os)_$(release_type)_$1?=$$($(host_os)_$1) ++host_$1=$$($(host_arch)_$(host_os)_$1) ++endef ++ ++define add_host_flags_func ++$(host_arch)_$(host_os)_$1 += $($(host_os)_$1) ++$(host_arch)_$(host_os)_$(release_type)_$1 += $($(host_os)_$(release_type)_$1) ++host_$1 = $$($(host_arch)_$(host_os)_$1) ++host_$(release_type)_$1 = $$($(host_arch)_$(host_os)_$(release_type)_$1) ++endef ++ ++$(foreach tool,CC CXX AR RANLIB STRIP NM LIBTOOL OTOOL INSTALL_NAME_TOOL,$(eval $(call add_host_tool_func,$(tool)))) ++$(foreach flags,CFLAGS CXXFLAGS ARFLAGS CPPFLAGS LDFLAGS, $(eval $(call add_host_flags_func,$(flags)))) +diff --git a/contrib/depends/hosts/freebsd.mk b/contrib/depends/hosts/freebsd.mk +new file mode 100644 +index 00000000..2e3b5933 +--- /dev/null ++++ b/contrib/depends/hosts/freebsd.mk +@@ -0,0 +1,18 @@ ++freebsd_CC=clang-8 ++freebsd_CXX=clang++-8 ++freebsd_AR=ar ++freebsd_RANLIB=ranlib ++freebsd_NM=nm ++ ++freebsd_CFLAGS=-pipe ++freebsd_CXXFLAGS=$(freebsd_CFLAGS) ++freebsd_ARFLAGS=cr ++ ++freebsd_release_CFLAGS=-O2 ++freebsd_release_CXXFLAGS=$(freebsd_release_CFLAGS) ++ ++freebsd_debug_CFLAGS=-g -O0 ++freebsd_debug_CXXFLAGS=$(freebsd_debug_CFLAGS) ++ ++freebsd_native_toolchain=freebsd_base ++ +diff --git a/contrib/depends/hosts/linux.mk b/contrib/depends/hosts/linux.mk +new file mode 100644 +index 00000000..b79799f3 +--- /dev/null ++++ b/contrib/depends/hosts/linux.mk +@@ -0,0 +1,32 @@ ++linux_CFLAGS=-pipe ++linux_CXXFLAGS=$(linux_CFLAGS) ++linux_ARFLAGS=cr ++ ++linux_release_CFLAGS=-O2 ++linux_release_CXXFLAGS=$(linux_release_CFLAGS) ++ ++linux_debug_CFLAGS=-O1 ++linux_debug_CXXFLAGS=$(linux_debug_CFLAGS) ++ ++linux_debug_CPPFLAGS=-D_GLIBCXX_DEBUG -D_GLIBCXX_DEBUG_PEDANTIC ++ ++ifeq (86,$(findstring 86,$(build_arch))) ++i686_linux_CC=i686-linux-gnu-gcc ++i686_linux_CXX=i686-linux-gnu-g++ ++i686_linux_AR=ar ++i686_linux_RANLIB=ranlib ++i686_linux_NM=nm ++i686_linux_STRIP=strip ++ ++x86_64_linux_CC=x86_64-linux-gnu-gcc ++x86_64_linux_CXX=x86_64-linux-gnu-g++ ++x86_64_linux_AR=ar ++x86_64_linux_RANLIB=ranlib ++x86_64_linux_NM=nm ++x86_64_linux_STRIP=strip ++else ++i686_linux_CC=$(default_host_CC) -m32 ++i686_linux_CXX=$(default_host_CXX) -m32 ++x86_64_linux_CC=$(default_host_CC) -m64 ++x86_64_linux_CXX=$(default_host_CXX) -m64 ++endif +diff --git a/contrib/depends/hosts/mingw32.mk b/contrib/depends/hosts/mingw32.mk +new file mode 100644 +index 00000000..ccc4c508 +--- /dev/null ++++ b/contrib/depends/hosts/mingw32.mk +@@ -0,0 +1,11 @@ ++mingw32_CFLAGS=-pipe ++mingw32_CXXFLAGS=$(mingw32_CFLAGS) ++mingw32_ARFLAGS=cr ++ ++mingw32_release_CFLAGS=-O2 ++mingw32_release_CXXFLAGS=$(mingw32_release_CFLAGS) ++ ++mingw32_debug_CFLAGS=-O1 ++mingw32_debug_CXXFLAGS=$(mingw32_debug_CFLAGS) ++ ++mingw32_debug_CPPFLAGS=-D_GLIBCXX_DEBUG -D_GLIBCXX_DEBUG_PEDANTIC +diff --git a/contrib/depends/packages.md b/contrib/depends/packages.md +new file mode 100644 +index 00000000..ae5b4732 +--- /dev/null ++++ b/contrib/depends/packages.md +@@ -0,0 +1,165 @@ ++Each recipe consists of 3 main parts: defining identifiers, setting build ++variables, and defining build commands. ++ ++The package "mylib" will be used here as an example ++ ++General tips: ++- mylib_foo is written as $(package)_foo in order to make recipes more similar. ++ ++## Identifiers ++Each package is required to define at least these variables: ++ ++``` ++$(package)_version: ++Version of the upstream library or program. If there is no version, a ++placeholder such as 1.0 can be used. ++ ++$(package)_download_path: ++Location of the upstream source, without the file-name. Usually http or ++ftp. ++ ++$(package)_file_name: ++The upstream source filename available at the download path. ++ ++$(package)_sha256_hash: ++The sha256 hash of the upstream file ++``` ++ ++These variables are optional: ++ ++``` ++$(package)_build_subdir: ++cd to this dir before running configure/build/stage commands. ++ ++$(package)_download_file: ++The file-name of the upstream source if it differs from how it should be ++stored locally. This can be used to avoid storing file-names with strange ++characters. ++ ++$(package)_dependencies: ++Names of any other packages that this one depends on. ++ ++$(package)_patches: ++Filenames of any patches needed to build the package ++ ++$(package)_extra_sources: ++Any extra files that will be fetched via $(package)_fetch_cmds. These are ++specified so that they can be fetched and verified via 'make download'. ++``` ++ ++ ++## Build Variables: ++After defining the main identifiers, build variables may be added or customized ++before running the build commands. They should be added to a function called ++$(package)_set_vars. For example: ++ ++``` ++define $(package)_set_vars ++... ++endef ++``` ++ ++Most variables can be prefixed with the host, architecture, or both, to make ++the modifications specific to that case. For example: ++ ++``` ++Universal: $(package)_cc=gcc ++Linux only: $(package)_linux_cc=gcc ++x86_64 only: $(package)_x86_64_cc = gcc ++x86_64 linux only: $(package)_x86_64_linux_cc = gcc ++``` ++ ++These variables may be set to override or append their default values. ++ ++``` ++$(package)_cc ++$(package)_cxx ++$(package)_objc ++$(package)_objcxx ++$(package)_ar ++$(package)_ranlib ++$(package)_libtool ++$(package)_nm ++$(package)_cflags ++$(package)_cxxflags ++$(package)_ldflags ++$(package)_cppflags ++$(package)_config_env ++$(package)_build_env ++$(package)_stage_env ++$(package)_build_opts ++$(package)_config_opts ++``` ++ ++The `*_env` variables are used to add environment variables to the respective ++commands. ++ ++Many variables respect a debug/release suffix as well, in order to use them for ++only the appropriate build config. For example: ++ ++``` ++$(package)_cflags_release = -O3 ++$(package)_cflags_i686_debug = -g ++$(package)_config_opts_release = --disable-debug ++``` ++ ++These will be used in addition to the options that do not specify ++debug/release. All builds are considered to be release unless DEBUG=1 is set by ++the user. Other variables may be defined as needed. ++ ++## Build commands: ++ ++For each build, a unique build dir and staging dir are created. For example, ++`work/build/mylib/1.0-1adac830f6e` and `work/staging/mylib/1.0-1adac830f6e`. ++ ++The following build commands are available for each recipe: ++ ++``` ++$(package)_fetch_cmds: ++Runs from: build dir ++Fetch the source file. If undefined, it will be fetched and verified ++against its hash. ++ ++$(package)_extract_cmds: ++Runs from: build dir ++Verify the source file against its hash and extract it. If undefined, the ++source is assumed to be a tarball. ++ ++$(package)_preprocess_cmds: ++Runs from: build dir/$(package)_build_subdir ++Preprocess the source as necessary. If undefined, does nothing. ++ ++$(package)_config_cmds: ++Runs from: build dir/$(package)_build_subdir ++Configure the source. If undefined, does nothing. ++ ++$(package)_build_cmds: ++Runs from: build dir/$(package)_build_subdir ++Build the source. If undefined, does nothing. ++ ++$(package)_stage_cmds: ++Runs from: build dir/$(package)_build_subdir ++Stage the build results. If undefined, does nothing. ++``` ++ ++The following variables are available for each recipe: ++ ++``` ++$(1)_staging_dir: package's destination sysroot path ++$(1)_staging_prefix_dir: prefix path inside of the package's staging dir ++$(1)_extract_dir: path to the package's extracted sources ++$(1)_build_dir: path where configure/build/stage commands will be run ++$(1)_patch_dir: path where the package's patches (if any) are found ++``` ++ ++Notes on build commands: ++ ++For packages built with autotools, `$($(package)_autoconf)` can be used in the ++configure step to (usually) correctly configure automatically. Any ++`$($(package)_config_opts`) will be appended. ++ ++Most autotools projects can be properly staged using: ++ ++```bash ++$(MAKE) DESTDIR=$($(package)_staging_dir) install ++``` +diff --git a/contrib/depends/packages/android_ndk.mk b/contrib/depends/packages/android_ndk.mk +new file mode 100644 +index 00000000..5deff76c +--- /dev/null ++++ b/contrib/depends/packages/android_ndk.mk +@@ -0,0 +1,24 @@ ++package=android_ndk ++$(package)_version=17b ++$(package)_download_path=https://dl.google.com/android/repository/ ++$(package)_file_name=android-ndk-r$($(package)_version)-linux-x86_64.zip ++$(package)_sha256_hash=5dfbbdc2d3ba859fed90d0e978af87c71a91a5be1f6e1c40ba697503d48ccecd ++ ++define $(package)_set_vars ++$(package)_config_opts_arm=--arch arm ++$(package)_config_opts_aarch64=--arch arm64 ++$(package)_config_opts_x86_64=--arch x86_64 ++$(package)_config_opts_i686=--arch x86 ++endef ++ ++define $(package)_extract_cmds ++ echo $($(package)_sha256_hash) $($(1)_source_dir)/$($(package)_file_name) | sha256sum -c &&\ ++ unzip -q $($(1)_source_dir)/$($(package)_file_name) ++endef ++ ++define $(package)_stage_cmds ++ android-ndk-r$($(package)_version)/build/tools/make_standalone_toolchain.py --api 21 \ ++ --install-dir $(build_prefix) --stl=libc++ $($(package)_config_opts) &&\ ++ mv $(build_prefix) $($(package)_staging_dir)/$(host_prefix) ++endef ++ +diff --git a/contrib/depends/packages/boost.mk b/contrib/depends/packages/boost.mk +new file mode 100644 +index 00000000..c7544e6a +--- /dev/null ++++ b/contrib/depends/packages/boost.mk +@@ -0,0 +1,49 @@ ++package=boost ++$(package)_version=1_70_0 ++$(package)_download_path=https://downloads.sourceforge.net/project/boost/boost/1.70.0/ ++$(package)_file_name=$(package)_$($(package)_version).tar.bz2 ++$(package)_sha256_hash=430ae8354789de4fd19ee52f3b1f739e1fba576f0aded0897c3c2bc00fb38778 ++$(package)_dependencies=libiconv ++$(package)_patches=fix_aroptions.patch fix_arm_arch.patch fix_pthread_win.patch fix_pthread.patch ++ ++define $(package)_set_vars ++$(package)_config_opts_release=variant=release ++$(package)_config_opts_debug=variant=debug ++$(package)_config_opts=--layout=tagged --build-type=complete --user-config=user-config.jam ++$(package)_config_opts+=threading=multi link=static -sNO_BZIP2=1 -sNO_ZLIB=1 ++$(package)_config_opts_linux=threadapi=pthread runtime-link=static ++$(package)_config_opts_android=threadapi=pthread runtime-link=static target-os=android ++$(package)_config_opts_darwin=--toolset=darwin runtime-link=static ++$(package)_config_opts_mingw32=binary-format=pe target-os=windows threadapi=win32 runtime-link=static ++$(package)_config_opts_x86_64_mingw32=address-model=64 ++$(package)_config_opts_i686_mingw32=address-model=32 ++$(package)_config_opts_i686_linux=address-model=32 architecture=x86 ++$(package)_toolset_$(host_os)=gcc ++$(package)_archiver_$(host_os)=$($(package)_ar) ++$(package)_toolset_darwin=darwin ++$(package)_archiver_darwin=$($(package)_libtool) ++$(package)_config_libraries=system,filesystem,thread,timer,date_time,chrono,regex,serialization,atomic,program_options,locale,log ++$(package)_cxxflags=-std=c++11 ++$(package)_cxxflags_linux=-fPIC ++$(package)_cxxflags_freebsd=-fPIC ++endef ++ ++define $(package)_preprocess_cmds ++ patch -p1 < $($(package)_patch_dir)/fix_aroptions.patch &&\ ++ patch -p1 < $($(package)_patch_dir)/fix_arm_arch.patch &&\ ++ patch -p1 < $($(package)_patch_dir)/fix_pthread_win.patch &&\ ++ patch -p1 < $($(package)_patch_dir)/fix_pthread.patch &&\ ++ echo "using $(boost_toolset_$(host_os)) : : $($(package)_cxx) : <cxxflags>\"$($(package)_cxxflags) $($(package)_cppflags)\" <linkflags>\"$($(package)_ldflags)\" <archiver>\"$(boost_archiver_$(host_os))\" <arflags>\"$($(package)_arflags)\" <striper>\"$(host_STRIP)\" <ranlib>\"$(host_RANLIB)\" <rc>\"$(host_WINDRES)\" : ;" > user-config.jam ++endef ++ ++define $(package)_config_cmds ++ ./bootstrap.sh --without-icu --with-libraries=$(boost_config_libraries) ++endef ++ ++define $(package)_build_cmds ++ ./b2 -d2 -j2 -d1 --prefix=$($(package)_staging_prefix_dir) $($(package)_config_opts) stage ++endef ++ ++define $(package)_stage_cmds ++ ./b2 -d0 -j4 --prefix=$($(package)_staging_prefix_dir) $($(package)_config_opts) install ++endef +diff --git a/contrib/depends/packages/darwin_sdk.mk b/contrib/depends/packages/darwin_sdk.mk +new file mode 100644 +index 00000000..d639c422 +--- /dev/null ++++ b/contrib/depends/packages/darwin_sdk.mk +@@ -0,0 +1,10 @@ ++package=darwin_sdk ++$(package)_version=11.1 ++$(package)_download_path=https://github.com/phracker/MacOSX-SDKs/releases/download/11.3/ ++$(package)_file_name=MacOSX$($(package)_version).sdk.tar.xz ++$(package)_sha256_hash=68797baaacb52f56f713400de306a58a7ca00b05c3dc6d58f0a8283bcac721f8 ++ ++define $(package)_stage_cmds ++ mkdir -p $($(package)_staging_dir)/$(host_prefix)/native/SDK &&\ ++ mv * $($(package)_staging_dir)/$(host_prefix)/native/SDK ++endef +diff --git a/contrib/depends/packages/eudev.mk b/contrib/depends/packages/eudev.mk +new file mode 100644 +index 00000000..6b6887e9 +--- /dev/null ++++ b/contrib/depends/packages/eudev.mk +@@ -0,0 +1,30 @@ ++package=eudev ++$(package)_version=v3.2.6 ++$(package)_download_path=https://github.com/gentoo/eudev/archive/ ++$(package)_download_file=$($(package)_version).tar.gz ++$(package)_file_name=$(package)-$($(package)_version).tar.gz ++$(package)_sha256_hash=a96ecb8637667897b8bd4dee4c22c7c5f08b327be45186e912ce6bc768385852 ++ ++define $(package)_set_vars ++ $(package)_config_opts=--disable-gudev --disable-introspection --disable-hwdb --disable-manpages --disable-shared ++endef ++ ++define $(package)_config_cmds ++ $($(package)_autoconf) AR_FLAGS=$($(package)_arflags) ++endef ++ ++define $(package)_build_cmd ++ $(MAKE) ++endef ++ ++define $(package)_preprocess_cmds ++ cd $($(package)_build_subdir); autoreconf -f -i ++endef ++ ++define $(package)_stage_cmds ++ $(MAKE) DESTDIR=$($(package)_staging_dir) install ++endef ++ ++define $(package)_postprocess_cmds ++ rm lib/*.la ++endef +diff --git a/contrib/depends/packages/expat.mk b/contrib/depends/packages/expat.mk +new file mode 100644 +index 00000000..59024517 +--- /dev/null ++++ b/contrib/depends/packages/expat.mk +@@ -0,0 +1,28 @@ ++package=expat ++$(package)_version=2.6.0 ++$(package)_download_path=https://github.com/libexpat/libexpat/releases/download/R_$(subst .,_,$($(package)_version))/ ++$(package)_file_name=$(package)-$($(package)_version).tar.bz2 ++$(package)_sha256_hash=ff60e6a6b6ce570ae012dc7b73169c7fdf4b6bf08c12ed0ec6f55736b78d85ba ++ ++define $(package)_set_vars ++$(package)_config_opts=--disable-shared --without-docbook --without-tests --without-examples ++$(package)_config_opts+=--enable-option-checking --without-xmlwf --with-pic ++$(package)_config_opts+=--prefix=$(host_prefix) ++endef ++ ++define $(package)_config_cmds ++ $($(package)_autoconf) ++endef ++ ++define $(package)_build_cmds ++ $(MAKE) ++endef ++ ++define $(package)_stage_cmds ++ $(MAKE) DESTDIR=$($(package)_staging_dir) install ++endef ++ ++define $(package)_postprocess_cmds ++ rm -rf share lib/cmake lib/*.la ++endef ++ +diff --git a/contrib/depends/packages/freebsd_base.mk b/contrib/depends/packages/freebsd_base.mk +new file mode 100644 +index 00000000..ad9975f8 +--- /dev/null ++++ b/contrib/depends/packages/freebsd_base.mk +@@ -0,0 +1,23 @@ ++package=freebsd_base ++$(package)_version=11.3 ++$(package)_download_path=https://download.freebsd.org/ftp/releases/amd64/$($(package)_version)-RELEASE/ ++$(package)_download_file=base.txz ++$(package)_file_name=freebsd-base-$($(package)_version).txz ++$(package)_sha256_hash=4599023ac136325b86f2fddeec64c1624daa83657e40b00b2ef944c81463a4ff ++ ++define $(package)_extract_cmds ++ echo $($(package)_sha256_hash) $($(1)_source_dir)/$($(package)_file_name) | sha256sum -c &&\ ++ tar xf $($(1)_source_dir)/$($(package)_file_name) ./lib/ ./usr/lib/ ./usr/include/ ++endef ++ ++define $(package)_build_cmds ++ mkdir bin &&\ ++ echo "#!/bin/sh\n\nexec /usr/bin/clang-8 -target x86_64-unknown-freebsd$($(package)_version) --sysroot=$(host_prefix)/native $$$$""@" > bin/clang-8 &&\ ++ echo "#!/bin/sh\n\nexec /usr/bin/clang++-8 -target x86_64-unknown-freebsd$($(package)_version) --sysroot=$(host_prefix)/native $$$$""@" > bin/clang++-8 &&\ ++ chmod 755 bin/* ++endef ++ ++define $(package)_stage_cmds ++ mkdir $($(package)_staging_dir)/$(host_prefix)/native &&\ ++ mv bin lib usr $($(package)_staging_dir)/$(host_prefix)/native ++endef +diff --git a/contrib/depends/packages/graphviz.mk b/contrib/depends/packages/graphviz.mk +new file mode 100644 +index 00000000..1c4bc1b7 +--- /dev/null ++++ b/contrib/depends/packages/graphviz.mk +@@ -0,0 +1,30 @@ ++package=graphviz ++$(package)_version=2.40.1 ++$(package)_download_path=www.graphviz.org/pub/graphviz/stable/SOURCES/ ++$(package)_file_name=$(package)-$($(package)_version).tar.gz ++$(package)_sha256_hash=ca5218fade0204d59947126c38439f432853543b0818d9d728c589dfe7f3a421 ++ ++define $(package)_preprocess_cmds ++ ./autogen.sh ++endef ++ ++define $(package)_set_vars ++ $(package)_config_opts=--disable-shared --enable-multibye --without-purify --without-curses ++ $(package)_config_opts_release=--disable-debug-mode ++ $(package)_config_opts_linux=--with-pic ++endef ++ ++define $(package)_config_cmds ++ $($(package)_autoconf) ++endef ++ ++define $(package)_build_cmds ++ $(MAKE) ++endef ++ ++define $(package)_stage_cmds ++ $(MAKE) DESTDIR=$($(package)_staging_dir) install ++endef ++ ++define $(package)_postprocess_cmds ++endef +diff --git a/contrib/depends/packages/gtest.mk b/contrib/depends/packages/gtest.mk +new file mode 100644 +index 00000000..1208d7c0 +--- /dev/null ++++ b/contrib/depends/packages/gtest.mk +@@ -0,0 +1,39 @@ ++package=gtest ++$(package)_version=1.8.1 ++$(package)_download_path=https://github.com/google/googletest/archive/ ++$(package)_download_file=release-$($(package)_version).tar.gz ++$(package)_file_name=$(package)-$($(package)_version).tar.gz ++$(package)_sha256_hash=9bf1fe5182a604b4135edc1a425ae356c9ad15e9b23f9f12a02e80184c3a249c ++$(package)_cxxflags=-std=c++11 ++$(package)_cxxflags_linux=-fPIC ++ ++define $(package)_config_cmds ++ cd googletest && \ ++ CC="$(host_prefix)/native/bin/$($(package)_cc)" \ ++ CXX="$(host_prefix)/native/bin/$($(package)_cxx)" \ ++ AR="$(host_prefix)/native/bin/$($(package)_ar)" \ ++ RANLIB="$(host_prefix)/native/bin/$($(package)_ranlib)" \ ++ LIBTOOL="$(host_prefix)/native/bin/$($(package)_libtool)" \ ++ CXXFLAGS="$($(package)_cxxflags)" \ ++ CCFLAGS="$($(package)_ccflags)" \ ++ CPPFLAGS="$($(package)_cppflags)" \ ++ CFLAGS="$($(package)_cflags) $($(package)_cppflags)" \ ++ LDLAGS="$($(package)_ldflags)" \ ++ cmake -DCMAKE_INSTALL_PREFIX=$(build_prefix) \ ++ -DTOOLCHAIN_PREFIX=$(host_toolchain) \ ++ -DCMAKE_AR="$(host_prefix)/native/bin/$($(package)_ar)" \ ++ -DCMAKE_RANLIB="$(host_prefix)/native/bin/$($(package)_ranlib)" \ ++ -DCMAKE_CXX_FLAGS_DEBUG=ON ++endef ++# -DCMAKE_TOOLCHAIN_FILE=$(HOST)/share/toolchain.cmake ++ ++define $(package)_build_cmds ++ cd googletest && CC="$(host_prefix)/native/bin/$($(package)_cc)" $(MAKE) ++endef ++ ++define $(package)_stage_cmds ++ mkdir $($(package)_staging_prefix_dir)/lib $($(package)_staging_prefix_dir)/include &&\ ++ cp googletest/libgtest.a $($(package)_staging_prefix_dir)/lib/ &&\ ++ cp googletest/libgtest_main.a $($(package)_staging_prefix_dir)/lib/ &&\ ++ cp -a googletest/include/* $($(package)_staging_prefix_dir)/include/ ++endef +diff --git a/contrib/depends/packages/hidapi.mk b/contrib/depends/packages/hidapi.mk +new file mode 100644 +index 00000000..64935a36 +--- /dev/null ++++ b/contrib/depends/packages/hidapi.mk +@@ -0,0 +1,38 @@ ++package=hidapi ++$(package)_version=0.13.1 ++$(package)_download_path=https://github.com/libusb/hidapi/archive/refs/tags ++$(package)_file_name=$(package)-$($(package)_version).tar.gz ++$(package)_sha256_hash=476a2c9a4dc7d1fc97dd223b84338dbea3809a84caea2dcd887d9778725490e3 ++$(package)_linux_dependencies=libusb eudev ++$(package)_patches=missing_win_include.patch ++ ++define $(package)_set_vars ++$(package)_config_opts=--enable-static --disable-shared ++$(package)_config_opts+=--prefix=$(host_prefix) ++$(package)_config_opts_linux+=libudev_LIBS="-L$(host_prefix)/lib -ludev" ++$(package)_config_opts_linux+=libudev_CFLAGS=-I$(host_prefix)/include ++$(package)_config_opts_linux+=libusb_LIBS="-L$(host_prefix)/lib -lusb-1.0" ++$(package)_config_opts_linux+=libusb_CFLAGS=-I$(host_prefix)/include/libusb-1.0 ++$(package)_config_opts_linux+=--with-pic ++endef ++ ++define $(package)_preprocess_cmds ++ patch -p1 < $($(package)_patch_dir)/missing_win_include.patch && ./bootstrap ++endef ++ ++define $(package)_config_cmds ++ $($(package)_autoconf) AR_FLAGS=$($(package)_arflags) ++endef ++ ++define $(package)_build_cmds ++ $(MAKE) ++endef ++ ++define $(package)_stage_cmds ++ $(MAKE) DESTDIR=$($(package)_staging_dir) install ++endef ++ ++define $(package)_postprocess_cmds ++ rm lib/*.la ++endef ++ +diff --git a/contrib/depends/packages/icu4c.mk b/contrib/depends/packages/icu4c.mk +new file mode 100644 +index 00000000..58ae637b +--- /dev/null ++++ b/contrib/depends/packages/icu4c.mk +@@ -0,0 +1,27 @@ ++package=icu4c ++$(package)_version=55.2 ++$(package)_download_path=https://github.com/unicode-org/icu/releases/download/release-55-2/ ++$(package)_file_name=$(package)-55_2-src.tgz ++$(package)_sha256_hash=eda2aa9f9c787748a2e2d310590720ca8bcc6252adf6b4cfb03b65bef9d66759 ++$(package)_patches=icu-001-dont-build-static-dynamic-twice.patch ++ ++define $(package)_set_vars ++ $(package)_build_opts=CFLAGS="$($(package)_cflags) $($(package)_cppflags) -DU_USING_ICU_NAMESPACE=0 -DU_STATIC_IMPLEMENTATION -DU_COMBINED_IMPLEMENTATION -fPIC -DENABLE_STATIC=YES -DPGKDATA_MODE=static" ++endef ++ ++define $(package)_config_cmds ++ patch -p1 < $($(package)_patch_dir)/icu-001-dont-build-static-dynamic-twice.patch &&\ ++ mkdir builda &&\ ++ mkdir buildb &&\ ++ cd builda &&\ ++ sh ../source/runConfigureICU Linux &&\ ++ make &&\ ++ cd ../buildb &&\ ++ sh ../source/runConfigureICU MinGW --enable-static=yes --disable-shared --disable-layout --disable-layoutex --disable-tests --disable-samples --prefix=$(host_prefix) --with-cross-build=`pwd`/../builda &&\ ++ $(MAKE) $($(package)_build_opts) ++endef ++ ++define $(package)_stage_cmds ++ cd buildb &&\ ++ $(MAKE) $($(package)_build_opts) DESTDIR=$($(package)_staging_dir) install lib/* ++endef +diff --git a/contrib/depends/packages/libICE.mk b/contrib/depends/packages/libICE.mk +new file mode 100644 +index 00000000..a897d9ae +--- /dev/null ++++ b/contrib/depends/packages/libICE.mk +@@ -0,0 +1,23 @@ ++package=libICE ++$(package)_version=1.0.9 ++$(package)_download_path=https://xorg.freedesktop.org/releases/individual/lib/ ++$(package)_file_name=$(package)-$($(package)_version).tar.bz2 ++$(package)_sha256_hash=8f7032f2c1c64352b5423f6b48a8ebdc339cc63064af34d66a6c9aa79759e202 ++$(package)_dependencies=xtrans xproto ++ ++define $(package)_set_vars ++ $(package)_config_opts=--disable-static --disable-docs --disable-specs --without-xsltproc ++ $(package)_config_opts_linux=--with-pic ++endef ++ ++define $(package)_config_cmds ++ $($(package)_autoconf) ++endef ++ ++define $(package)_build_cmds ++ $(MAKE) ++endef ++ ++define $(package)_stage_cmds ++ $(MAKE) DESTDIR=$($(package)_staging_dir) install ++endef +diff --git a/contrib/depends/packages/libSM.mk b/contrib/depends/packages/libSM.mk +new file mode 100644 +index 00000000..83fcd4cd +--- /dev/null ++++ b/contrib/depends/packages/libSM.mk +@@ -0,0 +1,23 @@ ++package=libSM ++$(package)_version=1.2.2 ++$(package)_download_path=https://xorg.freedesktop.org/releases/individual/lib/ ++$(package)_file_name=$(package)-$($(package)_version).tar.bz2 ++$(package)_sha256_hash=0baca8c9f5d934450a70896c4ad38d06475521255ca63b717a6510fdb6e287bd ++$(package)_dependencies=xtrans xproto libICE ++ ++define $(package)_set_vars ++ $(package)_config_opts=--without-libuuid --without-xsltproc --disable-docs --disable-static ++ $(package)_config_opts_linux=--with-pic ++endef ++ ++define $(package)_config_cmds ++ $($(package)_autoconf) ++endef ++ ++define $(package)_build_cmds ++ $(MAKE) ++endef ++ ++define $(package)_stage_cmds ++ $(MAKE) DESTDIR=$($(package)_staging_dir) install ++endef +diff --git a/contrib/depends/packages/libiconv.mk b/contrib/depends/packages/libiconv.mk +new file mode 100644 +index 00000000..eac8b433 +--- /dev/null ++++ b/contrib/depends/packages/libiconv.mk +@@ -0,0 +1,35 @@ ++package=libiconv ++$(package)_version=1.15 ++$(package)_download_path=https://ftp.gnu.org/gnu/libiconv ++$(package)_file_name=libiconv-$($(package)_version).tar.gz ++$(package)_sha256_hash=ccf536620a45458d26ba83887a983b96827001e92a13847b45e4925cc8913178 ++$(package)_patches=fix-whitespace.patch ++ ++define $(package)_set_vars ++ $(package)_config_opts=--disable-nls ++ $(package)_config_opts=--enable-static ++ $(package)_config_opts=--disable-shared ++ $(package)_config_opts_linux=--with-pic ++ $(package)_config_opts_freebsd=--with-pic ++endef ++ ++define $(package)_preprocess_cmds ++ cp -f $(BASEDIR)/config.guess $(BASEDIR)/config.sub build-aux/ &&\ ++ patch -p1 < $($(package)_patch_dir)/fix-whitespace.patch ++endef ++ ++define $(package)_config_cmds ++ $($(package)_autoconf) AR_FLAGS=$($(package)_arflags) ++endef ++ ++define $(package)_build_cmds ++ $(MAKE) ++endef ++ ++define $(package)_stage_cmds ++ $(MAKE) DESTDIR=$($(package)_staging_dir) install ++endef ++ ++define $(package)_postprocess_cmds ++ rm lib/*.la ++endef +diff --git a/contrib/depends/packages/libusb.mk b/contrib/depends/packages/libusb.mk +new file mode 100644 +index 00000000..c1d9fe6a +--- /dev/null ++++ b/contrib/depends/packages/libusb.mk +@@ -0,0 +1,39 @@ ++package=libusb ++$(package)_version=1.0.26 ++$(package)_download_path=https://github.com/libusb/libusb/releases/download/v$($(package)_version) ++$(package)_file_name=$(package)-$($(package)_version).tar.bz2 ++$(package)_sha256_hash=12ce7a61fc9854d1d2a1ffe095f7b5fac19ddba095c259e6067a46500381b5a5 ++ ++define $(package)_preprocess_cmds ++ autoreconf -i ++endef ++ ++define $(package)_set_vars ++ $(package)_config_opts=--disable-shared ++ $(package)_config_opts_linux=--with-pic --disable-udev ++ $(package)_config_opts_mingw32=--disable-udev ++ $(package)_config_opts_darwin=--disable-udev ++endef ++ ++ifneq ($(host_os),darwin) ++ define $(package)_config_cmds ++ cp -f $(BASEDIR)/config.guess config.guess &&\ ++ cp -f $(BASEDIR)/config.sub config.sub &&\ ++ $($(package)_autoconf) AR_FLAGS=$($(package)_arflags) ++ endef ++else ++ define $(package)_config_cmds ++ $($(package)_autoconf) AR_FLAGS=$($(package)_arflags) ++ endef ++endif ++ ++define $(package)_build_cmd ++ $(MAKE) ++endef ++ ++define $(package)_stage_cmds ++ $(MAKE) DESTDIR=$($(package)_staging_dir) install ++endef ++ ++define $(package)_postprocess_cmds cp -f lib/libusb-1.0.a lib/libusb.a ++endef +diff --git a/contrib/depends/packages/native_biplist.mk b/contrib/depends/packages/native_biplist.mk +new file mode 100644 +index 00000000..3c6e8900 +--- /dev/null ++++ b/contrib/depends/packages/native_biplist.mk +@@ -0,0 +1,20 @@ ++package=native_biplist ++$(package)_version=0.9 ++$(package)_download_path=https://pypi.python.org/packages/source/b/biplist ++$(package)_file_name=biplist-$($(package)_version).tar.gz ++$(package)_sha256_hash=b57cadfd26e4754efdf89e9e37de87885f9b5c847b2615688ca04adfaf6ca604 ++$(package)_install_libdir=$(build_prefix)/lib/python/dist-packages ++$(package)_patches=sorted_list.patch ++ ++define $(package)_preprocess_cmds ++ patch -p1 < $($(package)_patch_dir)/sorted_list.patch ++endef ++ ++define $(package)_build_cmds ++ python setup.py build ++endef ++ ++define $(package)_stage_cmds ++ mkdir -p $($(package)_install_libdir) && \ ++ python setup.py install --root=$($(package)_staging_dir) --prefix=$(build_prefix) --install-lib=$($(package)_install_libdir) ++endef +diff --git a/contrib/depends/packages/native_ccache.mk b/contrib/depends/packages/native_ccache.mk +new file mode 100644 +index 00000000..966804ce +--- /dev/null ++++ b/contrib/depends/packages/native_ccache.mk +@@ -0,0 +1,25 @@ ++package=native_ccache ++$(package)_version=3.3.4 ++$(package)_download_path=https://samba.org/ftp/ccache ++$(package)_file_name=ccache-$($(package)_version).tar.bz2 ++$(package)_sha256_hash=fa9d7f38367431bc86b19ad107d709ca7ecf1574fdacca01698bdf0a47cd8567 ++ ++define $(package)_set_vars ++$(package)_config_opts= ++endef ++ ++define $(package)_config_cmds ++ $($(package)_autoconf) ++endef ++ ++define $(package)_build_cmds ++ $(MAKE) ++endef ++ ++define $(package)_stage_cmds ++ $(MAKE) DESTDIR=$($(package)_staging_dir) install ++endef ++ ++define $(package)_postprocess_cmds ++ rm -rf lib include ++endef +diff --git a/contrib/depends/packages/native_cctools.mk b/contrib/depends/packages/native_cctools.mk +new file mode 100644 +index 00000000..0324f7ac +--- /dev/null ++++ b/contrib/depends/packages/native_cctools.mk +@@ -0,0 +1,28 @@ ++package=native_cctools ++$(package)_version=04663295d0425abfac90a42440a7ec02d7155fea ++$(package)_download_path=https://github.com/tpoechtrager/cctools-port/archive ++$(package)_download_file=$($(package)_version).tar.gz ++$(package)_file_name=$(package)-$($(package)_version).tar.gz ++$(package)_sha256_hash=70a7189418c2086d20c299c5d59250cf5940782c778892ccc899c66516ed240e ++$(package)_build_subdir=cctools ++$(package)_dependencies=native_clang native_libtapi ++ ++define $(package)_set_vars ++$(package)_config_opts=--target=$(host) --disable-lto-support --with-libtapi=$(host_prefix) ++$(package)_ldflags+=-Wl,-rpath=\\$$$$$$$$\$$$$$$$$ORIGIN/../lib ++$(package)_cc=$(host_prefix)/native/bin/clang ++$(package)_cxx=$(host_prefix)/native/bin/clang++ ++endef ++ ++define $(package)_config_cmds ++ $($(package)_autoconf) ++endef ++ ++define $(package)_build_cmds ++ $(MAKE) ++endef ++ ++define $(package)_stage_cmds ++ $(MAKE) DESTDIR=$($(package)_staging_dir) install && \ ++ cp $($(package)_extract_dir)/cctools/misc/install_name_tool $($(package)_staging_prefix_dir)/bin/ ++endef +diff --git a/contrib/depends/packages/native_cdrkit.mk b/contrib/depends/packages/native_cdrkit.mk +new file mode 100644 +index 00000000..8243458e +--- /dev/null ++++ b/contrib/depends/packages/native_cdrkit.mk +@@ -0,0 +1,26 @@ ++package=native_cdrkit ++$(package)_version=1.1.11 ++$(package)_download_path=https://distro.ibiblio.org/fatdog/source/600/c ++$(package)_file_name=cdrkit-$($(package)_version).tar.bz2 ++$(package)_sha256_hash=b50d64c214a65b1a79afe3a964c691931a4233e2ba605d793eb85d0ac3652564 ++$(package)_patches=cdrkit-deterministic.patch ++ ++define $(package)_preprocess_cmds ++ patch -p1 < $($(package)_patch_dir)/cdrkit-deterministic.patch ++endef ++ ++define $(package)_config_cmds ++ cmake -DCMAKE_INSTALL_PREFIX=$(build_prefix) ++endef ++ ++define $(package)_build_cmds ++ $(MAKE) genisoimage ++endef ++ ++define $(package)_stage_cmds ++ $(MAKE) DESTDIR=$($(package)_staging_dir) -C genisoimage install ++endef ++ ++define $(package)_postprocess_cmds ++ rm bin/isovfy bin/isoinfo bin/isodump bin/isodebug bin/devdump ++endef +diff --git a/contrib/depends/packages/native_clang.mk b/contrib/depends/packages/native_clang.mk +new file mode 100644 +index 00000000..115f8f38 +--- /dev/null ++++ b/contrib/depends/packages/native_clang.mk +@@ -0,0 +1,29 @@ ++package=native_clang ++$(package)_version=9.0.0 ++$(package)_download_path=https://releases.llvm.org/$($(package)_version) ++$(package)_download_file=clang+llvm-$($(package)_version)-x86_64-linux-gnu-ubuntu-18.04.tar.xz ++$(package)_file_name=clang-llvm-$($(package)_version)-x86_64-linux-gnu-ubuntu-18.04.tar.xz ++$(package)_sha256_hash=a23b082b30c128c9831dbdd96edad26b43f56624d0ad0ea9edec506f5385038d ++ ++define $(package)_extract_cmds ++ echo $($(package)_sha256_hash) $($(package)_source) | sha256sum -c &&\ ++ mkdir -p toolchain/bin toolchain/lib/clang/3.5/include && \ ++ tar --strip-components=1 -C toolchain -xf $($(package)_source) && \ ++ rm -f toolchain/lib/libc++abi.so* && \ ++ echo "#!/bin/sh" > toolchain/bin/$(host)-dsymutil && \ ++ echo "exit 0" >> toolchain/bin/$(host)-dsymutil && \ ++ chmod +x toolchain/bin/$(host)-dsymutil ++endef ++ ++define $(package)_stage_cmds ++ cd $($(package)_extract_dir)/toolchain && \ ++ mkdir -p $($(package)_staging_prefix_dir)/lib/clang/$($(package)_version)/include && \ ++ mkdir -p $($(package)_staging_prefix_dir)/bin $($(package)_staging_prefix_dir)/include && \ ++ cp bin/clang $($(package)_staging_prefix_dir)/bin/ &&\ ++ cp -P bin/clang++ $($(package)_staging_prefix_dir)/bin/ &&\ ++ cp lib/libLTO.so $($(package)_staging_prefix_dir)/lib/ && \ ++ cp -rf lib/clang/$($(package)_version)/include/* $($(package)_staging_prefix_dir)/lib/clang/$($(package)_version)/include/ && \ ++ cp bin/dsymutil $($(package)_staging_prefix_dir)/bin/$(host)-dsymutil && \ ++ if `test -d include/c++/`; then cp -rf include/c++/ $($(package)_staging_prefix_dir)/include/; fi && \ ++ if `test -d lib/c++/`; then cp -rf lib/c++/ $($(package)_staging_prefix_dir)/lib/; fi ++endef +diff --git a/contrib/depends/packages/native_cmake-unused.mk b/contrib/depends/packages/native_cmake-unused.mk +new file mode 100644 +index 00000000..c9ab7571 +--- /dev/null ++++ b/contrib/depends/packages/native_cmake-unused.mk +@@ -0,0 +1,23 @@ ++package=native_cmake ++$(package)_version=3.14.0 ++$(package)_version_dot=v3.14 ++$(package)_download_path=https://cmake.org/files/$($(package)_version_dot)/ ++$(package)_file_name=cmake-$($(package)_version).tar.gz ++$(package)_sha256_hash=aa76ba67b3c2af1946701f847073f4652af5cbd9f141f221c97af99127e75502 ++ ++define $(package)_set_vars ++$(package)_config_opts= ++endef ++ ++define $(package)_config_cmds ++ ./bootstrap &&\ ++ ./configure $($(package)_config_opts) ++endef ++ ++define $(package)_build_cmd ++ $(MAKE) ++endef ++ ++define $(package)_stage_cmds ++ $(MAKE) DESTDIR=$($(package)_staging_dir) install ++endef +diff --git a/contrib/depends/packages/native_ds_store.mk b/contrib/depends/packages/native_ds_store.mk +new file mode 100644 +index 00000000..f0c61765 +--- /dev/null ++++ b/contrib/depends/packages/native_ds_store.mk +@@ -0,0 +1,17 @@ ++package=native_ds_store ++$(package)_version=1.1.0 ++$(package)_download_path=https://github.com/al45tair/ds_store/archive/ ++$(package)_download_file=v$($(package)_version).tar.gz ++$(package)_file_name=$(package)-$($(package)_version).tar.gz ++$(package)_sha256_hash=a9f4c0755c6be7224ff7029e188dd262e830bb81e801424841db9eb0780ec8ed ++$(package)_install_libdir=$(build_prefix)/lib/python/dist-packages ++$(package)_dependencies=native_biplist ++ ++define $(package)_build_cmds ++ python setup.py build ++endef ++ ++define $(package)_stage_cmds ++ mkdir -p $($(package)_install_libdir) && \ ++ python setup.py install --root=$($(package)_staging_dir) --prefix=$(build_prefix) --install-lib=$($(package)_install_libdir) ++endef +diff --git a/contrib/depends/packages/native_libdmg-hfsplus.mk b/contrib/depends/packages/native_libdmg-hfsplus.mk +new file mode 100644 +index 00000000..a4ffb604 +--- /dev/null ++++ b/contrib/depends/packages/native_libdmg-hfsplus.mk +@@ -0,0 +1,22 @@ ++package=native_libdmg-hfsplus ++$(package)_version=0.1 ++$(package)_download_path=https://github.com/theuni/libdmg-hfsplus/archive ++$(package)_file_name=libdmg-hfsplus-v$($(package)_version).tar.gz ++$(package)_sha256_hash=6569a02eb31c2827080d7d59001869ea14484c281efab0ae7f2b86af5c3120b3 ++$(package)_build_subdir=build ++ ++define $(package)_preprocess_cmds ++ mkdir build ++endef ++ ++define $(package)_config_cmds ++ cmake -DCMAKE_INSTALL_PREFIX:PATH=$(build_prefix)/bin .. ++endef ++ ++define $(package)_build_cmds ++ $(MAKE) -C dmg ++endef ++ ++define $(package)_stage_cmds ++ $(MAKE) DESTDIR=$($(package)_staging_dir) -C dmg install ++endef +diff --git a/contrib/depends/packages/native_libtapi.mk b/contrib/depends/packages/native_libtapi.mk +new file mode 100644 +index 00000000..56ee087c +--- /dev/null ++++ b/contrib/depends/packages/native_libtapi.mk +@@ -0,0 +1,28 @@ ++package=native_libtapi ++$(package)_version=664b8414f89612f2dfd35a9b679c345aa5389026 ++$(package)_download_path=https://github.com/tpoechtrager/apple-libtapi/archive ++$(package)_download_file=$($(package)_version).tar.gz ++$(package)_file_name=$(package)-$($(package)_version).tar.gz ++$(package)_sha256_hash=62e419c12d1c9fad67cc1cd523132bc00db050998337c734c15bc8d73cc02b61 ++$(package)_build_subdir=build ++$(package)_dependencies=native_clang ++ ++define $(package)_config_cmds ++ echo -n $(build_prefix) > INSTALLPREFIX; \ ++ CC=$(host_prefix)/native/bin/clang CXX=$(host_prefix)/native/bin/clang++ \ ++ cmake -DCMAKE_INSTALL_PREFIX=$(build_prefix) \ ++ -DLLVM_INCLUDE_TESTS=OFF \ ++ -DCMAKE_BUILD_TYPE=RELEASE \ ++ -DTAPI_REPOSITORY_STRING="1100.0.11" \ ++ -DTAPI_FULL_VERSION="11.0.0" \ ++ -DCMAKE_CXX_FLAGS="-I $($(package)_extract_dir)/src/llvm/projects/clang/include -I $($(package)_build_dir)/projects/clang/include" \ ++ $($(package)_extract_dir)/src/llvm ++endef ++ ++define $(package)_build_cmds ++ $(MAKE) clangBasic && $(MAKE) libtapi ++endef ++ ++define $(package)_stage_cmds ++ $(MAKE) DESTDIR=$($(package)_staging_dir) install-libtapi install-tapi-headers ++endef +diff --git a/contrib/depends/packages/native_mac_alias.mk b/contrib/depends/packages/native_mac_alias.mk +new file mode 100644 +index 00000000..48bd90fb +--- /dev/null ++++ b/contrib/depends/packages/native_mac_alias.mk +@@ -0,0 +1,21 @@ ++package=native_mac_alias ++$(package)_version=1.1.0 ++$(package)_download_path=https://github.com/al45tair/mac_alias/archive/ ++$(package)_download_file=v$($(package)_version).tar.gz ++$(package)_file_name=$(package)-$($(package)_version).tar.gz ++$(package)_sha256_hash=b10cb44ecb64fc25283fae7a9cf365d2829377d84e37b9c21100aca8757509be ++$(package)_install_libdir=$(build_prefix)/lib/python/dist-packages ++$(package)_patches=python3.patch ++ ++define $(package)_preprocess_cmds ++ patch -p1 < $($(package)_patch_dir)/python3.patch ++endef ++ ++define $(package)_build_cmds ++ python setup.py build ++endef ++ ++define $(package)_stage_cmds ++ mkdir -p $($(package)_install_libdir) && \ ++ python setup.py install --root=$($(package)_staging_dir) --prefix=$(build_prefix) --install-lib=$($(package)_install_libdir) ++endef +diff --git a/contrib/depends/packages/native_protobuf.mk b/contrib/depends/packages/native_protobuf.mk +new file mode 100644 +index 00000000..35f648b9 +--- /dev/null ++++ b/contrib/depends/packages/native_protobuf.mk +@@ -0,0 +1,27 @@ ++package=protobuf3 ++$(package)_version=3.6.1 ++$(package)_download_path=https://github.com/protocolbuffers/protobuf/releases/download/v$($(package)_version)/ ++$(package)_file_name=protobuf-cpp-$($(package)_version).tar.gz ++$(package)_sha256_hash=b3732e471a9bb7950f090fd0457ebd2536a9ba0891b7f3785919c654fe2a2529 ++$(package)_cxxflags=-std=c++11 ++ ++define $(package)_set_vars ++ $(package)_config_opts=--disable-shared --prefix=$(build_prefix) ++ $(package)_config_opts_linux=--with-pic ++endef ++ ++define $(package)_config_cmds ++ $($(package)_autoconf) ++endef ++ ++define $(package)_build_cmds ++ $(MAKE) -C src ++endef ++ ++define $(package)_stage_cmds ++ $(MAKE) DESTDIR=$($(package)_staging_dir) -C src install ++endef ++ ++define $(package)_postprocess_cmds ++ rm lib/libprotoc.a ++endef +diff --git a/contrib/depends/packages/ncurses.mk b/contrib/depends/packages/ncurses.mk +new file mode 100644 +index 00000000..fb1d92c6 +--- /dev/null ++++ b/contrib/depends/packages/ncurses.mk +@@ -0,0 +1,63 @@ ++package=ncurses ++$(package)_version=6.1 ++$(package)_download_path=https://ftp.gnu.org/gnu/ncurses ++$(package)_file_name=$(package)-$($(package)_version).tar.gz ++$(package)_sha256_hash=aa057eeeb4a14d470101eff4597d5833dcef5965331be3528c08d99cebaa0d17 ++$(package)_patches=fallback.c ++ ++define $(package)_set_vars ++ $(package)_build_opts=CC="$($(package)_cc)" ++ $(package)_config_env=cf_cv_ar_flags="" ++ $(package)_config_opts=--prefix=$(host_prefix) ++ $(package)_config_opts+=--disable-shared ++ $(package)_config_opts+=--with-build-cc=gcc ++ $(package)_config_opts+=--without-debug ++ $(package)_config_opts+=--without-ada ++ $(package)_config_opts+=--without-cxx-binding ++ $(package)_config_opts+=--without-cxx ++ $(package)_config_opts+=--without-ticlib ++ $(package)_config_opts+=--without-tic ++ $(package)_config_opts+=--without-progs ++ $(package)_config_opts+=--without-tests ++ $(package)_config_opts+=--without-tack ++ $(package)_config_opts+=--without-manpages ++ $(package)_config_opts+=--with-termlib=tinfo ++ $(package)_config_opts+=--disable-tic-depends ++ $(package)_config_opts+=--disable-big-strings ++ $(package)_config_opts+=--disable-ext-colors ++ $(package)_config_opts+=--enable-pc-files ++ $(package)_config_opts+=--host=$(HOST) ++ $(pacakge)_config_opts+=--without-shared ++ $(pacakge)_config_opts+=--without-pthread ++ $(pacakge)_config_opts+=--disable-rpath ++ $(pacakge)_config_opts+=--disable-colorfgbg ++ $(pacakge)_config_opts+=--disable-ext-mouse ++ $(pacakge)_config_opts+=--disable-symlinks ++ $(pacakge)_config_opts+=--enable-warnings ++ $(pacakge)_config_opts+=--enable-assertions ++ $(package)_config_opts+=--with-default-terminfo-dir=/etc/_terminfo_ ++ $(package)_config_opts+=--with-terminfo-dirs=/etc/_terminfo_ ++ $(pacakge)_config_opts+=--enable-database ++ $(pacakge)_config_opts+=--enable-sp-funcs ++ $(pacakge)_config_opts+=--disable-term-driver ++ $(pacakge)_config_opts+=--enable-interop ++ $(pacakge)_config_opts+=--enable-widec ++ $(package)_build_opts=CFLAGS="$($(package)_cflags) $($(package)_cppflags) -fPIC" ++endef ++ ++define $(package)_preprocess_cmds ++ cp $($(package)_patch_dir)/fallback.c ncurses ++endef ++ ++define $(package)_config_cmds ++ $($(package)_autoconf) ++endef ++ ++define $(package)_build_cmds ++ $(MAKE) $($(package)_build_opts) V=1 ++endef ++ ++define $(package)_stage_cmds ++ $(MAKE) install.libs DESTDIR=$($(package)_staging_dir) ++endef ++ +diff --git a/contrib/depends/packages/openssl.mk b/contrib/depends/packages/openssl.mk +new file mode 100644 +index 00000000..a157762c +--- /dev/null ++++ b/contrib/depends/packages/openssl.mk +@@ -0,0 +1,68 @@ ++package=openssl ++$(package)_version=3.0.13 ++$(package)_download_path=https://www.openssl.org/source ++$(package)_file_name=$(package)-$($(package)_version).tar.gz ++$(package)_sha256_hash=88525753f79d3bec27d2fa7c66aa0b92b3aa9498dafd93d7cfa4b3780cdae313 ++ ++define $(package)_set_vars ++$(package)_config_env=AR="$($(package)_ar)" ARFLAGS=$($(package)_arflags) RANLIB="$($(package)_ranlib)" CC="$($(package)_cc)" ++$(package)_config_env_android=ANDROID_NDK_ROOT="$(host_prefix)/native" PATH="$(host_prefix)/native/bin" CC=clang AR=ar RANLIB=ranlib ++$(package)_build_env_android=ANDROID_NDK_ROOT="$(host_prefix)/native" ++$(package)_config_opts=--prefix=$(host_prefix) --openssldir=$(host_prefix)/etc/openssl --libdir=$(host_prefix)/lib ++$(package)_config_opts+=no-capieng ++$(package)_config_opts+=no-dso ++$(package)_config_opts+=no-dtls1 ++$(package)_config_opts+=no-ec_nistp_64_gcc_128 ++$(package)_config_opts+=no-gost ++$(package)_config_opts+=no-md2 ++$(package)_config_opts+=no-rc5 ++$(package)_config_opts+=no-rdrand ++$(package)_config_opts+=no-rfc3779 ++$(package)_config_opts+=no-sctp ++$(package)_config_opts+=no-shared ++$(package)_config_opts+=no-ssl-trace ++$(package)_config_opts+=no-ssl3 ++$(package)_config_opts+=no-tests ++$(package)_config_opts+=no-unit-test ++$(package)_config_opts+=no-weak-ssl-ciphers ++$(package)_config_opts+=no-zlib ++$(package)_config_opts+=no-zlib-dynamic ++$(package)_config_opts+=$($(package)_cflags) $($(package)_cppflags) ++$(package)_config_opts_linux=-fPIC -Wa,--noexecstack ++$(package)_config_opts_freebsd=-fPIC -Wa,--noexecstack ++$(package)_config_opts_x86_64_linux=linux-x86_64 ++$(package)_config_opts_i686_linux=linux-generic32 ++$(package)_config_opts_arm_linux=linux-generic32 ++$(package)_config_opts_aarch64_linux=linux-generic64 ++$(package)_config_opts_arm_android=--static android-arm ++$(package)_config_opts_aarch64_android=--static android-arm64 ++$(package)_config_opts_aarch64_darwin=darwin64-arm64-cc ++$(package)_config_opts_riscv64_linux=linux-generic64 ++$(package)_config_opts_mipsel_linux=linux-generic32 ++$(package)_config_opts_mips_linux=linux-generic32 ++$(package)_config_opts_powerpc_linux=linux-generic32 ++$(package)_config_opts_x86_64_darwin=darwin64-x86_64-cc ++$(package)_config_opts_x86_64_mingw32=mingw64 ++$(package)_config_opts_i686_mingw32=mingw ++$(package)_config_opts_x86_64_freebsd=BSD-x86_64 ++endef ++ ++define $(package)_preprocess_cmds ++ sed -i.old 's|crypto ssl apps util tools fuzz providers doc|crypto ssl util tools providers|' build.info ++endef ++ ++define $(package)_config_cmds ++ ./Configure $($(package)_config_opts) ++endef ++ ++define $(package)_build_cmds ++ $(MAKE) build_libs ++endef ++ ++define $(package)_stage_cmds ++ $(MAKE) DESTDIR=$($(package)_staging_dir) install_sw ++endef ++ ++define $(package)_postprocess_cmds ++ rm -rf share bin etc ++endef +diff --git a/contrib/depends/packages/packages.mk b/contrib/depends/packages/packages.mk +new file mode 100644 +index 00000000..8783d495 +--- /dev/null ++++ b/contrib/depends/packages/packages.mk +@@ -0,0 +1,38 @@ ++packages:=boost openssl zeromq libiconv expat unbound polyseed ++ ++# ccache is useless in gitian builds ++ifneq ($(GITIAN),1) ++native_packages := native_ccache ++endif ++ ++hardware_packages := hidapi protobuf libusb ++hardware_native_packages := native_protobuf ++ ++android_native_packages = android_ndk ++android_packages = ncurses readline sodium ++ ++darwin_native_packages = $(hardware_native_packages) ++darwin_packages = ncurses readline sodium $(hardware_packages) ++ ++# not really native... ++freebsd_native_packages = freebsd_base ++freebsd_packages = ncurses readline sodium ++ ++linux_packages = eudev ncurses readline sodium $(hardware_packages) ++linux_native_packages = $(hardware_native_packages) ++ ++ifeq ($(build_tests),ON) ++packages += gtest ++endif ++ ++ifneq ($(host_arch),riscv64) ++linux_packages += unwind ++endif ++ ++mingw32_packages = icu4c sodium $(hardware_packages) ++mingw32_native_packages = $(hardware_native_packages) ++ ++ifneq ($(build_os),darwin) ++darwin_native_packages += darwin_sdk native_clang native_cctools native_libtapi ++endif ++ +diff --git a/contrib/depends/packages/polyseed.mk b/contrib/depends/packages/polyseed.mk +new file mode 100644 +index 00000000..0071b20f +--- /dev/null ++++ b/contrib/depends/packages/polyseed.mk +@@ -0,0 +1,28 @@ ++package=polyseed ++$(package)_version=2.0.0 ++$(package)_download_path=https://github.com/tevador/$(package)/archive/refs/tags/ ++$(package)_download_file=v$($(package)_version).tar.gz ++$(package)_file_name=$(package)-$($(package)_version).tar.gz ++$(package)_sha256_hash=f36282fcbcd68d32461b8230c89e1a40661bd46b91109681cec637433004135a ++$(package)_patches=force-static-mingw.patch 0001-disable-soname.patch ++ ++define $(package)_preprocess_cmds ++ patch -p1 < $($(package)_patch_dir)/force-static-mingw.patch &&\ ++ patch -p1 < $($(package)_patch_dir)/0001-disable-soname.patch ++endef ++ ++define $(package)_config_cmds ++ CC="$($(package)_cc)" cmake -DCMAKE_INSTALL_PREFIX="$(host_prefix)" . ++endef ++ ++define $(package)_set_vars ++ $(package)_build_opts=CC="$($(package)_cc)" ++endef ++ ++define $(package)_build_cmds ++ CC="$($(package)_cc)" $(MAKE) ++endef ++ ++define $(package)_stage_cmds ++ $(MAKE) DESTDIR=$($(package)_staging_dir) install ++endef +diff --git a/contrib/depends/packages/protobuf.mk b/contrib/depends/packages/protobuf.mk +new file mode 100644 +index 00000000..ddec1eb5 +--- /dev/null ++++ b/contrib/depends/packages/protobuf.mk +@@ -0,0 +1,36 @@ ++package=protobuf ++$(package)_version=$(native_$(package)_version) ++$(package)_download_path=$(native_$(package)_download_path) ++$(package)_file_name=$(native_$(package)_file_name) ++$(package)_sha256_hash=$(native_$(package)_sha256_hash) ++$(package)_dependencies=native_$(package) ++$(package)_cxxflags=-std=c++11 ++$(package)_patches=visibility.patch ++ ++define $(package)_set_vars ++ $(package)_config_opts=--disable-shared --with-protoc=$(build_prefix)/bin/protoc ++ $(package)_config_opts_linux=--with-pic ++endef ++ ++define $(package)_preprocess_cmds ++ patch -p0 < $($(package)_patch_dir)/visibility.patch ++endef ++ ++define $(package)_config_cmds ++ $($(package)_autoconf) AR_FLAGS=$($(package)_arflags) ++endef ++ ++define $(package)_build_cmds ++ $(MAKE) -C src libprotobuf.la ++endef ++ ++define $(package)_stage_cmds ++ $(MAKE) DESTDIR=$($(package)_staging_dir) -C src install-libLTLIBRARIES install-nobase_includeHEADERS &&\ ++ $(MAKE) DESTDIR=$($(package)_staging_dir) install-pkgconfigDATA ++endef ++ ++define $(package)_postprocess_cmds ++ rm lib/libprotoc.a &&\ ++ rm lib/*.la ++endef ++ +diff --git a/contrib/depends/packages/readline.mk b/contrib/depends/packages/readline.mk +new file mode 100644 +index 00000000..957b6454 +--- /dev/null ++++ b/contrib/depends/packages/readline.mk +@@ -0,0 +1,29 @@ ++package=readline ++$(package)_version=8.0 ++$(package)_download_path=https://ftp.gnu.org/gnu/readline ++$(package)_file_name=$(package)-$($(package)_version).tar.gz ++$(package)_sha256_hash=e339f51971478d369f8a053a330a190781acb9864cf4c541060f12078948e461 ++$(package)_dependencies=ncurses ++ ++define $(package)_set_vars ++ $(package)_build_opts=CC="$($(package)_cc)" ++ $(package)_config_opts+=--prefix=$(host_prefix) ++ $(package)_config_opts+=--exec-prefix=$(host_prefix) ++ $(package)_config_opts+=--host=$(HOST) ++ $(package)_config_opts+=--disable-shared --with-curses ++ $(package)_config_opts_release=--disable-debug-mode ++ $(package)_build_opts=CFLAGS="$($(package)_cflags) $($(package)_cppflags) -fPIC" ++endef ++ ++define $(package)_config_cmds ++ $($(package)_autoconf) ++endef ++ ++define $(package)_build_cmds ++ $(MAKE) $($(package)_build_opts) ++endef ++ ++define $(package)_stage_cmds ++ $(MAKE) install DESTDIR=$($(package)_staging_dir) prefix=$(host_prefix) exec-prefix=$(host_prefix) ++endef ++ +diff --git a/contrib/depends/packages/sodium.mk b/contrib/depends/packages/sodium.mk +new file mode 100644 +index 00000000..68a5b48b +--- /dev/null ++++ b/contrib/depends/packages/sodium.mk +@@ -0,0 +1,34 @@ ++package=sodium ++$(package)_version=1.0.18 ++$(package)_download_path=https://download.libsodium.org/libsodium/releases/ ++$(package)_file_name=libsodium-$($(package)_version).tar.gz ++$(package)_sha256_hash=6f504490b342a4f8a4c4a02fc9b866cbef8622d5df4e5452b46be121e46636c1 ++$(package)_patches=disable-glibc-getrandom-getentropy.patch fix-whitespace.patch ++ ++define $(package)_set_vars ++$(package)_config_opts=--enable-static --disable-shared --with-pic ++$(package)_config_opts+=--prefix=$(host_prefix) ++endef ++ ++define $(package)_preprocess_cmds ++ patch -p1 < $($(package)_patch_dir)/disable-glibc-getrandom-getentropy.patch &&\ ++ autoconf &&\ ++ patch -p1 < $($(package)_patch_dir)/fix-whitespace.patch ++endef ++ ++define $(package)_config_cmds ++ $($(package)_autoconf) AR_FLAGS=$($(package)_arflags) ++endef ++ ++define $(package)_build_cmds ++ $(MAKE) ++endef ++ ++define $(package)_stage_cmds ++ $(MAKE) DESTDIR=$($(package)_staging_dir) install ++endef ++ ++define $(package)_postprocess_cmds ++ rm lib/*.la ++endef ++ +diff --git a/contrib/depends/packages/unbound.mk b/contrib/depends/packages/unbound.mk +new file mode 100644 +index 00000000..d9ef0076 +--- /dev/null ++++ b/contrib/depends/packages/unbound.mk +@@ -0,0 +1,36 @@ ++package=unbound ++$(package)_version=1.19.1 ++$(package)_download_path=https://www.nlnetlabs.nl/downloads/$(package)/ ++$(package)_file_name=$(package)-$($(package)_version).tar.gz ++$(package)_sha256_hash=bc1d576f3dd846a0739adc41ffaa702404c6767d2b6082deb9f2f97cbb24a3a9 ++$(package)_dependencies=openssl expat ++$(package)_patches=disable-glibc-reallocarray.patch ++ ++ ++define $(package)_set_vars ++ $(package)_config_opts=--disable-shared --enable-static --without-pyunbound --prefix=$(host_prefix) ++ $(package)_config_opts+=--with-libexpat=$(host_prefix) --with-ssl=$(host_prefix) --with-libevent=no ++ $(package)_config_opts+=--without-pythonmodule --disable-flto --with-pthreads --with-libunbound-only ++ $(package)_config_opts_linux=--with-pic ++ $(package)_config_opts_w64=--enable-static-exe --sysconfdir=/etc --prefix=$(host_prefix) --target=$(host_prefix) ++ $(package)_config_opts_x86_64_darwin=ac_cv_func_SHA384_Init=yes ++ $(package)_build_opts_mingw32=LDFLAGS="$($(package)_ldflags) -lpthread" ++ $(package)_cflags_mingw32+="-D_WIN32_WINNT=0x600" ++endef ++ ++define $(package)_preprocess_cmds ++ patch -p1 < $($(package)_patch_dir)/disable-glibc-reallocarray.patch &&\ ++ autoconf ++endef ++ ++define $(package)_config_cmds ++ $($(package)_autoconf) ac_cv_func_getentropy=no ++endef ++ ++define $(package)_build_cmds ++ $(MAKE) $($(package)_build_opts) ++endef ++ ++define $(package)_stage_cmds ++ $(MAKE) DESTDIR=$($(package)_staging_dir) install ++endef +diff --git a/contrib/depends/packages/unwind.mk b/contrib/depends/packages/unwind.mk +new file mode 100644 +index 00000000..c3d190bc +--- /dev/null ++++ b/contrib/depends/packages/unwind.mk +@@ -0,0 +1,29 @@ ++package=unwind ++$(package)_version=1.5.0 ++$(package)_download_path=https://download.savannah.nongnu.org/releases/libunwind ++$(package)_file_name=lib$(package)-$($(package)_version).tar.gz ++$(package)_sha256_hash=90337653d92d4a13de590781371c604f9031cdb50520366aa1e3a91e1efb1017 ++$(package)_patches=fix_obj_order.patch ++ ++define $(package)_preprocess_cmds ++ patch -p0 < $($(package)_patch_dir)/fix_obj_order.patch ++endef ++ ++define $(package)_config_cmds ++ cp -f $(BASEDIR)/config.guess config/config.guess &&\ ++ cp -f $(BASEDIR)/config.sub config/config.sub &&\ ++ $($(package)_autoconf) --disable-shared --enable-static --disable-tests --disable-documentation AR_FLAGS=$($(package)_arflags) ++endef ++ ++define $(package)_build_cmds ++ $(MAKE) ++endef ++ ++define $(package)_stage_cmds ++ $(MAKE) DESTDIR=$($(package)_staging_dir) install ++endef ++ ++define $(package)_postprocess_cmds ++ rm lib/*.la ++endef ++ +diff --git a/contrib/depends/packages/xproto.mk b/contrib/depends/packages/xproto.mk +new file mode 100644 +index 00000000..52fe253c +--- /dev/null ++++ b/contrib/depends/packages/xproto.mk +@@ -0,0 +1,21 @@ ++package=xproto ++$(package)_version=7.0.26 ++$(package)_download_path=https://xorg.freedesktop.org/releases/individual/proto ++$(package)_file_name=$(package)-$($(package)_version).tar.bz2 ++$(package)_sha256_hash=636162c1759805a5a0114a369dffdeccb8af8c859ef6e1445f26a4e6e046514f ++ ++define $(package)_set_vars ++$(package)_config_opts=--disable-shared ++endef ++ ++define $(package)_config_cmds ++ $($(package)_autoconf) ++endef ++ ++define $(package)_build_cmds ++ $(MAKE) ++endef ++ ++define $(package)_stage_cmds ++ $(MAKE) DESTDIR=$($(package)_staging_dir) install ++endef +diff --git a/contrib/depends/packages/zeromq.mk b/contrib/depends/packages/zeromq.mk +new file mode 100644 +index 00000000..20f2d4bd +--- /dev/null ++++ b/contrib/depends/packages/zeromq.mk +@@ -0,0 +1,35 @@ ++package=zeromq ++$(package)_version=4.3.4 ++$(package)_download_path=https://github.com/zeromq/libzmq/releases/download/v$($(package)_version)/ ++$(package)_file_name=$(package)-$($(package)_version).tar.gz ++$(package)_sha256_hash=c593001a89f5a85dd2ddf564805deb860e02471171b3f204944857336295c3e5 ++$(package)_patches=06aba27b04c5822cb88a69677382a0f053367143.patch ++ ++define $(package)_set_vars ++ $(package)_config_opts=--without-documentation --disable-shared --without-libsodium --disable-curve ++ $(package)_config_opts_linux=--with-pic ++ $(package)_config_opts_freebsd=--with-pic ++ $(package)_cxxflags=-std=c++11 ++endef ++ ++define $(package)_preprocess_cmds ++ patch -p1 < $($(package)_patch_dir)/06aba27b04c5822cb88a69677382a0f053367143.patch ++endef ++ ++define $(package)_config_cmds ++ $($(package)_autoconf) AR_FLAGS=$($(package)_arflags) ++endef ++ ++define $(package)_build_cmds ++ $(MAKE) src/libzmq.la ++endef ++ ++define $(package)_stage_cmds ++ $(MAKE) DESTDIR=$($(package)_staging_dir) install-libLTLIBRARIES install-includeHEADERS install-pkgconfigDATA ++endef ++ ++define $(package)_postprocess_cmds ++ rm -rf bin share &&\ ++ rm lib/*.la ++endef ++ +diff --git a/contrib/depends/patches/boost/fix_arm_arch.patch b/contrib/depends/patches/boost/fix_arm_arch.patch +new file mode 100644 +index 00000000..3cf6b6f4 +--- /dev/null ++++ b/contrib/depends/patches/boost/fix_arm_arch.patch +@@ -0,0 +1,11 @@ ++--- boost_1_64_0/tools/build/src/tools/darwin.jam.O 2017-04-17 03:22:26.000000000 +0100 +++++ boost_1_64_0/tools/build/src/tools/darwin.jam 2022-05-04 17:26:29.984464447 +0000 ++@@ -505,7 +505,7 @@ ++ if $(instruction-set) { ++ options = -arch$(_)$(instruction-set) ; ++ } else { ++- options = -arch arm ; +++# options = -arch arm ; ++ } ++ } ++ } +diff --git a/contrib/depends/patches/boost/fix_aroptions.patch b/contrib/depends/patches/boost/fix_aroptions.patch +new file mode 100644 +index 00000000..5b2ec100 +--- /dev/null ++++ b/contrib/depends/patches/boost/fix_aroptions.patch +@@ -0,0 +1,28 @@ ++--- boost_1_64_0/tools/build/src/tools/gcc.jam.O 2017-04-17 03:22:26.000000000 +0100 +++++ boost_1_64_0/tools/build/src/tools/gcc.jam 2019-11-15 15:46:16.957937137 +0000 ++@@ -243,6 +243,8 @@ ++ { ++ ECHO notice: using gcc archiver :: $(condition) :: $(archiver[1]) ; ++ } +++ local arflags = [ feature.get-values <arflags> : $(options) ] ; +++ toolset.flags gcc.archive .ARFLAGS $(condition) : $(arflags) ; ++ ++ # - Ranlib. ++ local ranlib = [ common.get-invocation-command gcc ++@@ -970,6 +972,7 @@ ++ # logic in intel-linux, but that is hardly worth the trouble as on Linux, 'ar' ++ # is always available. ++ .AR = ar ; +++.ARFLAGS = rc ; ++ .RANLIB = ranlib ; ++ ++ toolset.flags gcc.archive AROPTIONS <archiveflags> ; ++@@ -1011,7 +1014,7 @@ ++ # ++ actions piecemeal archive ++ { ++- "$(.AR)" $(AROPTIONS) rc "$(<)" "$(>)" +++ "$(.AR)" $(AROPTIONS) $(.ARFLAGS) "$(<)" "$(>)" ++ "$(.RANLIB)" "$(<)" ++ } ++ +diff --git a/contrib/depends/patches/boost/fix_pthread.patch b/contrib/depends/patches/boost/fix_pthread.patch +new file mode 100644 +index 00000000..f35e2241 +--- /dev/null ++++ b/contrib/depends/patches/boost/fix_pthread.patch +@@ -0,0 +1,14 @@ ++--- a/boost/thread/pthread/thread_data.hpp +++++ b/boost/thread/pthread/thread_data.hpp ++@@ -14,6 +14,11 @@ ++ #include <boost/thread/pthread/condition_variable_fwd.hpp> ++ #include <boost/thread/pthread/pthread_mutex_scoped_lock.hpp> ++ +++#ifdef PTHREAD_STACK_MIN +++#undef PTHREAD_STACK_MIN +++#endif +++#define PTHREAD_STACK_MIN 16384 +++ ++ #include <boost/shared_ptr.hpp> ++ #include <boost/enable_shared_from_this.hpp> ++ #include <boost/assert.hpp> +\ No newline at end of file +diff --git a/contrib/depends/patches/boost/fix_pthread_win.patch b/contrib/depends/patches/boost/fix_pthread_win.patch +new file mode 100644 +index 00000000..0624e840 +--- /dev/null ++++ b/contrib/depends/patches/boost/fix_pthread_win.patch +@@ -0,0 +1,14 @@ ++--- a/boost/thread/win32/thread_data.hpp +++++ b/boost/thread/win32/thread_data.hpp ++@@ -12,6 +12,11 @@ ++ #include <boost/thread/win32/thread_heap_alloc.hpp> ++ #include <boost/thread/detail/platform_time.hpp> ++ +++#ifdef PTHREAD_STACK_MIN +++#undef PTHREAD_STACK_MIN +++#endif +++#define PTHREAD_STACK_MIN 16384 +++ ++ #include <boost/predef/platform.h> ++ ++ #include <boost/intrusive_ptr.hpp> +\ No newline at end of file +diff --git a/contrib/depends/patches/cmake/cmake-1-fixes.patch b/contrib/depends/patches/cmake/cmake-1-fixes.patch +new file mode 100644 +index 00000000..062c0676 +--- /dev/null ++++ b/contrib/depends/patches/cmake/cmake-1-fixes.patch +@@ -0,0 +1,67 @@ ++This file is part of MXE. See LICENSE.md for licensing information. ++ ++Contains ad hoc patches for cross building. ++ ++From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 ++From: Tony Theodore <tonyt@logyst.com> ++Date: Fri, 12 Aug 2016 02:01:20 +1000 ++Subject: [PATCH 1/3] fix windres invocation options ++ ++windres doesn't recognise various gcc flags like -mms-bitfields, ++-fopenmp, -mthreads etc. (basically not `-D` or `-I`) ++ ++diff --git a/Modules/Platform/Windows-windres.cmake b/Modules/Platform/Windows-windres.cmake ++index 1111111..2222222 100644 ++--- a/Modules/Platform/Windows-windres.cmake +++++ b/Modules/Platform/Windows-windres.cmake ++@@ -1 +1 @@ ++-set(CMAKE_RC_COMPILE_OBJECT "<CMAKE_RC_COMPILER> -O coff <DEFINES> <INCLUDES> <FLAGS> <SOURCE> <OBJECT>") +++set(CMAKE_RC_COMPILE_OBJECT "<CMAKE_RC_COMPILER> -O coff <DEFINES> <INCLUDES> <SOURCE> <OBJECT>") ++ ++From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 ++From: Tony Theodore <tonyt@logyst.com> ++Date: Tue, 25 Jul 2017 20:34:56 +1000 ++Subject: [PATCH 2/3] add option to disable -isystem ++ ++taken from (not accepted): ++https://gitlab.kitware.com/cmake/cmake/merge_requests/895 ++ ++see also: ++https://gitlab.kitware.com/cmake/cmake/issues/16291 ++https://gitlab.kitware.com/cmake/cmake/issues/16919 ++ ++diff --git a/Modules/Compiler/GNU.cmake b/Modules/Compiler/GNU.cmake ++index 1111111..2222222 100644 ++--- a/Modules/Compiler/GNU.cmake +++++ b/Modules/Compiler/GNU.cmake ++@@ -42,7 +42,7 @@ macro(__compiler_gnu lang) ++ string(APPEND CMAKE_${lang}_FLAGS_RELWITHDEBINFO_INIT " -O2 -g -DNDEBUG") ++ set(CMAKE_${lang}_CREATE_PREPROCESSED_SOURCE "<CMAKE_${lang}_COMPILER> <DEFINES> <INCLUDES> <FLAGS> -E <SOURCE> > <PREPROCESSED_SOURCE>") ++ set(CMAKE_${lang}_CREATE_ASSEMBLY_SOURCE "<CMAKE_${lang}_COMPILER> <DEFINES> <INCLUDES> <FLAGS> -S <SOURCE> -o <ASSEMBLY_SOURCE>") ++- if(NOT APPLE OR NOT CMAKE_${lang}_COMPILER_VERSION VERSION_LESS 4) # work around #4462 +++ if(NOT APPLE OR NOT CMAKE_${lang}_COMPILER_VERSION VERSION_LESS 4 AND (NOT MXE_DISABLE_INCLUDE_SYSTEM_FLAG)) # work around #4462 ++ set(CMAKE_INCLUDE_SYSTEM_FLAG_${lang} "-isystem ") ++ endif() ++ endmacro() ++ ++From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 ++From: Tony Theodore <tonyt@logyst.com> ++Date: Tue, 15 Aug 2017 15:25:06 +1000 ++Subject: [PATCH 3/3] add CPACK_NSIS_EXECUTABLE variable ++ ++ ++diff --git a/Source/CPack/cmCPackNSISGenerator.cxx b/Source/CPack/cmCPackNSISGenerator.cxx ++index 1111111..2222222 100644 ++--- a/Source/CPack/cmCPackNSISGenerator.cxx +++++ b/Source/CPack/cmCPackNSISGenerator.cxx ++@@ -384,7 +384,9 @@ int cmCPackNSISGenerator::InitializeInternal() ++ } ++ #endif ++ ++- nsisPath = cmSystemTools::FindProgram("makensis", path, false); +++ this->SetOptionIfNotSet("CPACK_NSIS_EXECUTABLE", "makensis"); +++ nsisPath = cmSystemTools::FindProgram( +++ this->GetOption("CPACK_NSIS_EXECUTABLE"), path, false); ++ ++ if (nsisPath.empty()) { ++ cmCPackLogger( +diff --git a/contrib/depends/patches/hidapi/missing_win_include.patch b/contrib/depends/patches/hidapi/missing_win_include.patch +new file mode 100644 +index 00000000..5bbe82de +--- /dev/null ++++ b/contrib/depends/patches/hidapi/missing_win_include.patch +@@ -0,0 +1,21 @@ ++From a77b066311da42ed7654e39c0356a3b951b2e296 Mon Sep 17 00:00:00 2001 ++From: selsta <selsta@sent.at> ++Date: Wed, 10 Nov 2021 02:28:54 +0100 ++Subject: [PATCH] windows: add missing include for mingw32 ++ ++--- ++ windows/hid.c | 1 + ++ 1 file changed, 1 insertion(+) ++ ++diff --git a/windows/hid.c b/windows/hid.c ++index 24756a4..6d8394c 100644 ++--- a/windows/hid.c +++++ b/windows/hid.c ++@@ -33,6 +33,7 @@ typedef LONG NTSTATUS; ++ #endif ++ ++ #ifdef __MINGW32__ +++#include <devpropdef.h> ++ #include <ntdef.h> ++ #include <winbase.h> ++ #endif +diff --git a/contrib/depends/patches/icu4c/icu-001-dont-build-static-dynamic-twice.patch b/contrib/depends/patches/icu4c/icu-001-dont-build-static-dynamic-twice.patch +new file mode 100644 +index 00000000..bbd4e99e +--- /dev/null ++++ b/contrib/depends/patches/icu4c/icu-001-dont-build-static-dynamic-twice.patch +@@ -0,0 +1,37 @@ ++Don't build object files twice ++ ++When passed --enable-static and --enable-shared, icu will generate ++both a shared and a static version of its libraries. ++ ++However, in order to do so, it builds each and every object file ++twice: once with -fPIC (for the shared library), and once without ++-fPIC (for the static library). While admittedly building -fPIC for a ++static library generates a slightly suboptimal code, this is what all ++the autotools-based project are doing. They build each object file ++once, and they use it for both the static and shared libraries. ++ ++icu builds the object files for the shared library as .o files, and ++the object files for static library as .ao files. By simply changing ++the suffix of object files used for static libraries to ".o", we tell ++icu to use the ones built for the shared library (i.e, with -fPIC), ++and avoid the double build of icu. ++ ++On a fast build server, this brings the target icu build from ++3m41.302s down to 1m43.926s (approximate numbers: some other builds ++are running on the system at the same time). ++ ++Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> ++ ++Index: b/source/config/mh-linux ++=================================================================== ++--- a/source/config/mh-linux +++++ b/source/config/mh-linux ++@@ -38,7 +38,7 @@ ++ ## Shared object suffix ++ SO = so ++ ## Non-shared intermediate object suffix ++-STATIC_O = ao +++STATIC_O = o ++ ++ ## Compilation rules ++ %.$(STATIC_O): $(srcdir)/%.c +diff --git a/contrib/depends/patches/libiconv/fix-whitespace.patch b/contrib/depends/patches/libiconv/fix-whitespace.patch +new file mode 100644 +index 00000000..531364b4 +--- /dev/null ++++ b/contrib/depends/patches/libiconv/fix-whitespace.patch +@@ -0,0 +1,13 @@ ++diff --git a/preload/configure b/preload/configure ++index aab5c77..e20b8f0 100755 ++--- a/preload/configure +++++ b/preload/configure ++@@ -588,7 +588,7 @@ MAKEFLAGS= ++ PACKAGE_NAME='libiconv' ++ PACKAGE_TARNAME='libiconv' ++ PACKAGE_VERSION='0' ++-PACKAGE_STRING='libiconv 0' +++PACKAGE_STRING='libiconv0' ++ PACKAGE_BUGREPORT='' ++ PACKAGE_URL='' ++ +diff --git a/contrib/depends/patches/native_biplist/sorted_list.patch b/contrib/depends/patches/native_biplist/sorted_list.patch +new file mode 100644 +index 00000000..89abdb1b +--- /dev/null ++++ b/contrib/depends/patches/native_biplist/sorted_list.patch +@@ -0,0 +1,29 @@ ++--- a/biplist/__init__.py 2014-10-26 19:03:11.000000000 +0000 +++++ b/biplist/__init__.py 2016-07-19 19:30:17.663521999 +0000 ++@@ -541,7 +541,7 @@ ++ return HashableWrapper(n) ++ elif isinstance(root, dict): ++ n = {} ++- for key, value in iteritems(root): +++ for key, value in sorted(iteritems(root)): ++ n[self.wrapRoot(key)] = self.wrapRoot(value) ++ return HashableWrapper(n) ++ elif isinstance(root, list): ++@@ -616,7 +616,7 @@ ++ elif isinstance(obj, dict): ++ size = proc_size(len(obj)) ++ self.incrementByteCount('dictBytes', incr=1+size) ++- for key, value in iteritems(obj): +++ for key, value in sorted(iteritems(obj)): ++ check_key(key) ++ self.computeOffsets(key, asReference=True) ++ self.computeOffsets(value, asReference=True) ++@@ -714,7 +714,7 @@ ++ keys = [] ++ values = [] ++ objectsToWrite = [] ++- for key, value in iteritems(obj): +++ for key, value in sorted(iteritems(obj)): ++ keys.append(key) ++ values.append(value) ++ for key in keys: +diff --git a/contrib/depends/patches/native_cdrkit/cdrkit-deterministic.patch b/contrib/depends/patches/native_cdrkit/cdrkit-deterministic.patch +new file mode 100644 +index 00000000..8ab0993d +--- /dev/null ++++ b/contrib/depends/patches/native_cdrkit/cdrkit-deterministic.patch +@@ -0,0 +1,86 @@ ++--- cdrkit-1.1.11.old/genisoimage/tree.c 2008-10-21 19:57:47.000000000 -0400 +++++ cdrkit-1.1.11/genisoimage/tree.c 2013-12-06 00:23:18.489622668 -0500 ++@@ -1139,8 +1139,9 @@ ++ scan_directory_tree(struct directory *this_dir, char *path, ++ struct directory_entry *de) ++ { ++- DIR *current_dir; +++ int current_file; ++ char whole_path[PATH_MAX]; +++ struct dirent **d_list; ++ struct dirent *d_entry; ++ struct directory *parent; ++ int dflag; ++@@ -1164,7 +1165,8 @@ ++ this_dir->dir_flags |= DIR_WAS_SCANNED; ++ ++ errno = 0; /* Paranoia */ ++- current_dir = opendir(path); +++ //current_dir = opendir(path); +++ current_file = scandir(path, &d_list, NULL, alphasort); ++ d_entry = NULL; ++ ++ /* ++@@ -1173,12 +1175,12 @@ ++ */ ++ old_path = path; ++ ++- if (current_dir) { +++ if (current_file >= 0) { ++ errno = 0; ++- d_entry = readdir(current_dir); +++ d_entry = d_list[0]; ++ } ++ ++- if (!current_dir || !d_entry) { +++ if (current_file < 0 || !d_entry) { ++ int ret = 1; ++ ++ #ifdef USE_LIBSCHILY ++@@ -1191,8 +1193,8 @@ ++ de->isorec.flags[0] &= ~ISO_DIRECTORY; ++ ret = 0; ++ } ++- if (current_dir) ++- closedir(current_dir); +++ if(d_list) +++ free(d_list); ++ return (ret); ++ } ++ #ifdef ABORT_DEEP_ISO_ONLY ++@@ -1208,7 +1210,7 @@ ++ errmsgno(EX_BAD, "use Rock Ridge extensions via -R or -r,\n"); ++ errmsgno(EX_BAD, "or allow deep ISO9660 directory nesting via -D.\n"); ++ } ++- closedir(current_dir); +++ free(d_list); ++ return (1); ++ } ++ #endif ++@@ -1250,13 +1252,13 @@ ++ * The first time through, skip this, since we already asked ++ * for the first entry when we opened the directory. ++ */ ++- if (dflag) ++- d_entry = readdir(current_dir); +++ if (dflag && current_file >= 0) +++ d_entry = d_list[current_file]; ++ dflag++; ++ ++- if (!d_entry) +++ if (current_file < 0) ++ break; ++- +++ current_file--; ++ /* OK, got a valid entry */ ++ ++ /* If we do not want all files, then pitch the backups. */ ++@@ -1348,7 +1350,7 @@ ++ insert_file_entry(this_dir, whole_path, d_entry->d_name); ++ #endif /* APPLE_HYB */ ++ } ++- closedir(current_dir); +++ free(d_list); ++ ++ #ifdef APPLE_HYB ++ /* +diff --git a/contrib/depends/patches/native_mac_alias/python3.patch b/contrib/depends/patches/native_mac_alias/python3.patch +new file mode 100644 +index 00000000..1a32340b +--- /dev/null ++++ b/contrib/depends/patches/native_mac_alias/python3.patch +@@ -0,0 +1,72 @@ ++diff -dur a/mac_alias/alias.py b/mac_alias/alias.py ++--- a/mac_alias/alias.py 2015-10-19 12:12:48.000000000 +0200 +++++ b/mac_alias/alias.py 2016-04-03 12:13:12.037159417 +0200 ++@@ -243,10 +243,10 @@ ++ alias = Alias() ++ alias.appinfo = appinfo ++ ++- alias.volume = VolumeInfo (volname.replace('/',':'), +++ alias.volume = VolumeInfo (volname.decode().replace('/',':'), ++ voldate, fstype, disktype, ++ volattrs, volfsid) ++- alias.target = TargetInfo (kind, filename.replace('/',':'), +++ alias.target = TargetInfo (kind, filename.decode().replace('/',':'), ++ folder_cnid, cnid, ++ crdate, creator_code, type_code) ++ alias.target.levels_from = levels_from ++@@ -261,9 +261,9 @@ ++ b.read(1) ++ ++ if tag == TAG_CARBON_FOLDER_NAME: ++- alias.target.folder_name = value.replace('/',':') +++ alias.target.folder_name = value.decode().replace('/',':') ++ elif tag == TAG_CNID_PATH: ++- alias.target.cnid_path = struct.unpack(b'>%uI' % (length // 4), +++ alias.target.cnid_path = struct.unpack('>%uI' % (length // 4), ++ value) ++ elif tag == TAG_CARBON_PATH: ++ alias.target.carbon_path = value ++@@ -298,9 +298,9 @@ ++ alias.target.creation_date \ ++ = mac_epoch + datetime.timedelta(seconds=seconds) ++ elif tag == TAG_POSIX_PATH: ++- alias.target.posix_path = value +++ alias.target.posix_path = value.decode() ++ elif tag == TAG_POSIX_PATH_TO_MOUNTPOINT: ++- alias.volume.posix_path = value +++ alias.volume.posix_path = value.decode() ++ elif tag == TAG_RECURSIVE_ALIAS_OF_DISK_IMAGE: ++ alias.volume.disk_image_alias = Alias.from_bytes(value) ++ elif tag == TAG_USER_HOME_LENGTH_PREFIX: ++@@ -422,13 +422,13 @@ ++ # (so doing so is ridiculous, and nothing could rely on it). ++ b.write(struct.pack(b'>h28pI2shI64pII4s4shhI2s10s', ++ self.target.kind, ++- carbon_volname, voldate, +++ carbon_volname, int(voldate), ++ self.volume.fs_type, ++ self.volume.disk_type, ++ self.target.folder_cnid, ++ carbon_filename, ++ self.target.cnid, ++- crdate, +++ int(crdate), ++ self.target.creator_code, ++ self.target.type_code, ++ self.target.levels_from, ++@@ -449,12 +449,12 @@ ++ ++ b.write(struct.pack(b'>hhQhhQ', ++ TAG_HIGH_RES_VOLUME_CREATION_DATE, ++- 8, long(voldate * 65536), +++ 8, int(voldate * 65536), ++ TAG_HIGH_RES_CREATION_DATE, ++- 8, long(crdate * 65536))) +++ 8, int(crdate * 65536))) ++ ++ if self.target.cnid_path: ++- cnid_path = struct.pack(b'>%uI' % len(self.target.cnid_path), +++ cnid_path = struct.pack('>%uI' % len(self.target.cnid_path), ++ *self.target.cnid_path) ++ b.write(struct.pack(b'>hh', TAG_CNID_PATH, ++ len(cnid_path))) +diff --git a/contrib/depends/patches/ncurses/fallback.c b/contrib/depends/patches/ncurses/fallback.c +new file mode 100644 +index 00000000..fab108c3 +--- /dev/null ++++ b/contrib/depends/patches/ncurses/fallback.c +@@ -0,0 +1,6621 @@ ++/* This file was generated by tinfo/MKfallback.sh */ ++ ++/* ++ * DO NOT EDIT THIS FILE BY HAND! ++ */ ++ ++#include <curses.priv.h> ++ ++#include <tic.h> ++ ++/* fallback entries for: linux rxvt vt100 xterm xterm-256color screen screen.linux screen.rxvt screen.xterm-new screen.xterm-256color */ ++/* linux */ ++ ++static char linux_alias_data[] = "linux|linux console"; ++ ++static char linux_s_bel [] = "\007"; ++static char linux_s_cr [] = "\015"; ++static char linux_s_csr [] = "\033[%i%p1%d;%p2%dr"; ++static char linux_s_tbc [] = "\033[3g"; ++static char linux_s_clear [] = "\033[H\033[J"; ++static char linux_s_el [] = "\033[K"; ++static char linux_s_ed [] = "\033[J"; ++static char linux_s_hpa [] = "\033[%i%p1%dG"; ++static char linux_s_cup [] = "\033[%i%p1%d;%p2%dH"; ++static char linux_s_cud1 [] = "\012"; ++static char linux_s_home [] = "\033[H"; ++static char linux_s_civis [] = "\033[?25l\033[?1c"; ++static char linux_s_cub1 [] = "\010"; ++static char linux_s_cnorm [] = "\033[?25h\033[?0c"; ++static char linux_s_cuf1 [] = "\033[C"; ++static char linux_s_cuu1 [] = "\033[A"; ++static char linux_s_cvvis [] = "\033[?25h\033[?8c"; ++static char linux_s_dch1 [] = "\033[P"; ++static char linux_s_dl1 [] = "\033[M"; ++static char linux_s_smacs [] = "\016"; ++static char linux_s_blink [] = "\033[5m"; ++static char linux_s_bold [] = "\033[1m"; ++static char linux_s_dim [] = "\033[2m"; ++static char linux_s_smir [] = "\033[4h"; ++static char linux_s_rev [] = "\033[7m"; ++static char linux_s_smso [] = "\033[7m"; ++static char linux_s_smul [] = "\033[4m"; ++static char linux_s_ech [] = "\033[%p1%dX"; ++static char linux_s_rmacs [] = "\017"; ++static char linux_s_sgr0 [] = "\033[m\017"; ++static char linux_s_rmir [] = "\033[4l"; ++static char linux_s_rmso [] = "\033[27m"; ++static char linux_s_rmul [] = "\033[24m"; ++static char linux_s_flash [] = "\033[?5h$<200/>\033[?5l"; ++static char linux_s_ich1 [] = "\033[@"; ++static char linux_s_il1 [] = "\033[L"; ++static char linux_s_kbs [] = "\177"; ++static char linux_s_kdch1 [] = "\033[3~"; ++static char linux_s_kcud1 [] = "\033[B"; ++static char linux_s_kf1 [] = "\033[[A"; ++static char linux_s_kf10 [] = "\033[21~"; ++static char linux_s_kf2 [] = "\033[[B"; ++static char linux_s_kf3 [] = "\033[[C"; ++static char linux_s_kf4 [] = "\033[[D"; ++static char linux_s_kf5 [] = "\033[[E"; ++static char linux_s_kf6 [] = "\033[17~"; ++static char linux_s_kf7 [] = "\033[18~"; ++static char linux_s_kf8 [] = "\033[19~"; ++static char linux_s_kf9 [] = "\033[20~"; ++static char linux_s_khome [] = "\033[1~"; ++static char linux_s_kich1 [] = "\033[2~"; ++static char linux_s_kcub1 [] = "\033[D"; ++static char linux_s_knp [] = "\033[6~"; ++static char linux_s_kpp [] = "\033[5~"; ++static char linux_s_kcuf1 [] = "\033[C"; ++static char linux_s_kcuu1 [] = "\033[A"; ++static char linux_s_nel [] = "\015\012"; ++static char linux_s_dch [] = "\033[%p1%dP"; ++static char linux_s_dl [] = "\033[%p1%dM"; ++static char linux_s_cud [] = "\033[%p1%dB"; ++static char linux_s_ich [] = "\033[%p1%d@"; ++static char linux_s_il [] = "\033[%p1%dL"; ++static char linux_s_cub [] = "\033[%p1%dD"; ++static char linux_s_cuf [] = "\033[%p1%dC"; ++static char linux_s_cuu [] = "\033[%p1%dA"; ++static char linux_s_rs1 [] = "\033c\033]R"; ++static char linux_s_rc [] = "\0338"; ++static char linux_s_vpa [] = "\033[%i%p1%dd"; ++static char linux_s_sc [] = "\0337"; ++static char linux_s_ind [] = "\012"; ++static char linux_s_ri [] = "\033M"; ++static char linux_s_sgr [] = "\033[0;10%?%p1%t;7%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p5%t;2%;%?%p6%t;1%;m%?%p9%t\016%e\017%;"; ++static char linux_s_hts [] = "\033H"; ++static char linux_s_ht [] = "\011"; ++static char linux_s_kb2 [] = "\033[G"; ++static char linux_s_acsc [] = "++,,--..00__``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}c~~"; ++static char linux_s_kcbt [] = "\033[Z"; ++static char linux_s_smam [] = "\033[?7h"; ++static char linux_s_rmam [] = "\033[?7l"; ++static char linux_s_enacs [] = "\033)0"; ++static char linux_s_kend [] = "\033[4~"; ++static char linux_s_kspd [] = "\032"; ++static char linux_s_kf11 [] = "\033[23~"; ++static char linux_s_kf12 [] = "\033[24~"; ++static char linux_s_kf13 [] = "\033[25~"; ++static char linux_s_kf14 [] = "\033[26~"; ++static char linux_s_kf15 [] = "\033[28~"; ++static char linux_s_kf16 [] = "\033[29~"; ++static char linux_s_kf17 [] = "\033[31~"; ++static char linux_s_kf18 [] = "\033[32~"; ++static char linux_s_kf19 [] = "\033[33~"; ++static char linux_s_kf20 [] = "\033[34~"; ++static char linux_s_el1 [] = "\033[1K"; ++static char linux_s_u6 [] = "\033[%i%d;%dR"; ++static char linux_s_u7 [] = "\033[6n"; ++static char linux_s_u8 [] = "\033[?6c"; ++static char linux_s_u9 [] = "\033[c"; ++static char linux_s_op [] = "\033[39;49m"; ++static char linux_s_oc [] = "\033]R"; ++static char linux_s_initc [] = "\033]P%p1%x%p2%{255}%*%{1000}%/%02x%p3%{255}%*%{1000}%/%02x%p4%{255}%*%{1000}%/%02x"; ++static char linux_s_kmous [] = "\033[M"; ++static char linux_s_setaf [] = "\033[3%p1%dm"; ++static char linux_s_setab [] = "\033[4%p1%dm"; ++static char linux_s_smpch [] = "\033[11m"; ++static char linux_s_rmpch [] = "\033[10m"; ++ ++static char linux_bool_data[] = { ++ /* 0: bw */ FALSE, ++ /* 1: am */ TRUE, ++ /* 2: xsb */ FALSE, ++ /* 3: xhp */ FALSE, ++ /* 4: xenl */ TRUE, ++ /* 5: eo */ TRUE, ++ /* 6: gn */ FALSE, ++ /* 7: hc */ FALSE, ++ /* 8: km */ FALSE, ++ /* 9: hs */ FALSE, ++ /* 10: in */ FALSE, ++ /* 11: da */ FALSE, ++ /* 12: db */ FALSE, ++ /* 13: mir */ TRUE, ++ /* 14: msgr */ TRUE, ++ /* 15: os */ FALSE, ++ /* 16: eslok */ FALSE, ++ /* 17: xt */ FALSE, ++ /* 18: hz */ FALSE, ++ /* 19: ul */ FALSE, ++ /* 20: xon */ TRUE, ++ /* 21: nxon */ FALSE, ++ /* 22: mc5i */ FALSE, ++ /* 23: chts */ FALSE, ++ /* 24: nrrmc */ FALSE, ++ /* 25: npc */ FALSE, ++ /* 26: ndscr */ FALSE, ++ /* 27: ccc */ TRUE, ++ /* 28: bce */ TRUE, ++ /* 29: hls */ FALSE, ++ /* 30: xhpa */ FALSE, ++ /* 31: crxm */ FALSE, ++ /* 32: daisy */ FALSE, ++ /* 33: xvpa */ FALSE, ++ /* 34: sam */ FALSE, ++ /* 35: cpix */ FALSE, ++ /* 36: lpix */ FALSE, ++ /* 37: OTbs */ FALSE, ++ /* 38: OTns */ FALSE, ++ /* 39: OTnc */ FALSE, ++ /* 40: OTMT */ FALSE, ++ /* 41: OTNL */ FALSE, ++ /* 42: OTpt */ FALSE, ++ /* 43: OTxr */ FALSE, ++}; ++static NCURSES_INT2 linux_number_data[] = { ++ /* 0: cols */ ABSENT_NUMERIC, ++ /* 1: it */ 8, ++ /* 2: lines */ ABSENT_NUMERIC, ++ /* 3: lm */ ABSENT_NUMERIC, ++ /* 4: xmc */ ABSENT_NUMERIC, ++ /* 5: pb */ ABSENT_NUMERIC, ++ /* 6: vt */ ABSENT_NUMERIC, ++ /* 7: wsl */ ABSENT_NUMERIC, ++ /* 8: nlab */ ABSENT_NUMERIC, ++ /* 9: lh */ ABSENT_NUMERIC, ++ /* 10: lw */ ABSENT_NUMERIC, ++ /* 11: ma */ ABSENT_NUMERIC, ++ /* 12: wnum */ ABSENT_NUMERIC, ++ /* 13: colors */ 8, ++ /* 14: pairs */ 64, ++ /* 15: ncv */ 18, ++ /* 16: bufsz */ ABSENT_NUMERIC, ++ /* 17: spinv */ ABSENT_NUMERIC, ++ /* 18: spinh */ ABSENT_NUMERIC, ++ /* 19: maddr */ ABSENT_NUMERIC, ++ /* 20: mjump */ ABSENT_NUMERIC, ++ /* 21: mcs */ ABSENT_NUMERIC, ++ /* 22: mls */ ABSENT_NUMERIC, ++ /* 23: npins */ ABSENT_NUMERIC, ++ /* 24: orc */ ABSENT_NUMERIC, ++ /* 25: orl */ ABSENT_NUMERIC, ++ /* 26: orhi */ ABSENT_NUMERIC, ++ /* 27: orvi */ ABSENT_NUMERIC, ++ /* 28: cps */ ABSENT_NUMERIC, ++ /* 29: widcs */ ABSENT_NUMERIC, ++ /* 30: btns */ ABSENT_NUMERIC, ++ /* 31: bitwin */ ABSENT_NUMERIC, ++ /* 32: bitype */ ABSENT_NUMERIC, ++ /* 33: OTug */ ABSENT_NUMERIC, ++ /* 34: OTdC */ ABSENT_NUMERIC, ++ /* 35: OTdN */ ABSENT_NUMERIC, ++ /* 36: OTdB */ ABSENT_NUMERIC, ++ /* 37: OTdT */ ABSENT_NUMERIC, ++ /* 38: OTkn */ ABSENT_NUMERIC, ++}; ++static char * linux_string_data[] = { ++ /* 0: cbt */ ABSENT_STRING, ++ /* 1: bel */ linux_s_bel, ++ /* 2: cr */ linux_s_cr, ++ /* 3: csr */ linux_s_csr, ++ /* 4: tbc */ linux_s_tbc, ++ /* 5: clear */ linux_s_clear, ++ /* 6: el */ linux_s_el, ++ /* 7: ed */ linux_s_ed, ++ /* 8: hpa */ linux_s_hpa, ++ /* 9: cmdch */ ABSENT_STRING, ++ /* 10: cup */ linux_s_cup, ++ /* 11: cud1 */ linux_s_cud1, ++ /* 12: home */ linux_s_home, ++ /* 13: civis */ linux_s_civis, ++ /* 14: cub1 */ linux_s_cub1, ++ /* 15: mrcup */ ABSENT_STRING, ++ /* 16: cnorm */ linux_s_cnorm, ++ /* 17: cuf1 */ linux_s_cuf1, ++ /* 18: ll */ ABSENT_STRING, ++ /* 19: cuu1 */ linux_s_cuu1, ++ /* 20: cvvis */ linux_s_cvvis, ++ /* 21: dch1 */ linux_s_dch1, ++ /* 22: dl1 */ linux_s_dl1, ++ /* 23: dsl */ ABSENT_STRING, ++ /* 24: hd */ ABSENT_STRING, ++ /* 25: smacs */ linux_s_smacs, ++ /* 26: blink */ linux_s_blink, ++ /* 27: bold */ linux_s_bold, ++ /* 28: smcup */ ABSENT_STRING, ++ /* 29: smdc */ ABSENT_STRING, ++ /* 30: dim */ linux_s_dim, ++ /* 31: smir */ linux_s_smir, ++ /* 32: invis */ ABSENT_STRING, ++ /* 33: prot */ ABSENT_STRING, ++ /* 34: rev */ linux_s_rev, ++ /* 35: smso */ linux_s_smso, ++ /* 36: smul */ linux_s_smul, ++ /* 37: ech */ linux_s_ech, ++ /* 38: rmacs */ linux_s_rmacs, ++ /* 39: sgr0 */ linux_s_sgr0, ++ /* 40: rmcup */ ABSENT_STRING, ++ /* 41: rmdc */ ABSENT_STRING, ++ /* 42: rmir */ linux_s_rmir, ++ /* 43: rmso */ linux_s_rmso, ++ /* 44: rmul */ linux_s_rmul, ++ /* 45: flash */ linux_s_flash, ++ /* 46: ff */ ABSENT_STRING, ++ /* 47: fsl */ ABSENT_STRING, ++ /* 48: is1 */ ABSENT_STRING, ++ /* 49: is2 */ ABSENT_STRING, ++ /* 50: is3 */ ABSENT_STRING, ++ /* 51: if */ ABSENT_STRING, ++ /* 52: ich1 */ linux_s_ich1, ++ /* 53: il1 */ linux_s_il1, ++ /* 54: ip */ ABSENT_STRING, ++ /* 55: kbs */ linux_s_kbs, ++ /* 56: ktbc */ ABSENT_STRING, ++ /* 57: kclr */ ABSENT_STRING, ++ /* 58: kctab */ ABSENT_STRING, ++ /* 59: kdch1 */ linux_s_kdch1, ++ /* 60: kdl1 */ ABSENT_STRING, ++ /* 61: kcud1 */ linux_s_kcud1, ++ /* 62: krmir */ ABSENT_STRING, ++ /* 63: kel */ ABSENT_STRING, ++ /* 64: ked */ ABSENT_STRING, ++ /* 65: kf0 */ ABSENT_STRING, ++ /* 66: kf1 */ linux_s_kf1, ++ /* 67: kf10 */ linux_s_kf10, ++ /* 68: kf2 */ linux_s_kf2, ++ /* 69: kf3 */ linux_s_kf3, ++ /* 70: kf4 */ linux_s_kf4, ++ /* 71: kf5 */ linux_s_kf5, ++ /* 72: kf6 */ linux_s_kf6, ++ /* 73: kf7 */ linux_s_kf7, ++ /* 74: kf8 */ linux_s_kf8, ++ /* 75: kf9 */ linux_s_kf9, ++ /* 76: khome */ linux_s_khome, ++ /* 77: kich1 */ linux_s_kich1, ++ /* 78: kil1 */ ABSENT_STRING, ++ /* 79: kcub1 */ linux_s_kcub1, ++ /* 80: kll */ ABSENT_STRING, ++ /* 81: knp */ linux_s_knp, ++ /* 82: kpp */ linux_s_kpp, ++ /* 83: kcuf1 */ linux_s_kcuf1, ++ /* 84: kind */ ABSENT_STRING, ++ /* 85: kri */ ABSENT_STRING, ++ /* 86: khts */ ABSENT_STRING, ++ /* 87: kcuu1 */ linux_s_kcuu1, ++ /* 88: rmkx */ ABSENT_STRING, ++ /* 89: smkx */ ABSENT_STRING, ++ /* 90: lf0 */ ABSENT_STRING, ++ /* 91: lf1 */ ABSENT_STRING, ++ /* 92: lf10 */ ABSENT_STRING, ++ /* 93: lf2 */ ABSENT_STRING, ++ /* 94: lf3 */ ABSENT_STRING, ++ /* 95: lf4 */ ABSENT_STRING, ++ /* 96: lf5 */ ABSENT_STRING, ++ /* 97: lf6 */ ABSENT_STRING, ++ /* 98: lf7 */ ABSENT_STRING, ++ /* 99: lf8 */ ABSENT_STRING, ++ /* 100: lf9 */ ABSENT_STRING, ++ /* 101: rmm */ ABSENT_STRING, ++ /* 102: smm */ ABSENT_STRING, ++ /* 103: nel */ linux_s_nel, ++ /* 104: pad */ ABSENT_STRING, ++ /* 105: dch */ linux_s_dch, ++ /* 106: dl */ linux_s_dl, ++ /* 107: cud */ linux_s_cud, ++ /* 108: ich */ linux_s_ich, ++ /* 109: indn */ ABSENT_STRING, ++ /* 110: il */ linux_s_il, ++ /* 111: cub */ linux_s_cub, ++ /* 112: cuf */ linux_s_cuf, ++ /* 113: rin */ ABSENT_STRING, ++ /* 114: cuu */ linux_s_cuu, ++ /* 115: pfkey */ ABSENT_STRING, ++ /* 116: pfloc */ ABSENT_STRING, ++ /* 117: pfx */ ABSENT_STRING, ++ /* 118: mc0 */ ABSENT_STRING, ++ /* 119: mc4 */ ABSENT_STRING, ++ /* 120: mc5 */ ABSENT_STRING, ++ /* 121: rep */ ABSENT_STRING, ++ /* 122: rs1 */ linux_s_rs1, ++ /* 123: rs2 */ ABSENT_STRING, ++ /* 124: rs3 */ ABSENT_STRING, ++ /* 125: rf */ ABSENT_STRING, ++ /* 126: rc */ linux_s_rc, ++ /* 127: vpa */ linux_s_vpa, ++ /* 128: sc */ linux_s_sc, ++ /* 129: ind */ linux_s_ind, ++ /* 130: ri */ linux_s_ri, ++ /* 131: sgr */ linux_s_sgr, ++ /* 132: hts */ linux_s_hts, ++ /* 133: wind */ ABSENT_STRING, ++ /* 134: ht */ linux_s_ht, ++ /* 135: tsl */ ABSENT_STRING, ++ /* 136: uc */ ABSENT_STRING, ++ /* 137: hu */ ABSENT_STRING, ++ /* 138: iprog */ ABSENT_STRING, ++ /* 139: ka1 */ ABSENT_STRING, ++ /* 140: ka3 */ ABSENT_STRING, ++ /* 141: kb2 */ linux_s_kb2, ++ /* 142: kc1 */ ABSENT_STRING, ++ /* 143: kc3 */ ABSENT_STRING, ++ /* 144: mc5p */ ABSENT_STRING, ++ /* 145: rmp */ ABSENT_STRING, ++ /* 146: acsc */ linux_s_acsc, ++ /* 147: pln */ ABSENT_STRING, ++ /* 148: kcbt */ linux_s_kcbt, ++ /* 149: smxon */ ABSENT_STRING, ++ /* 150: rmxon */ ABSENT_STRING, ++ /* 151: smam */ linux_s_smam, ++ /* 152: rmam */ linux_s_rmam, ++ /* 153: xonc */ ABSENT_STRING, ++ /* 154: xoffc */ ABSENT_STRING, ++ /* 155: enacs */ linux_s_enacs, ++ /* 156: smln */ ABSENT_STRING, ++ /* 157: rmln */ ABSENT_STRING, ++ /* 158: kbeg */ ABSENT_STRING, ++ /* 159: kcan */ ABSENT_STRING, ++ /* 160: kclo */ ABSENT_STRING, ++ /* 161: kcmd */ ABSENT_STRING, ++ /* 162: kcpy */ ABSENT_STRING, ++ /* 163: kcrt */ ABSENT_STRING, ++ /* 164: kend */ linux_s_kend, ++ /* 165: kent */ ABSENT_STRING, ++ /* 166: kext */ ABSENT_STRING, ++ /* 167: kfnd */ ABSENT_STRING, ++ /* 168: khlp */ ABSENT_STRING, ++ /* 169: kmrk */ ABSENT_STRING, ++ /* 170: kmsg */ ABSENT_STRING, ++ /* 171: kmov */ ABSENT_STRING, ++ /* 172: knxt */ ABSENT_STRING, ++ /* 173: kopn */ ABSENT_STRING, ++ /* 174: kopt */ ABSENT_STRING, ++ /* 175: kprv */ ABSENT_STRING, ++ /* 176: kprt */ ABSENT_STRING, ++ /* 177: krdo */ ABSENT_STRING, ++ /* 178: kref */ ABSENT_STRING, ++ /* 179: krfr */ ABSENT_STRING, ++ /* 180: krpl */ ABSENT_STRING, ++ /* 181: krst */ ABSENT_STRING, ++ /* 182: kres */ ABSENT_STRING, ++ /* 183: ksav */ ABSENT_STRING, ++ /* 184: kspd */ linux_s_kspd, ++ /* 185: kund */ ABSENT_STRING, ++ /* 186: kBEG */ ABSENT_STRING, ++ /* 187: kCAN */ ABSENT_STRING, ++ /* 188: kCMD */ ABSENT_STRING, ++ /* 189: kCPY */ ABSENT_STRING, ++ /* 190: kCRT */ ABSENT_STRING, ++ /* 191: kDC */ ABSENT_STRING, ++ /* 192: kDL */ ABSENT_STRING, ++ /* 193: kslt */ ABSENT_STRING, ++ /* 194: kEND */ ABSENT_STRING, ++ /* 195: kEOL */ ABSENT_STRING, ++ /* 196: kEXT */ ABSENT_STRING, ++ /* 197: kFND */ ABSENT_STRING, ++ /* 198: kHLP */ ABSENT_STRING, ++ /* 199: kHOM */ ABSENT_STRING, ++ /* 200: kIC */ ABSENT_STRING, ++ /* 201: kLFT */ ABSENT_STRING, ++ /* 202: kMSG */ ABSENT_STRING, ++ /* 203: kMOV */ ABSENT_STRING, ++ /* 204: kNXT */ ABSENT_STRING, ++ /* 205: kOPT */ ABSENT_STRING, ++ /* 206: kPRV */ ABSENT_STRING, ++ /* 207: kPRT */ ABSENT_STRING, ++ /* 208: kRDO */ ABSENT_STRING, ++ /* 209: kRPL */ ABSENT_STRING, ++ /* 210: kRIT */ ABSENT_STRING, ++ /* 211: kRES */ ABSENT_STRING, ++ /* 212: kSAV */ ABSENT_STRING, ++ /* 213: kSPD */ ABSENT_STRING, ++ /* 214: kUND */ ABSENT_STRING, ++ /* 215: rfi */ ABSENT_STRING, ++ /* 216: kf11 */ linux_s_kf11, ++ /* 217: kf12 */ linux_s_kf12, ++ /* 218: kf13 */ linux_s_kf13, ++ /* 219: kf14 */ linux_s_kf14, ++ /* 220: kf15 */ linux_s_kf15, ++ /* 221: kf16 */ linux_s_kf16, ++ /* 222: kf17 */ linux_s_kf17, ++ /* 223: kf18 */ linux_s_kf18, ++ /* 224: kf19 */ linux_s_kf19, ++ /* 225: kf20 */ linux_s_kf20, ++ /* 226: kf21 */ ABSENT_STRING, ++ /* 227: kf22 */ ABSENT_STRING, ++ /* 228: kf23 */ ABSENT_STRING, ++ /* 229: kf24 */ ABSENT_STRING, ++ /* 230: kf25 */ ABSENT_STRING, ++ /* 231: kf26 */ ABSENT_STRING, ++ /* 232: kf27 */ ABSENT_STRING, ++ /* 233: kf28 */ ABSENT_STRING, ++ /* 234: kf29 */ ABSENT_STRING, ++ /* 235: kf30 */ ABSENT_STRING, ++ /* 236: kf31 */ ABSENT_STRING, ++ /* 237: kf32 */ ABSENT_STRING, ++ /* 238: kf33 */ ABSENT_STRING, ++ /* 239: kf34 */ ABSENT_STRING, ++ /* 240: kf35 */ ABSENT_STRING, ++ /* 241: kf36 */ ABSENT_STRING, ++ /* 242: kf37 */ ABSENT_STRING, ++ /* 243: kf38 */ ABSENT_STRING, ++ /* 244: kf39 */ ABSENT_STRING, ++ /* 245: kf40 */ ABSENT_STRING, ++ /* 246: kf41 */ ABSENT_STRING, ++ /* 247: kf42 */ ABSENT_STRING, ++ /* 248: kf43 */ ABSENT_STRING, ++ /* 249: kf44 */ ABSENT_STRING, ++ /* 250: kf45 */ ABSENT_STRING, ++ /* 251: kf46 */ ABSENT_STRING, ++ /* 252: kf47 */ ABSENT_STRING, ++ /* 253: kf48 */ ABSENT_STRING, ++ /* 254: kf49 */ ABSENT_STRING, ++ /* 255: kf50 */ ABSENT_STRING, ++ /* 256: kf51 */ ABSENT_STRING, ++ /* 257: kf52 */ ABSENT_STRING, ++ /* 258: kf53 */ ABSENT_STRING, ++ /* 259: kf54 */ ABSENT_STRING, ++ /* 260: kf55 */ ABSENT_STRING, ++ /* 261: kf56 */ ABSENT_STRING, ++ /* 262: kf57 */ ABSENT_STRING, ++ /* 263: kf58 */ ABSENT_STRING, ++ /* 264: kf59 */ ABSENT_STRING, ++ /* 265: kf60 */ ABSENT_STRING, ++ /* 266: kf61 */ ABSENT_STRING, ++ /* 267: kf62 */ ABSENT_STRING, ++ /* 268: kf63 */ ABSENT_STRING, ++ /* 269: el1 */ linux_s_el1, ++ /* 270: mgc */ ABSENT_STRING, ++ /* 271: smgl */ ABSENT_STRING, ++ /* 272: smgr */ ABSENT_STRING, ++ /* 273: fln */ ABSENT_STRING, ++ /* 274: sclk */ ABSENT_STRING, ++ /* 275: dclk */ ABSENT_STRING, ++ /* 276: rmclk */ ABSENT_STRING, ++ /* 277: cwin */ ABSENT_STRING, ++ /* 278: wingo */ ABSENT_STRING, ++ /* 279: hup */ ABSENT_STRING, ++ /* 280: dial */ ABSENT_STRING, ++ /* 281: qdial */ ABSENT_STRING, ++ /* 282: tone */ ABSENT_STRING, ++ /* 283: pulse */ ABSENT_STRING, ++ /* 284: hook */ ABSENT_STRING, ++ /* 285: pause */ ABSENT_STRING, ++ /* 286: wait */ ABSENT_STRING, ++ /* 287: u0 */ ABSENT_STRING, ++ /* 288: u1 */ ABSENT_STRING, ++ /* 289: u2 */ ABSENT_STRING, ++ /* 290: u3 */ ABSENT_STRING, ++ /* 291: u4 */ ABSENT_STRING, ++ /* 292: u5 */ ABSENT_STRING, ++ /* 293: u6 */ linux_s_u6, ++ /* 294: u7 */ linux_s_u7, ++ /* 295: u8 */ linux_s_u8, ++ /* 296: u9 */ linux_s_u9, ++ /* 297: op */ linux_s_op, ++ /* 298: oc */ linux_s_oc, ++ /* 299: initc */ linux_s_initc, ++ /* 300: initp */ ABSENT_STRING, ++ /* 301: scp */ ABSENT_STRING, ++ /* 302: setf */ ABSENT_STRING, ++ /* 303: setb */ ABSENT_STRING, ++ /* 304: cpi */ ABSENT_STRING, ++ /* 305: lpi */ ABSENT_STRING, ++ /* 306: chr */ ABSENT_STRING, ++ /* 307: cvr */ ABSENT_STRING, ++ /* 308: defc */ ABSENT_STRING, ++ /* 309: swidm */ ABSENT_STRING, ++ /* 310: sdrfq */ ABSENT_STRING, ++ /* 311: sitm */ ABSENT_STRING, ++ /* 312: slm */ ABSENT_STRING, ++ /* 313: smicm */ ABSENT_STRING, ++ /* 314: snlq */ ABSENT_STRING, ++ /* 315: snrmq */ ABSENT_STRING, ++ /* 316: sshm */ ABSENT_STRING, ++ /* 317: ssubm */ ABSENT_STRING, ++ /* 318: ssupm */ ABSENT_STRING, ++ /* 319: sum */ ABSENT_STRING, ++ /* 320: rwidm */ ABSENT_STRING, ++ /* 321: ritm */ ABSENT_STRING, ++ /* 322: rlm */ ABSENT_STRING, ++ /* 323: rmicm */ ABSENT_STRING, ++ /* 324: rshm */ ABSENT_STRING, ++ /* 325: rsubm */ ABSENT_STRING, ++ /* 326: rsupm */ ABSENT_STRING, ++ /* 327: rum */ ABSENT_STRING, ++ /* 328: mhpa */ ABSENT_STRING, ++ /* 329: mcud1 */ ABSENT_STRING, ++ /* 330: mcub1 */ ABSENT_STRING, ++ /* 331: mcuf1 */ ABSENT_STRING, ++ /* 332: mvpa */ ABSENT_STRING, ++ /* 333: mcuu1 */ ABSENT_STRING, ++ /* 334: porder */ ABSENT_STRING, ++ /* 335: mcud */ ABSENT_STRING, ++ /* 336: mcub */ ABSENT_STRING, ++ /* 337: mcuf */ ABSENT_STRING, ++ /* 338: mcuu */ ABSENT_STRING, ++ /* 339: scs */ ABSENT_STRING, ++ /* 340: smgb */ ABSENT_STRING, ++ /* 341: smgbp */ ABSENT_STRING, ++ /* 342: smglp */ ABSENT_STRING, ++ /* 343: smgrp */ ABSENT_STRING, ++ /* 344: smgt */ ABSENT_STRING, ++ /* 345: smgtp */ ABSENT_STRING, ++ /* 346: sbim */ ABSENT_STRING, ++ /* 347: scsd */ ABSENT_STRING, ++ /* 348: rbim */ ABSENT_STRING, ++ /* 349: rcsd */ ABSENT_STRING, ++ /* 350: subcs */ ABSENT_STRING, ++ /* 351: supcs */ ABSENT_STRING, ++ /* 352: docr */ ABSENT_STRING, ++ /* 353: zerom */ ABSENT_STRING, ++ /* 354: csnm */ ABSENT_STRING, ++ /* 355: kmous */ linux_s_kmous, ++ /* 356: minfo */ ABSENT_STRING, ++ /* 357: reqmp */ ABSENT_STRING, ++ /* 358: getm */ ABSENT_STRING, ++ /* 359: setaf */ linux_s_setaf, ++ /* 360: setab */ linux_s_setab, ++ /* 361: pfxl */ ABSENT_STRING, ++ /* 362: devt */ ABSENT_STRING, ++ /* 363: csin */ ABSENT_STRING, ++ /* 364: s0ds */ ABSENT_STRING, ++ /* 365: s1ds */ ABSENT_STRING, ++ /* 366: s2ds */ ABSENT_STRING, ++ /* 367: s3ds */ ABSENT_STRING, ++ /* 368: smglr */ ABSENT_STRING, ++ /* 369: smgtb */ ABSENT_STRING, ++ /* 370: birep */ ABSENT_STRING, ++ /* 371: binel */ ABSENT_STRING, ++ /* 372: bicr */ ABSENT_STRING, ++ /* 373: colornm */ ABSENT_STRING, ++ /* 374: defbi */ ABSENT_STRING, ++ /* 375: endbi */ ABSENT_STRING, ++ /* 376: setcolor */ ABSENT_STRING, ++ /* 377: slines */ ABSENT_STRING, ++ /* 378: dispc */ ABSENT_STRING, ++ /* 379: smpch */ linux_s_smpch, ++ /* 380: rmpch */ linux_s_rmpch, ++ /* 381: smsc */ ABSENT_STRING, ++ /* 382: rmsc */ ABSENT_STRING, ++ /* 383: pctrm */ ABSENT_STRING, ++ /* 384: scesc */ ABSENT_STRING, ++ /* 385: scesa */ ABSENT_STRING, ++ /* 386: ehhlm */ ABSENT_STRING, ++ /* 387: elhlm */ ABSENT_STRING, ++ /* 388: elohlm */ ABSENT_STRING, ++ /* 389: erhlm */ ABSENT_STRING, ++ /* 390: ethlm */ ABSENT_STRING, ++ /* 391: evhlm */ ABSENT_STRING, ++ /* 392: sgr1 */ ABSENT_STRING, ++ /* 393: slength */ ABSENT_STRING, ++ /* 394: OTi2 */ ABSENT_STRING, ++ /* 395: OTrs */ ABSENT_STRING, ++ /* 396: OTnl */ ABSENT_STRING, ++ /* 397: OTbc */ ABSENT_STRING, ++ /* 398: OTko */ ABSENT_STRING, ++ /* 399: OTma */ ABSENT_STRING, ++ /* 400: OTG2 */ ABSENT_STRING, ++ /* 401: OTG3 */ ABSENT_STRING, ++ /* 402: OTG1 */ ABSENT_STRING, ++ /* 403: OTG4 */ ABSENT_STRING, ++ /* 404: OTGR */ ABSENT_STRING, ++ /* 405: OTGL */ ABSENT_STRING, ++ /* 406: OTGU */ ABSENT_STRING, ++ /* 407: OTGD */ ABSENT_STRING, ++ /* 408: OTGH */ ABSENT_STRING, ++ /* 409: OTGV */ ABSENT_STRING, ++ /* 410: OTGC */ ABSENT_STRING, ++ /* 411: meml */ ABSENT_STRING, ++ /* 412: memu */ ABSENT_STRING, ++ /* 413: box1 */ ABSENT_STRING, ++}; ++/* rxvt */ ++ ++static char rxvt_alias_data[] = "rxvt|rxvt terminal emulator (X Window System)"; ++ ++static char rxvt_s_bel [] = "\007"; ++static char rxvt_s_cr [] = "\015"; ++static char rxvt_s_csr [] = "\033[%i%p1%d;%p2%dr"; ++static char rxvt_s_tbc [] = "\033[3g"; ++static char rxvt_s_clear [] = "\033[H\033[2J"; ++static char rxvt_s_el [] = "\033[K"; ++static char rxvt_s_ed [] = "\033[J"; ++static char rxvt_s_hpa [] = "\033[%i%p1%dG"; ++static char rxvt_s_cup [] = "\033[%i%p1%d;%p2%dH"; ++static char rxvt_s_cud1 [] = "\012"; ++static char rxvt_s_home [] = "\033[H"; ++static char rxvt_s_civis [] = "\033[?25l"; ++static char rxvt_s_cub1 [] = "\010"; ++static char rxvt_s_cnorm [] = "\033[?25h"; ++static char rxvt_s_cuf1 [] = "\033[C"; ++static char rxvt_s_cuu1 [] = "\033[A"; ++static char rxvt_s_dl1 [] = "\033[M"; ++static char rxvt_s_smacs [] = "\016"; ++static char rxvt_s_blink [] = "\033[5m"; ++static char rxvt_s_bold [] = "\033[1m"; ++static char rxvt_s_smcup [] = "\0337\033[?47h"; ++static char rxvt_s_smir [] = "\033[4h"; ++static char rxvt_s_rev [] = "\033[7m"; ++static char rxvt_s_smso [] = "\033[7m"; ++static char rxvt_s_smul [] = "\033[4m"; ++static char rxvt_s_rmacs [] = "\017"; ++static char rxvt_s_sgr0 [] = "\033[m\017"; ++static char rxvt_s_rmcup [] = "\033[2J\033[?47l\0338"; ++static char rxvt_s_rmir [] = "\033[4l"; ++static char rxvt_s_rmso [] = "\033[27m"; ++static char rxvt_s_rmul [] = "\033[24m"; ++static char rxvt_s_flash [] = "\033[?5h$<100/>\033[?5l"; ++static char rxvt_s_is1 [] = "\033[?47l\033=\033[?1l"; ++static char rxvt_s_is2 [] = "\033[r\033[m\033[2J\033[H\033[?7h\033[?1;3;4;6l\033[4l"; ++static char rxvt_s_ich1 [] = "\033[@"; ++static char rxvt_s_il1 [] = "\033[L"; ++static char rxvt_s_kbs [] = "\010"; ++static char rxvt_s_kdch1 [] = "\033[3~"; ++static char rxvt_s_kcud1 [] = "\033[B"; ++static char rxvt_s_kel [] = "\033[8^"; ++static char rxvt_s_kf0 [] = "\033[21~"; ++static char rxvt_s_kf1 [] = "\033[11~"; ++static char rxvt_s_kf10 [] = "\033[21~"; ++static char rxvt_s_kf2 [] = "\033[12~"; ++static char rxvt_s_kf3 [] = "\033[13~"; ++static char rxvt_s_kf4 [] = "\033[14~"; ++static char rxvt_s_kf5 [] = "\033[15~"; ++static char rxvt_s_kf6 [] = "\033[17~"; ++static char rxvt_s_kf7 [] = "\033[18~"; ++static char rxvt_s_kf8 [] = "\033[19~"; ++static char rxvt_s_kf9 [] = "\033[20~"; ++static char rxvt_s_khome [] = "\033[7~"; ++static char rxvt_s_kich1 [] = "\033[2~"; ++static char rxvt_s_kcub1 [] = "\033[D"; ++static char rxvt_s_knp [] = "\033[6~"; ++static char rxvt_s_kpp [] = "\033[5~"; ++static char rxvt_s_kcuf1 [] = "\033[C"; ++static char rxvt_s_kind [] = "\033[a"; ++static char rxvt_s_kri [] = "\033[b"; ++static char rxvt_s_kcuu1 [] = "\033[A"; ++static char rxvt_s_rmkx [] = "\033>"; ++static char rxvt_s_smkx [] = "\033="; ++static char rxvt_s_dl [] = "\033[%p1%dM"; ++static char rxvt_s_cud [] = "\033[%p1%dB"; ++static char rxvt_s_ich [] = "\033[%p1%d@"; ++static char rxvt_s_il [] = "\033[%p1%dL"; ++static char rxvt_s_cub [] = "\033[%p1%dD"; ++static char rxvt_s_cuf [] = "\033[%p1%dC"; ++static char rxvt_s_cuu [] = "\033[%p1%dA"; ++static char rxvt_s_rs1 [] = "\033>\033[1;3;4;5;6l\033[?7h\033[m\033[r\033[2J\033[H"; ++static char rxvt_s_rs2 [] = "\033[r\033[m\033[2J\033[H\033[?7h\033[?1;3;4;6l\033[4l\033>\033[?1000l\033[?25h"; ++static char rxvt_s_rc [] = "\0338"; ++static char rxvt_s_vpa [] = "\033[%i%p1%dd"; ++static char rxvt_s_sc [] = "\0337"; ++static char rxvt_s_ind [] = "\012"; ++static char rxvt_s_ri [] = "\033M"; ++static char rxvt_s_sgr [] = "\033[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;"; ++static char rxvt_s_hts [] = "\033H"; ++static char rxvt_s_ht [] = "\011"; ++static char rxvt_s_ka1 [] = "\033Ow"; ++static char rxvt_s_ka3 [] = "\033Oy"; ++static char rxvt_s_kb2 [] = "\033Ou"; ++static char rxvt_s_kc1 [] = "\033Oq"; ++static char rxvt_s_kc3 [] = "\033Os"; ++static char rxvt_s_acsc [] = "``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~"; ++static char rxvt_s_kcbt [] = "\033[Z"; ++static char rxvt_s_enacs [] = "\033(B\033)0"; ++static char rxvt_s_kend [] = "\033[8~"; ++static char rxvt_s_kent [] = "\033OM"; ++static char rxvt_s_kfnd [] = "\033[1~"; ++static char rxvt_s_kDC [] = "\033[3$"; ++static char rxvt_s_kslt [] = "\033[4~"; ++static char rxvt_s_kEND [] = "\033[8$"; ++static char rxvt_s_kHOM [] = "\033[7$"; ++static char rxvt_s_kIC [] = "\033[2$"; ++static char rxvt_s_kLFT [] = "\033[d"; ++static char rxvt_s_kNXT [] = "\033[6$"; ++static char rxvt_s_kPRV [] = "\033[5$"; ++static char rxvt_s_kRIT [] = "\033[c"; ++static char rxvt_s_kf11 [] = "\033[23~"; ++static char rxvt_s_kf12 [] = "\033[24~"; ++static char rxvt_s_kf13 [] = "\033[25~"; ++static char rxvt_s_kf14 [] = "\033[26~"; ++static char rxvt_s_kf15 [] = "\033[28~"; ++static char rxvt_s_kf16 [] = "\033[29~"; ++static char rxvt_s_kf17 [] = "\033[31~"; ++static char rxvt_s_kf18 [] = "\033[32~"; ++static char rxvt_s_kf19 [] = "\033[33~"; ++static char rxvt_s_kf20 [] = "\033[34~"; ++static char rxvt_s_kf21 [] = "\033[23$"; ++static char rxvt_s_kf22 [] = "\033[24$"; ++static char rxvt_s_kf23 [] = "\033[11^"; ++static char rxvt_s_kf24 [] = "\033[12^"; ++static char rxvt_s_kf25 [] = "\033[13^"; ++static char rxvt_s_kf26 [] = "\033[14^"; ++static char rxvt_s_kf27 [] = "\033[15^"; ++static char rxvt_s_kf28 [] = "\033[17^"; ++static char rxvt_s_kf29 [] = "\033[18^"; ++static char rxvt_s_kf30 [] = "\033[19^"; ++static char rxvt_s_kf31 [] = "\033[20^"; ++static char rxvt_s_kf32 [] = "\033[21^"; ++static char rxvt_s_kf33 [] = "\033[23^"; ++static char rxvt_s_kf34 [] = "\033[24^"; ++static char rxvt_s_kf35 [] = "\033[25^"; ++static char rxvt_s_kf36 [] = "\033[26^"; ++static char rxvt_s_kf37 [] = "\033[28^"; ++static char rxvt_s_kf38 [] = "\033[29^"; ++static char rxvt_s_kf39 [] = "\033[31^"; ++static char rxvt_s_kf40 [] = "\033[32^"; ++static char rxvt_s_kf41 [] = "\033[33^"; ++static char rxvt_s_kf42 [] = "\033[34^"; ++static char rxvt_s_kf43 [] = "\033[23@"; ++static char rxvt_s_kf44 [] = "\033[24@"; ++static char rxvt_s_el1 [] = "\033[1K"; ++static char rxvt_s_u6 [] = "\033[%i%d;%dR"; ++static char rxvt_s_u7 [] = "\033[6n"; ++static char rxvt_s_u8 [] = "\033[?1;2c"; ++static char rxvt_s_u9 [] = "\033[c"; ++static char rxvt_s_op [] = "\033[39;49m"; ++static char rxvt_s_kmous [] = "\033[M"; ++static char rxvt_s_setaf [] = "\033[3%p1%dm"; ++static char rxvt_s_setab [] = "\033[4%p1%dm"; ++static char rxvt_s_s0ds [] = "\033(B"; ++static char rxvt_s_s1ds [] = "\033(0"; ++ ++static char rxvt_bool_data[] = { ++ /* 0: bw */ FALSE, ++ /* 1: am */ TRUE, ++ /* 2: xsb */ FALSE, ++ /* 3: xhp */ FALSE, ++ /* 4: xenl */ TRUE, ++ /* 5: eo */ TRUE, ++ /* 6: gn */ FALSE, ++ /* 7: hc */ FALSE, ++ /* 8: km */ FALSE, ++ /* 9: hs */ FALSE, ++ /* 10: in */ FALSE, ++ /* 11: da */ FALSE, ++ /* 12: db */ FALSE, ++ /* 13: mir */ TRUE, ++ /* 14: msgr */ TRUE, ++ /* 15: os */ FALSE, ++ /* 16: eslok */ FALSE, ++ /* 17: xt */ FALSE, ++ /* 18: hz */ FALSE, ++ /* 19: ul */ FALSE, ++ /* 20: xon */ TRUE, ++ /* 21: nxon */ FALSE, ++ /* 22: mc5i */ FALSE, ++ /* 23: chts */ FALSE, ++ /* 24: nrrmc */ FALSE, ++ /* 25: npc */ FALSE, ++ /* 26: ndscr */ FALSE, ++ /* 27: ccc */ FALSE, ++ /* 28: bce */ TRUE, ++ /* 29: hls */ FALSE, ++ /* 30: xhpa */ FALSE, ++ /* 31: crxm */ FALSE, ++ /* 32: daisy */ FALSE, ++ /* 33: xvpa */ FALSE, ++ /* 34: sam */ FALSE, ++ /* 35: cpix */ FALSE, ++ /* 36: lpix */ FALSE, ++ /* 37: OTbs */ TRUE, ++ /* 38: OTns */ FALSE, ++ /* 39: OTnc */ FALSE, ++ /* 40: OTMT */ FALSE, ++ /* 41: OTNL */ FALSE, ++ /* 42: OTpt */ FALSE, ++ /* 43: OTxr */ FALSE, ++}; ++static NCURSES_INT2 rxvt_number_data[] = { ++ /* 0: cols */ 80, ++ /* 1: it */ 8, ++ /* 2: lines */ 24, ++ /* 3: lm */ ABSENT_NUMERIC, ++ /* 4: xmc */ ABSENT_NUMERIC, ++ /* 5: pb */ ABSENT_NUMERIC, ++ /* 6: vt */ ABSENT_NUMERIC, ++ /* 7: wsl */ ABSENT_NUMERIC, ++ /* 8: nlab */ ABSENT_NUMERIC, ++ /* 9: lh */ ABSENT_NUMERIC, ++ /* 10: lw */ ABSENT_NUMERIC, ++ /* 11: ma */ ABSENT_NUMERIC, ++ /* 12: wnum */ ABSENT_NUMERIC, ++ /* 13: colors */ 8, ++ /* 14: pairs */ 64, ++ /* 15: ncv */ CANCELLED_NUMERIC, ++ /* 16: bufsz */ ABSENT_NUMERIC, ++ /* 17: spinv */ ABSENT_NUMERIC, ++ /* 18: spinh */ ABSENT_NUMERIC, ++ /* 19: maddr */ ABSENT_NUMERIC, ++ /* 20: mjump */ ABSENT_NUMERIC, ++ /* 21: mcs */ ABSENT_NUMERIC, ++ /* 22: mls */ ABSENT_NUMERIC, ++ /* 23: npins */ ABSENT_NUMERIC, ++ /* 24: orc */ ABSENT_NUMERIC, ++ /* 25: orl */ ABSENT_NUMERIC, ++ /* 26: orhi */ ABSENT_NUMERIC, ++ /* 27: orvi */ ABSENT_NUMERIC, ++ /* 28: cps */ ABSENT_NUMERIC, ++ /* 29: widcs */ ABSENT_NUMERIC, ++ /* 30: btns */ ABSENT_NUMERIC, ++ /* 31: bitwin */ ABSENT_NUMERIC, ++ /* 32: bitype */ ABSENT_NUMERIC, ++ /* 33: OTug */ ABSENT_NUMERIC, ++ /* 34: OTdC */ ABSENT_NUMERIC, ++ /* 35: OTdN */ ABSENT_NUMERIC, ++ /* 36: OTdB */ ABSENT_NUMERIC, ++ /* 37: OTdT */ ABSENT_NUMERIC, ++ /* 38: OTkn */ ABSENT_NUMERIC, ++}; ++static char * rxvt_string_data[] = { ++ /* 0: cbt */ ABSENT_STRING, ++ /* 1: bel */ rxvt_s_bel, ++ /* 2: cr */ rxvt_s_cr, ++ /* 3: csr */ rxvt_s_csr, ++ /* 4: tbc */ rxvt_s_tbc, ++ /* 5: clear */ rxvt_s_clear, ++ /* 6: el */ rxvt_s_el, ++ /* 7: ed */ rxvt_s_ed, ++ /* 8: hpa */ rxvt_s_hpa, ++ /* 9: cmdch */ ABSENT_STRING, ++ /* 10: cup */ rxvt_s_cup, ++ /* 11: cud1 */ rxvt_s_cud1, ++ /* 12: home */ rxvt_s_home, ++ /* 13: civis */ rxvt_s_civis, ++ /* 14: cub1 */ rxvt_s_cub1, ++ /* 15: mrcup */ ABSENT_STRING, ++ /* 16: cnorm */ rxvt_s_cnorm, ++ /* 17: cuf1 */ rxvt_s_cuf1, ++ /* 18: ll */ ABSENT_STRING, ++ /* 19: cuu1 */ rxvt_s_cuu1, ++ /* 20: cvvis */ ABSENT_STRING, ++ /* 21: dch1 */ ABSENT_STRING, ++ /* 22: dl1 */ rxvt_s_dl1, ++ /* 23: dsl */ ABSENT_STRING, ++ /* 24: hd */ ABSENT_STRING, ++ /* 25: smacs */ rxvt_s_smacs, ++ /* 26: blink */ rxvt_s_blink, ++ /* 27: bold */ rxvt_s_bold, ++ /* 28: smcup */ rxvt_s_smcup, ++ /* 29: smdc */ ABSENT_STRING, ++ /* 30: dim */ ABSENT_STRING, ++ /* 31: smir */ rxvt_s_smir, ++ /* 32: invis */ ABSENT_STRING, ++ /* 33: prot */ ABSENT_STRING, ++ /* 34: rev */ rxvt_s_rev, ++ /* 35: smso */ rxvt_s_smso, ++ /* 36: smul */ rxvt_s_smul, ++ /* 37: ech */ ABSENT_STRING, ++ /* 38: rmacs */ rxvt_s_rmacs, ++ /* 39: sgr0 */ rxvt_s_sgr0, ++ /* 40: rmcup */ rxvt_s_rmcup, ++ /* 41: rmdc */ ABSENT_STRING, ++ /* 42: rmir */ rxvt_s_rmir, ++ /* 43: rmso */ rxvt_s_rmso, ++ /* 44: rmul */ rxvt_s_rmul, ++ /* 45: flash */ rxvt_s_flash, ++ /* 46: ff */ ABSENT_STRING, ++ /* 47: fsl */ ABSENT_STRING, ++ /* 48: is1 */ rxvt_s_is1, ++ /* 49: is2 */ rxvt_s_is2, ++ /* 50: is3 */ ABSENT_STRING, ++ /* 51: if */ ABSENT_STRING, ++ /* 52: ich1 */ rxvt_s_ich1, ++ /* 53: il1 */ rxvt_s_il1, ++ /* 54: ip */ ABSENT_STRING, ++ /* 55: kbs */ rxvt_s_kbs, ++ /* 56: ktbc */ ABSENT_STRING, ++ /* 57: kclr */ ABSENT_STRING, ++ /* 58: kctab */ ABSENT_STRING, ++ /* 59: kdch1 */ rxvt_s_kdch1, ++ /* 60: kdl1 */ ABSENT_STRING, ++ /* 61: kcud1 */ rxvt_s_kcud1, ++ /* 62: krmir */ ABSENT_STRING, ++ /* 63: kel */ rxvt_s_kel, ++ /* 64: ked */ ABSENT_STRING, ++ /* 65: kf0 */ rxvt_s_kf0, ++ /* 66: kf1 */ rxvt_s_kf1, ++ /* 67: kf10 */ rxvt_s_kf10, ++ /* 68: kf2 */ rxvt_s_kf2, ++ /* 69: kf3 */ rxvt_s_kf3, ++ /* 70: kf4 */ rxvt_s_kf4, ++ /* 71: kf5 */ rxvt_s_kf5, ++ /* 72: kf6 */ rxvt_s_kf6, ++ /* 73: kf7 */ rxvt_s_kf7, ++ /* 74: kf8 */ rxvt_s_kf8, ++ /* 75: kf9 */ rxvt_s_kf9, ++ /* 76: khome */ rxvt_s_khome, ++ /* 77: kich1 */ rxvt_s_kich1, ++ /* 78: kil1 */ ABSENT_STRING, ++ /* 79: kcub1 */ rxvt_s_kcub1, ++ /* 80: kll */ ABSENT_STRING, ++ /* 81: knp */ rxvt_s_knp, ++ /* 82: kpp */ rxvt_s_kpp, ++ /* 83: kcuf1 */ rxvt_s_kcuf1, ++ /* 84: kind */ rxvt_s_kind, ++ /* 85: kri */ rxvt_s_kri, ++ /* 86: khts */ ABSENT_STRING, ++ /* 87: kcuu1 */ rxvt_s_kcuu1, ++ /* 88: rmkx */ rxvt_s_rmkx, ++ /* 89: smkx */ rxvt_s_smkx, ++ /* 90: lf0 */ ABSENT_STRING, ++ /* 91: lf1 */ ABSENT_STRING, ++ /* 92: lf10 */ ABSENT_STRING, ++ /* 93: lf2 */ ABSENT_STRING, ++ /* 94: lf3 */ ABSENT_STRING, ++ /* 95: lf4 */ ABSENT_STRING, ++ /* 96: lf5 */ ABSENT_STRING, ++ /* 97: lf6 */ ABSENT_STRING, ++ /* 98: lf7 */ ABSENT_STRING, ++ /* 99: lf8 */ ABSENT_STRING, ++ /* 100: lf9 */ ABSENT_STRING, ++ /* 101: rmm */ ABSENT_STRING, ++ /* 102: smm */ ABSENT_STRING, ++ /* 103: nel */ ABSENT_STRING, ++ /* 104: pad */ ABSENT_STRING, ++ /* 105: dch */ ABSENT_STRING, ++ /* 106: dl */ rxvt_s_dl, ++ /* 107: cud */ rxvt_s_cud, ++ /* 108: ich */ rxvt_s_ich, ++ /* 109: indn */ ABSENT_STRING, ++ /* 110: il */ rxvt_s_il, ++ /* 111: cub */ rxvt_s_cub, ++ /* 112: cuf */ rxvt_s_cuf, ++ /* 113: rin */ ABSENT_STRING, ++ /* 114: cuu */ rxvt_s_cuu, ++ /* 115: pfkey */ ABSENT_STRING, ++ /* 116: pfloc */ ABSENT_STRING, ++ /* 117: pfx */ ABSENT_STRING, ++ /* 118: mc0 */ ABSENT_STRING, ++ /* 119: mc4 */ ABSENT_STRING, ++ /* 120: mc5 */ ABSENT_STRING, ++ /* 121: rep */ ABSENT_STRING, ++ /* 122: rs1 */ rxvt_s_rs1, ++ /* 123: rs2 */ rxvt_s_rs2, ++ /* 124: rs3 */ ABSENT_STRING, ++ /* 125: rf */ ABSENT_STRING, ++ /* 126: rc */ rxvt_s_rc, ++ /* 127: vpa */ rxvt_s_vpa, ++ /* 128: sc */ rxvt_s_sc, ++ /* 129: ind */ rxvt_s_ind, ++ /* 130: ri */ rxvt_s_ri, ++ /* 131: sgr */ rxvt_s_sgr, ++ /* 132: hts */ rxvt_s_hts, ++ /* 133: wind */ ABSENT_STRING, ++ /* 134: ht */ rxvt_s_ht, ++ /* 135: tsl */ ABSENT_STRING, ++ /* 136: uc */ ABSENT_STRING, ++ /* 137: hu */ ABSENT_STRING, ++ /* 138: iprog */ ABSENT_STRING, ++ /* 139: ka1 */ rxvt_s_ka1, ++ /* 140: ka3 */ rxvt_s_ka3, ++ /* 141: kb2 */ rxvt_s_kb2, ++ /* 142: kc1 */ rxvt_s_kc1, ++ /* 143: kc3 */ rxvt_s_kc3, ++ /* 144: mc5p */ ABSENT_STRING, ++ /* 145: rmp */ ABSENT_STRING, ++ /* 146: acsc */ rxvt_s_acsc, ++ /* 147: pln */ ABSENT_STRING, ++ /* 148: kcbt */ rxvt_s_kcbt, ++ /* 149: smxon */ ABSENT_STRING, ++ /* 150: rmxon */ ABSENT_STRING, ++ /* 151: smam */ ABSENT_STRING, ++ /* 152: rmam */ ABSENT_STRING, ++ /* 153: xonc */ ABSENT_STRING, ++ /* 154: xoffc */ ABSENT_STRING, ++ /* 155: enacs */ rxvt_s_enacs, ++ /* 156: smln */ ABSENT_STRING, ++ /* 157: rmln */ ABSENT_STRING, ++ /* 158: kbeg */ ABSENT_STRING, ++ /* 159: kcan */ ABSENT_STRING, ++ /* 160: kclo */ ABSENT_STRING, ++ /* 161: kcmd */ ABSENT_STRING, ++ /* 162: kcpy */ ABSENT_STRING, ++ /* 163: kcrt */ ABSENT_STRING, ++ /* 164: kend */ rxvt_s_kend, ++ /* 165: kent */ rxvt_s_kent, ++ /* 166: kext */ ABSENT_STRING, ++ /* 167: kfnd */ rxvt_s_kfnd, ++ /* 168: khlp */ ABSENT_STRING, ++ /* 169: kmrk */ ABSENT_STRING, ++ /* 170: kmsg */ ABSENT_STRING, ++ /* 171: kmov */ ABSENT_STRING, ++ /* 172: knxt */ ABSENT_STRING, ++ /* 173: kopn */ ABSENT_STRING, ++ /* 174: kopt */ ABSENT_STRING, ++ /* 175: kprv */ ABSENT_STRING, ++ /* 176: kprt */ ABSENT_STRING, ++ /* 177: krdo */ ABSENT_STRING, ++ /* 178: kref */ ABSENT_STRING, ++ /* 179: krfr */ ABSENT_STRING, ++ /* 180: krpl */ ABSENT_STRING, ++ /* 181: krst */ ABSENT_STRING, ++ /* 182: kres */ ABSENT_STRING, ++ /* 183: ksav */ ABSENT_STRING, ++ /* 184: kspd */ ABSENT_STRING, ++ /* 185: kund */ ABSENT_STRING, ++ /* 186: kBEG */ ABSENT_STRING, ++ /* 187: kCAN */ ABSENT_STRING, ++ /* 188: kCMD */ ABSENT_STRING, ++ /* 189: kCPY */ ABSENT_STRING, ++ /* 190: kCRT */ ABSENT_STRING, ++ /* 191: kDC */ rxvt_s_kDC, ++ /* 192: kDL */ ABSENT_STRING, ++ /* 193: kslt */ rxvt_s_kslt, ++ /* 194: kEND */ rxvt_s_kEND, ++ /* 195: kEOL */ ABSENT_STRING, ++ /* 196: kEXT */ ABSENT_STRING, ++ /* 197: kFND */ ABSENT_STRING, ++ /* 198: kHLP */ ABSENT_STRING, ++ /* 199: kHOM */ rxvt_s_kHOM, ++ /* 200: kIC */ rxvt_s_kIC, ++ /* 201: kLFT */ rxvt_s_kLFT, ++ /* 202: kMSG */ ABSENT_STRING, ++ /* 203: kMOV */ ABSENT_STRING, ++ /* 204: kNXT */ rxvt_s_kNXT, ++ /* 205: kOPT */ ABSENT_STRING, ++ /* 206: kPRV */ rxvt_s_kPRV, ++ /* 207: kPRT */ ABSENT_STRING, ++ /* 208: kRDO */ ABSENT_STRING, ++ /* 209: kRPL */ ABSENT_STRING, ++ /* 210: kRIT */ rxvt_s_kRIT, ++ /* 211: kRES */ ABSENT_STRING, ++ /* 212: kSAV */ ABSENT_STRING, ++ /* 213: kSPD */ ABSENT_STRING, ++ /* 214: kUND */ ABSENT_STRING, ++ /* 215: rfi */ ABSENT_STRING, ++ /* 216: kf11 */ rxvt_s_kf11, ++ /* 217: kf12 */ rxvt_s_kf12, ++ /* 218: kf13 */ rxvt_s_kf13, ++ /* 219: kf14 */ rxvt_s_kf14, ++ /* 220: kf15 */ rxvt_s_kf15, ++ /* 221: kf16 */ rxvt_s_kf16, ++ /* 222: kf17 */ rxvt_s_kf17, ++ /* 223: kf18 */ rxvt_s_kf18, ++ /* 224: kf19 */ rxvt_s_kf19, ++ /* 225: kf20 */ rxvt_s_kf20, ++ /* 226: kf21 */ rxvt_s_kf21, ++ /* 227: kf22 */ rxvt_s_kf22, ++ /* 228: kf23 */ rxvt_s_kf23, ++ /* 229: kf24 */ rxvt_s_kf24, ++ /* 230: kf25 */ rxvt_s_kf25, ++ /* 231: kf26 */ rxvt_s_kf26, ++ /* 232: kf27 */ rxvt_s_kf27, ++ /* 233: kf28 */ rxvt_s_kf28, ++ /* 234: kf29 */ rxvt_s_kf29, ++ /* 235: kf30 */ rxvt_s_kf30, ++ /* 236: kf31 */ rxvt_s_kf31, ++ /* 237: kf32 */ rxvt_s_kf32, ++ /* 238: kf33 */ rxvt_s_kf33, ++ /* 239: kf34 */ rxvt_s_kf34, ++ /* 240: kf35 */ rxvt_s_kf35, ++ /* 241: kf36 */ rxvt_s_kf36, ++ /* 242: kf37 */ rxvt_s_kf37, ++ /* 243: kf38 */ rxvt_s_kf38, ++ /* 244: kf39 */ rxvt_s_kf39, ++ /* 245: kf40 */ rxvt_s_kf40, ++ /* 246: kf41 */ rxvt_s_kf41, ++ /* 247: kf42 */ rxvt_s_kf42, ++ /* 248: kf43 */ rxvt_s_kf43, ++ /* 249: kf44 */ rxvt_s_kf44, ++ /* 250: kf45 */ ABSENT_STRING, ++ /* 251: kf46 */ ABSENT_STRING, ++ /* 252: kf47 */ ABSENT_STRING, ++ /* 253: kf48 */ ABSENT_STRING, ++ /* 254: kf49 */ ABSENT_STRING, ++ /* 255: kf50 */ ABSENT_STRING, ++ /* 256: kf51 */ ABSENT_STRING, ++ /* 257: kf52 */ ABSENT_STRING, ++ /* 258: kf53 */ ABSENT_STRING, ++ /* 259: kf54 */ ABSENT_STRING, ++ /* 260: kf55 */ ABSENT_STRING, ++ /* 261: kf56 */ ABSENT_STRING, ++ /* 262: kf57 */ ABSENT_STRING, ++ /* 263: kf58 */ ABSENT_STRING, ++ /* 264: kf59 */ ABSENT_STRING, ++ /* 265: kf60 */ ABSENT_STRING, ++ /* 266: kf61 */ ABSENT_STRING, ++ /* 267: kf62 */ ABSENT_STRING, ++ /* 268: kf63 */ ABSENT_STRING, ++ /* 269: el1 */ rxvt_s_el1, ++ /* 270: mgc */ ABSENT_STRING, ++ /* 271: smgl */ ABSENT_STRING, ++ /* 272: smgr */ ABSENT_STRING, ++ /* 273: fln */ ABSENT_STRING, ++ /* 274: sclk */ ABSENT_STRING, ++ /* 275: dclk */ ABSENT_STRING, ++ /* 276: rmclk */ ABSENT_STRING, ++ /* 277: cwin */ ABSENT_STRING, ++ /* 278: wingo */ ABSENT_STRING, ++ /* 279: hup */ ABSENT_STRING, ++ /* 280: dial */ ABSENT_STRING, ++ /* 281: qdial */ ABSENT_STRING, ++ /* 282: tone */ ABSENT_STRING, ++ /* 283: pulse */ ABSENT_STRING, ++ /* 284: hook */ ABSENT_STRING, ++ /* 285: pause */ ABSENT_STRING, ++ /* 286: wait */ ABSENT_STRING, ++ /* 287: u0 */ ABSENT_STRING, ++ /* 288: u1 */ ABSENT_STRING, ++ /* 289: u2 */ ABSENT_STRING, ++ /* 290: u3 */ ABSENT_STRING, ++ /* 291: u4 */ ABSENT_STRING, ++ /* 292: u5 */ ABSENT_STRING, ++ /* 293: u6 */ rxvt_s_u6, ++ /* 294: u7 */ rxvt_s_u7, ++ /* 295: u8 */ rxvt_s_u8, ++ /* 296: u9 */ rxvt_s_u9, ++ /* 297: op */ rxvt_s_op, ++ /* 298: oc */ ABSENT_STRING, ++ /* 299: initc */ ABSENT_STRING, ++ /* 300: initp */ ABSENT_STRING, ++ /* 301: scp */ ABSENT_STRING, ++ /* 302: setf */ ABSENT_STRING, ++ /* 303: setb */ ABSENT_STRING, ++ /* 304: cpi */ ABSENT_STRING, ++ /* 305: lpi */ ABSENT_STRING, ++ /* 306: chr */ ABSENT_STRING, ++ /* 307: cvr */ ABSENT_STRING, ++ /* 308: defc */ ABSENT_STRING, ++ /* 309: swidm */ ABSENT_STRING, ++ /* 310: sdrfq */ ABSENT_STRING, ++ /* 311: sitm */ ABSENT_STRING, ++ /* 312: slm */ ABSENT_STRING, ++ /* 313: smicm */ ABSENT_STRING, ++ /* 314: snlq */ ABSENT_STRING, ++ /* 315: snrmq */ ABSENT_STRING, ++ /* 316: sshm */ ABSENT_STRING, ++ /* 317: ssubm */ ABSENT_STRING, ++ /* 318: ssupm */ ABSENT_STRING, ++ /* 319: sum */ ABSENT_STRING, ++ /* 320: rwidm */ ABSENT_STRING, ++ /* 321: ritm */ ABSENT_STRING, ++ /* 322: rlm */ ABSENT_STRING, ++ /* 323: rmicm */ ABSENT_STRING, ++ /* 324: rshm */ ABSENT_STRING, ++ /* 325: rsubm */ ABSENT_STRING, ++ /* 326: rsupm */ ABSENT_STRING, ++ /* 327: rum */ ABSENT_STRING, ++ /* 328: mhpa */ ABSENT_STRING, ++ /* 329: mcud1 */ ABSENT_STRING, ++ /* 330: mcub1 */ ABSENT_STRING, ++ /* 331: mcuf1 */ ABSENT_STRING, ++ /* 332: mvpa */ ABSENT_STRING, ++ /* 333: mcuu1 */ ABSENT_STRING, ++ /* 334: porder */ ABSENT_STRING, ++ /* 335: mcud */ ABSENT_STRING, ++ /* 336: mcub */ ABSENT_STRING, ++ /* 337: mcuf */ ABSENT_STRING, ++ /* 338: mcuu */ ABSENT_STRING, ++ /* 339: scs */ ABSENT_STRING, ++ /* 340: smgb */ ABSENT_STRING, ++ /* 341: smgbp */ ABSENT_STRING, ++ /* 342: smglp */ ABSENT_STRING, ++ /* 343: smgrp */ ABSENT_STRING, ++ /* 344: smgt */ ABSENT_STRING, ++ /* 345: smgtp */ ABSENT_STRING, ++ /* 346: sbim */ ABSENT_STRING, ++ /* 347: scsd */ ABSENT_STRING, ++ /* 348: rbim */ ABSENT_STRING, ++ /* 349: rcsd */ ABSENT_STRING, ++ /* 350: subcs */ ABSENT_STRING, ++ /* 351: supcs */ ABSENT_STRING, ++ /* 352: docr */ ABSENT_STRING, ++ /* 353: zerom */ ABSENT_STRING, ++ /* 354: csnm */ ABSENT_STRING, ++ /* 355: kmous */ rxvt_s_kmous, ++ /* 356: minfo */ ABSENT_STRING, ++ /* 357: reqmp */ ABSENT_STRING, ++ /* 358: getm */ ABSENT_STRING, ++ /* 359: setaf */ rxvt_s_setaf, ++ /* 360: setab */ rxvt_s_setab, ++ /* 361: pfxl */ ABSENT_STRING, ++ /* 362: devt */ ABSENT_STRING, ++ /* 363: csin */ ABSENT_STRING, ++ /* 364: s0ds */ rxvt_s_s0ds, ++ /* 365: s1ds */ rxvt_s_s1ds, ++ /* 366: s2ds */ ABSENT_STRING, ++ /* 367: s3ds */ ABSENT_STRING, ++ /* 368: smglr */ ABSENT_STRING, ++ /* 369: smgtb */ ABSENT_STRING, ++ /* 370: birep */ ABSENT_STRING, ++ /* 371: binel */ ABSENT_STRING, ++ /* 372: bicr */ ABSENT_STRING, ++ /* 373: colornm */ ABSENT_STRING, ++ /* 374: defbi */ ABSENT_STRING, ++ /* 375: endbi */ ABSENT_STRING, ++ /* 376: setcolor */ ABSENT_STRING, ++ /* 377: slines */ ABSENT_STRING, ++ /* 378: dispc */ ABSENT_STRING, ++ /* 379: smpch */ ABSENT_STRING, ++ /* 380: rmpch */ ABSENT_STRING, ++ /* 381: smsc */ ABSENT_STRING, ++ /* 382: rmsc */ ABSENT_STRING, ++ /* 383: pctrm */ ABSENT_STRING, ++ /* 384: scesc */ ABSENT_STRING, ++ /* 385: scesa */ ABSENT_STRING, ++ /* 386: ehhlm */ ABSENT_STRING, ++ /* 387: elhlm */ ABSENT_STRING, ++ /* 388: elohlm */ ABSENT_STRING, ++ /* 389: erhlm */ ABSENT_STRING, ++ /* 390: ethlm */ ABSENT_STRING, ++ /* 391: evhlm */ ABSENT_STRING, ++ /* 392: sgr1 */ ABSENT_STRING, ++ /* 393: slength */ ABSENT_STRING, ++ /* 394: OTi2 */ ABSENT_STRING, ++ /* 395: OTrs */ ABSENT_STRING, ++ /* 396: OTnl */ ABSENT_STRING, ++ /* 397: OTbc */ ABSENT_STRING, ++ /* 398: OTko */ ABSENT_STRING, ++ /* 399: OTma */ ABSENT_STRING, ++ /* 400: OTG2 */ ABSENT_STRING, ++ /* 401: OTG3 */ ABSENT_STRING, ++ /* 402: OTG1 */ ABSENT_STRING, ++ /* 403: OTG4 */ ABSENT_STRING, ++ /* 404: OTGR */ ABSENT_STRING, ++ /* 405: OTGL */ ABSENT_STRING, ++ /* 406: OTGU */ ABSENT_STRING, ++ /* 407: OTGD */ ABSENT_STRING, ++ /* 408: OTGH */ ABSENT_STRING, ++ /* 409: OTGV */ ABSENT_STRING, ++ /* 410: OTGC */ ABSENT_STRING, ++ /* 411: meml */ ABSENT_STRING, ++ /* 412: memu */ ABSENT_STRING, ++ /* 413: box1 */ ABSENT_STRING, ++}; ++/* vt100 */ ++ ++static char vt100_alias_data[] = "vt100|vt100-am|dec vt100 (w/advanced video)"; ++ ++static char vt100_s_bel [] = "\007"; ++static char vt100_s_cr [] = "\015"; ++static char vt100_s_csr [] = "\033[%i%p1%d;%p2%dr"; ++static char vt100_s_tbc [] = "\033[3g"; ++static char vt100_s_clear [] = "\033[H\033[J$<50>"; ++static char vt100_s_el [] = "\033[K$<3>"; ++static char vt100_s_ed [] = "\033[J$<50>"; ++static char vt100_s_cup [] = "\033[%i%p1%d;%p2%dH$<5>"; ++static char vt100_s_cud1 [] = "\012"; ++static char vt100_s_home [] = "\033[H"; ++static char vt100_s_cub1 [] = "\010"; ++static char vt100_s_cuf1 [] = "\033[C$<2>"; ++static char vt100_s_cuu1 [] = "\033[A$<2>"; ++static char vt100_s_smacs [] = "\016"; ++static char vt100_s_blink [] = "\033[5m$<2>"; ++static char vt100_s_bold [] = "\033[1m$<2>"; ++static char vt100_s_rev [] = "\033[7m$<2>"; ++static char vt100_s_smso [] = "\033[7m$<2>"; ++static char vt100_s_smul [] = "\033[4m$<2>"; ++static char vt100_s_rmacs [] = "\017"; ++static char vt100_s_sgr0 [] = "\033[m\017$<2>"; ++static char vt100_s_rmso [] = "\033[m$<2>"; ++static char vt100_s_rmul [] = "\033[m$<2>"; ++static char vt100_s_kbs [] = "\010"; ++static char vt100_s_kcud1 [] = "\033OB"; ++static char vt100_s_kf0 [] = "\033Oy"; ++static char vt100_s_kf1 [] = "\033OP"; ++static char vt100_s_kf10 [] = "\033Ox"; ++static char vt100_s_kf2 [] = "\033OQ"; ++static char vt100_s_kf3 [] = "\033OR"; ++static char vt100_s_kf4 [] = "\033OS"; ++static char vt100_s_kf5 [] = "\033Ot"; ++static char vt100_s_kf6 [] = "\033Ou"; ++static char vt100_s_kf7 [] = "\033Ov"; ++static char vt100_s_kf8 [] = "\033Ol"; ++static char vt100_s_kf9 [] = "\033Ow"; ++static char vt100_s_kcub1 [] = "\033OD"; ++static char vt100_s_kcuf1 [] = "\033OC"; ++static char vt100_s_kcuu1 [] = "\033OA"; ++static char vt100_s_rmkx [] = "\033[?1l\033>"; ++static char vt100_s_smkx [] = "\033[?1h\033="; ++static char vt100_s_lf1 [] = "pf1"; ++static char vt100_s_lf2 [] = "pf2"; ++static char vt100_s_lf3 [] = "pf3"; ++static char vt100_s_lf4 [] = "pf4"; ++static char vt100_s_cud [] = "\033[%p1%dB"; ++static char vt100_s_cub [] = "\033[%p1%dD"; ++static char vt100_s_cuf [] = "\033[%p1%dC"; ++static char vt100_s_cuu [] = "\033[%p1%dA"; ++static char vt100_s_mc0 [] = "\033[0i"; ++static char vt100_s_mc4 [] = "\033[4i"; ++static char vt100_s_mc5 [] = "\033[5i"; ++static char vt100_s_rs2 [] = "\033<\033>\033[?3;4;5l\033[?7;8h\033[r"; ++static char vt100_s_rc [] = "\0338"; ++static char vt100_s_sc [] = "\0337"; ++static char vt100_s_ind [] = "\012"; ++static char vt100_s_ri [] = "\033M$<5>"; ++static char vt100_s_sgr [] = "\033[0%?%p1%p6%|%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;m%?%p9%t\016%e\017%;$<2>"; ++static char vt100_s_hts [] = "\033H"; ++static char vt100_s_ht [] = "\011"; ++static char vt100_s_ka1 [] = "\033Oq"; ++static char vt100_s_ka3 [] = "\033Os"; ++static char vt100_s_kb2 [] = "\033Or"; ++static char vt100_s_kc1 [] = "\033Op"; ++static char vt100_s_kc3 [] = "\033On"; ++static char vt100_s_acsc [] = "``aaffggjjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~"; ++static char vt100_s_smam [] = "\033[?7h"; ++static char vt100_s_rmam [] = "\033[?7l"; ++static char vt100_s_enacs [] = "\033(B\033)0"; ++static char vt100_s_kent [] = "\033OM"; ++static char vt100_s_el1 [] = "\033[1K$<3>"; ++ ++static char vt100_bool_data[] = { ++ /* 0: bw */ FALSE, ++ /* 1: am */ TRUE, ++ /* 2: xsb */ FALSE, ++ /* 3: xhp */ FALSE, ++ /* 4: xenl */ TRUE, ++ /* 5: eo */ FALSE, ++ /* 6: gn */ FALSE, ++ /* 7: hc */ FALSE, ++ /* 8: km */ FALSE, ++ /* 9: hs */ FALSE, ++ /* 10: in */ FALSE, ++ /* 11: da */ FALSE, ++ /* 12: db */ FALSE, ++ /* 13: mir */ FALSE, ++ /* 14: msgr */ TRUE, ++ /* 15: os */ FALSE, ++ /* 16: eslok */ FALSE, ++ /* 17: xt */ FALSE, ++ /* 18: hz */ FALSE, ++ /* 19: ul */ FALSE, ++ /* 20: xon */ TRUE, ++ /* 21: nxon */ FALSE, ++ /* 22: mc5i */ TRUE, ++ /* 23: chts */ FALSE, ++ /* 24: nrrmc */ FALSE, ++ /* 25: npc */ FALSE, ++ /* 26: ndscr */ FALSE, ++ /* 27: ccc */ FALSE, ++ /* 28: bce */ FALSE, ++ /* 29: hls */ FALSE, ++ /* 30: xhpa */ FALSE, ++ /* 31: crxm */ FALSE, ++ /* 32: daisy */ FALSE, ++ /* 33: xvpa */ FALSE, ++ /* 34: sam */ FALSE, ++ /* 35: cpix */ FALSE, ++ /* 36: lpix */ FALSE, ++ /* 37: OTbs */ TRUE, ++ /* 38: OTns */ FALSE, ++ /* 39: OTnc */ FALSE, ++ /* 40: OTMT */ FALSE, ++ /* 41: OTNL */ FALSE, ++ /* 42: OTpt */ FALSE, ++ /* 43: OTxr */ FALSE, ++}; ++static NCURSES_INT2 vt100_number_data[] = { ++ /* 0: cols */ 80, ++ /* 1: it */ 8, ++ /* 2: lines */ 24, ++ /* 3: lm */ ABSENT_NUMERIC, ++ /* 4: xmc */ ABSENT_NUMERIC, ++ /* 5: pb */ ABSENT_NUMERIC, ++ /* 6: vt */ 3, ++ /* 7: wsl */ ABSENT_NUMERIC, ++ /* 8: nlab */ ABSENT_NUMERIC, ++ /* 9: lh */ ABSENT_NUMERIC, ++ /* 10: lw */ ABSENT_NUMERIC, ++ /* 11: ma */ ABSENT_NUMERIC, ++ /* 12: wnum */ ABSENT_NUMERIC, ++ /* 13: colors */ ABSENT_NUMERIC, ++ /* 14: pairs */ ABSENT_NUMERIC, ++ /* 15: ncv */ ABSENT_NUMERIC, ++ /* 16: bufsz */ ABSENT_NUMERIC, ++ /* 17: spinv */ ABSENT_NUMERIC, ++ /* 18: spinh */ ABSENT_NUMERIC, ++ /* 19: maddr */ ABSENT_NUMERIC, ++ /* 20: mjump */ ABSENT_NUMERIC, ++ /* 21: mcs */ ABSENT_NUMERIC, ++ /* 22: mls */ ABSENT_NUMERIC, ++ /* 23: npins */ ABSENT_NUMERIC, ++ /* 24: orc */ ABSENT_NUMERIC, ++ /* 25: orl */ ABSENT_NUMERIC, ++ /* 26: orhi */ ABSENT_NUMERIC, ++ /* 27: orvi */ ABSENT_NUMERIC, ++ /* 28: cps */ ABSENT_NUMERIC, ++ /* 29: widcs */ ABSENT_NUMERIC, ++ /* 30: btns */ ABSENT_NUMERIC, ++ /* 31: bitwin */ ABSENT_NUMERIC, ++ /* 32: bitype */ ABSENT_NUMERIC, ++ /* 33: OTug */ ABSENT_NUMERIC, ++ /* 34: OTdC */ ABSENT_NUMERIC, ++ /* 35: OTdN */ ABSENT_NUMERIC, ++ /* 36: OTdB */ ABSENT_NUMERIC, ++ /* 37: OTdT */ ABSENT_NUMERIC, ++ /* 38: OTkn */ ABSENT_NUMERIC, ++}; ++static char * vt100_string_data[] = { ++ /* 0: cbt */ ABSENT_STRING, ++ /* 1: bel */ vt100_s_bel, ++ /* 2: cr */ vt100_s_cr, ++ /* 3: csr */ vt100_s_csr, ++ /* 4: tbc */ vt100_s_tbc, ++ /* 5: clear */ vt100_s_clear, ++ /* 6: el */ vt100_s_el, ++ /* 7: ed */ vt100_s_ed, ++ /* 8: hpa */ ABSENT_STRING, ++ /* 9: cmdch */ ABSENT_STRING, ++ /* 10: cup */ vt100_s_cup, ++ /* 11: cud1 */ vt100_s_cud1, ++ /* 12: home */ vt100_s_home, ++ /* 13: civis */ ABSENT_STRING, ++ /* 14: cub1 */ vt100_s_cub1, ++ /* 15: mrcup */ ABSENT_STRING, ++ /* 16: cnorm */ ABSENT_STRING, ++ /* 17: cuf1 */ vt100_s_cuf1, ++ /* 18: ll */ ABSENT_STRING, ++ /* 19: cuu1 */ vt100_s_cuu1, ++ /* 20: cvvis */ ABSENT_STRING, ++ /* 21: dch1 */ ABSENT_STRING, ++ /* 22: dl1 */ ABSENT_STRING, ++ /* 23: dsl */ ABSENT_STRING, ++ /* 24: hd */ ABSENT_STRING, ++ /* 25: smacs */ vt100_s_smacs, ++ /* 26: blink */ vt100_s_blink, ++ /* 27: bold */ vt100_s_bold, ++ /* 28: smcup */ ABSENT_STRING, ++ /* 29: smdc */ ABSENT_STRING, ++ /* 30: dim */ ABSENT_STRING, ++ /* 31: smir */ ABSENT_STRING, ++ /* 32: invis */ ABSENT_STRING, ++ /* 33: prot */ ABSENT_STRING, ++ /* 34: rev */ vt100_s_rev, ++ /* 35: smso */ vt100_s_smso, ++ /* 36: smul */ vt100_s_smul, ++ /* 37: ech */ ABSENT_STRING, ++ /* 38: rmacs */ vt100_s_rmacs, ++ /* 39: sgr0 */ vt100_s_sgr0, ++ /* 40: rmcup */ ABSENT_STRING, ++ /* 41: rmdc */ ABSENT_STRING, ++ /* 42: rmir */ ABSENT_STRING, ++ /* 43: rmso */ vt100_s_rmso, ++ /* 44: rmul */ vt100_s_rmul, ++ /* 45: flash */ ABSENT_STRING, ++ /* 46: ff */ ABSENT_STRING, ++ /* 47: fsl */ ABSENT_STRING, ++ /* 48: is1 */ ABSENT_STRING, ++ /* 49: is2 */ ABSENT_STRING, ++ /* 50: is3 */ ABSENT_STRING, ++ /* 51: if */ ABSENT_STRING, ++ /* 52: ich1 */ ABSENT_STRING, ++ /* 53: il1 */ ABSENT_STRING, ++ /* 54: ip */ ABSENT_STRING, ++ /* 55: kbs */ vt100_s_kbs, ++ /* 56: ktbc */ ABSENT_STRING, ++ /* 57: kclr */ ABSENT_STRING, ++ /* 58: kctab */ ABSENT_STRING, ++ /* 59: kdch1 */ ABSENT_STRING, ++ /* 60: kdl1 */ ABSENT_STRING, ++ /* 61: kcud1 */ vt100_s_kcud1, ++ /* 62: krmir */ ABSENT_STRING, ++ /* 63: kel */ ABSENT_STRING, ++ /* 64: ked */ ABSENT_STRING, ++ /* 65: kf0 */ vt100_s_kf0, ++ /* 66: kf1 */ vt100_s_kf1, ++ /* 67: kf10 */ vt100_s_kf10, ++ /* 68: kf2 */ vt100_s_kf2, ++ /* 69: kf3 */ vt100_s_kf3, ++ /* 70: kf4 */ vt100_s_kf4, ++ /* 71: kf5 */ vt100_s_kf5, ++ /* 72: kf6 */ vt100_s_kf6, ++ /* 73: kf7 */ vt100_s_kf7, ++ /* 74: kf8 */ vt100_s_kf8, ++ /* 75: kf9 */ vt100_s_kf9, ++ /* 76: khome */ ABSENT_STRING, ++ /* 77: kich1 */ ABSENT_STRING, ++ /* 78: kil1 */ ABSENT_STRING, ++ /* 79: kcub1 */ vt100_s_kcub1, ++ /* 80: kll */ ABSENT_STRING, ++ /* 81: knp */ ABSENT_STRING, ++ /* 82: kpp */ ABSENT_STRING, ++ /* 83: kcuf1 */ vt100_s_kcuf1, ++ /* 84: kind */ ABSENT_STRING, ++ /* 85: kri */ ABSENT_STRING, ++ /* 86: khts */ ABSENT_STRING, ++ /* 87: kcuu1 */ vt100_s_kcuu1, ++ /* 88: rmkx */ vt100_s_rmkx, ++ /* 89: smkx */ vt100_s_smkx, ++ /* 90: lf0 */ ABSENT_STRING, ++ /* 91: lf1 */ vt100_s_lf1, ++ /* 92: lf10 */ ABSENT_STRING, ++ /* 93: lf2 */ vt100_s_lf2, ++ /* 94: lf3 */ vt100_s_lf3, ++ /* 95: lf4 */ vt100_s_lf4, ++ /* 96: lf5 */ ABSENT_STRING, ++ /* 97: lf6 */ ABSENT_STRING, ++ /* 98: lf7 */ ABSENT_STRING, ++ /* 99: lf8 */ ABSENT_STRING, ++ /* 100: lf9 */ ABSENT_STRING, ++ /* 101: rmm */ ABSENT_STRING, ++ /* 102: smm */ ABSENT_STRING, ++ /* 103: nel */ ABSENT_STRING, ++ /* 104: pad */ ABSENT_STRING, ++ /* 105: dch */ ABSENT_STRING, ++ /* 106: dl */ ABSENT_STRING, ++ /* 107: cud */ vt100_s_cud, ++ /* 108: ich */ ABSENT_STRING, ++ /* 109: indn */ ABSENT_STRING, ++ /* 110: il */ ABSENT_STRING, ++ /* 111: cub */ vt100_s_cub, ++ /* 112: cuf */ vt100_s_cuf, ++ /* 113: rin */ ABSENT_STRING, ++ /* 114: cuu */ vt100_s_cuu, ++ /* 115: pfkey */ ABSENT_STRING, ++ /* 116: pfloc */ ABSENT_STRING, ++ /* 117: pfx */ ABSENT_STRING, ++ /* 118: mc0 */ vt100_s_mc0, ++ /* 119: mc4 */ vt100_s_mc4, ++ /* 120: mc5 */ vt100_s_mc5, ++ /* 121: rep */ ABSENT_STRING, ++ /* 122: rs1 */ ABSENT_STRING, ++ /* 123: rs2 */ vt100_s_rs2, ++ /* 124: rs3 */ ABSENT_STRING, ++ /* 125: rf */ ABSENT_STRING, ++ /* 126: rc */ vt100_s_rc, ++ /* 127: vpa */ ABSENT_STRING, ++ /* 128: sc */ vt100_s_sc, ++ /* 129: ind */ vt100_s_ind, ++ /* 130: ri */ vt100_s_ri, ++ /* 131: sgr */ vt100_s_sgr, ++ /* 132: hts */ vt100_s_hts, ++ /* 133: wind */ ABSENT_STRING, ++ /* 134: ht */ vt100_s_ht, ++ /* 135: tsl */ ABSENT_STRING, ++ /* 136: uc */ ABSENT_STRING, ++ /* 137: hu */ ABSENT_STRING, ++ /* 138: iprog */ ABSENT_STRING, ++ /* 139: ka1 */ vt100_s_ka1, ++ /* 140: ka3 */ vt100_s_ka3, ++ /* 141: kb2 */ vt100_s_kb2, ++ /* 142: kc1 */ vt100_s_kc1, ++ /* 143: kc3 */ vt100_s_kc3, ++ /* 144: mc5p */ ABSENT_STRING, ++ /* 145: rmp */ ABSENT_STRING, ++ /* 146: acsc */ vt100_s_acsc, ++ /* 147: pln */ ABSENT_STRING, ++ /* 148: kcbt */ ABSENT_STRING, ++ /* 149: smxon */ ABSENT_STRING, ++ /* 150: rmxon */ ABSENT_STRING, ++ /* 151: smam */ vt100_s_smam, ++ /* 152: rmam */ vt100_s_rmam, ++ /* 153: xonc */ ABSENT_STRING, ++ /* 154: xoffc */ ABSENT_STRING, ++ /* 155: enacs */ vt100_s_enacs, ++ /* 156: smln */ ABSENT_STRING, ++ /* 157: rmln */ ABSENT_STRING, ++ /* 158: kbeg */ ABSENT_STRING, ++ /* 159: kcan */ ABSENT_STRING, ++ /* 160: kclo */ ABSENT_STRING, ++ /* 161: kcmd */ ABSENT_STRING, ++ /* 162: kcpy */ ABSENT_STRING, ++ /* 163: kcrt */ ABSENT_STRING, ++ /* 164: kend */ ABSENT_STRING, ++ /* 165: kent */ vt100_s_kent, ++ /* 166: kext */ ABSENT_STRING, ++ /* 167: kfnd */ ABSENT_STRING, ++ /* 168: khlp */ ABSENT_STRING, ++ /* 169: kmrk */ ABSENT_STRING, ++ /* 170: kmsg */ ABSENT_STRING, ++ /* 171: kmov */ ABSENT_STRING, ++ /* 172: knxt */ ABSENT_STRING, ++ /* 173: kopn */ ABSENT_STRING, ++ /* 174: kopt */ ABSENT_STRING, ++ /* 175: kprv */ ABSENT_STRING, ++ /* 176: kprt */ ABSENT_STRING, ++ /* 177: krdo */ ABSENT_STRING, ++ /* 178: kref */ ABSENT_STRING, ++ /* 179: krfr */ ABSENT_STRING, ++ /* 180: krpl */ ABSENT_STRING, ++ /* 181: krst */ ABSENT_STRING, ++ /* 182: kres */ ABSENT_STRING, ++ /* 183: ksav */ ABSENT_STRING, ++ /* 184: kspd */ ABSENT_STRING, ++ /* 185: kund */ ABSENT_STRING, ++ /* 186: kBEG */ ABSENT_STRING, ++ /* 187: kCAN */ ABSENT_STRING, ++ /* 188: kCMD */ ABSENT_STRING, ++ /* 189: kCPY */ ABSENT_STRING, ++ /* 190: kCRT */ ABSENT_STRING, ++ /* 191: kDC */ ABSENT_STRING, ++ /* 192: kDL */ ABSENT_STRING, ++ /* 193: kslt */ ABSENT_STRING, ++ /* 194: kEND */ ABSENT_STRING, ++ /* 195: kEOL */ ABSENT_STRING, ++ /* 196: kEXT */ ABSENT_STRING, ++ /* 197: kFND */ ABSENT_STRING, ++ /* 198: kHLP */ ABSENT_STRING, ++ /* 199: kHOM */ ABSENT_STRING, ++ /* 200: kIC */ ABSENT_STRING, ++ /* 201: kLFT */ ABSENT_STRING, ++ /* 202: kMSG */ ABSENT_STRING, ++ /* 203: kMOV */ ABSENT_STRING, ++ /* 204: kNXT */ ABSENT_STRING, ++ /* 205: kOPT */ ABSENT_STRING, ++ /* 206: kPRV */ ABSENT_STRING, ++ /* 207: kPRT */ ABSENT_STRING, ++ /* 208: kRDO */ ABSENT_STRING, ++ /* 209: kRPL */ ABSENT_STRING, ++ /* 210: kRIT */ ABSENT_STRING, ++ /* 211: kRES */ ABSENT_STRING, ++ /* 212: kSAV */ ABSENT_STRING, ++ /* 213: kSPD */ ABSENT_STRING, ++ /* 214: kUND */ ABSENT_STRING, ++ /* 215: rfi */ ABSENT_STRING, ++ /* 216: kf11 */ ABSENT_STRING, ++ /* 217: kf12 */ ABSENT_STRING, ++ /* 218: kf13 */ ABSENT_STRING, ++ /* 219: kf14 */ ABSENT_STRING, ++ /* 220: kf15 */ ABSENT_STRING, ++ /* 221: kf16 */ ABSENT_STRING, ++ /* 222: kf17 */ ABSENT_STRING, ++ /* 223: kf18 */ ABSENT_STRING, ++ /* 224: kf19 */ ABSENT_STRING, ++ /* 225: kf20 */ ABSENT_STRING, ++ /* 226: kf21 */ ABSENT_STRING, ++ /* 227: kf22 */ ABSENT_STRING, ++ /* 228: kf23 */ ABSENT_STRING, ++ /* 229: kf24 */ ABSENT_STRING, ++ /* 230: kf25 */ ABSENT_STRING, ++ /* 231: kf26 */ ABSENT_STRING, ++ /* 232: kf27 */ ABSENT_STRING, ++ /* 233: kf28 */ ABSENT_STRING, ++ /* 234: kf29 */ ABSENT_STRING, ++ /* 235: kf30 */ ABSENT_STRING, ++ /* 236: kf31 */ ABSENT_STRING, ++ /* 237: kf32 */ ABSENT_STRING, ++ /* 238: kf33 */ ABSENT_STRING, ++ /* 239: kf34 */ ABSENT_STRING, ++ /* 240: kf35 */ ABSENT_STRING, ++ /* 241: kf36 */ ABSENT_STRING, ++ /* 242: kf37 */ ABSENT_STRING, ++ /* 243: kf38 */ ABSENT_STRING, ++ /* 244: kf39 */ ABSENT_STRING, ++ /* 245: kf40 */ ABSENT_STRING, ++ /* 246: kf41 */ ABSENT_STRING, ++ /* 247: kf42 */ ABSENT_STRING, ++ /* 248: kf43 */ ABSENT_STRING, ++ /* 249: kf44 */ ABSENT_STRING, ++ /* 250: kf45 */ ABSENT_STRING, ++ /* 251: kf46 */ ABSENT_STRING, ++ /* 252: kf47 */ ABSENT_STRING, ++ /* 253: kf48 */ ABSENT_STRING, ++ /* 254: kf49 */ ABSENT_STRING, ++ /* 255: kf50 */ ABSENT_STRING, ++ /* 256: kf51 */ ABSENT_STRING, ++ /* 257: kf52 */ ABSENT_STRING, ++ /* 258: kf53 */ ABSENT_STRING, ++ /* 259: kf54 */ ABSENT_STRING, ++ /* 260: kf55 */ ABSENT_STRING, ++ /* 261: kf56 */ ABSENT_STRING, ++ /* 262: kf57 */ ABSENT_STRING, ++ /* 263: kf58 */ ABSENT_STRING, ++ /* 264: kf59 */ ABSENT_STRING, ++ /* 265: kf60 */ ABSENT_STRING, ++ /* 266: kf61 */ ABSENT_STRING, ++ /* 267: kf62 */ ABSENT_STRING, ++ /* 268: kf63 */ ABSENT_STRING, ++ /* 269: el1 */ vt100_s_el1, ++ /* 270: mgc */ ABSENT_STRING, ++ /* 271: smgl */ ABSENT_STRING, ++ /* 272: smgr */ ABSENT_STRING, ++ /* 273: fln */ ABSENT_STRING, ++ /* 274: sclk */ ABSENT_STRING, ++ /* 275: dclk */ ABSENT_STRING, ++ /* 276: rmclk */ ABSENT_STRING, ++ /* 277: cwin */ ABSENT_STRING, ++ /* 278: wingo */ ABSENT_STRING, ++ /* 279: hup */ ABSENT_STRING, ++ /* 280: dial */ ABSENT_STRING, ++ /* 281: qdial */ ABSENT_STRING, ++ /* 282: tone */ ABSENT_STRING, ++ /* 283: pulse */ ABSENT_STRING, ++ /* 284: hook */ ABSENT_STRING, ++ /* 285: pause */ ABSENT_STRING, ++ /* 286: wait */ ABSENT_STRING, ++ /* 287: u0 */ ABSENT_STRING, ++ /* 288: u1 */ ABSENT_STRING, ++ /* 289: u2 */ ABSENT_STRING, ++ /* 290: u3 */ ABSENT_STRING, ++ /* 291: u4 */ ABSENT_STRING, ++ /* 292: u5 */ ABSENT_STRING, ++ /* 293: u6 */ ABSENT_STRING, ++ /* 294: u7 */ ABSENT_STRING, ++ /* 295: u8 */ ABSENT_STRING, ++ /* 296: u9 */ ABSENT_STRING, ++ /* 297: op */ ABSENT_STRING, ++ /* 298: oc */ ABSENT_STRING, ++ /* 299: initc */ ABSENT_STRING, ++ /* 300: initp */ ABSENT_STRING, ++ /* 301: scp */ ABSENT_STRING, ++ /* 302: setf */ ABSENT_STRING, ++ /* 303: setb */ ABSENT_STRING, ++ /* 304: cpi */ ABSENT_STRING, ++ /* 305: lpi */ ABSENT_STRING, ++ /* 306: chr */ ABSENT_STRING, ++ /* 307: cvr */ ABSENT_STRING, ++ /* 308: defc */ ABSENT_STRING, ++ /* 309: swidm */ ABSENT_STRING, ++ /* 310: sdrfq */ ABSENT_STRING, ++ /* 311: sitm */ ABSENT_STRING, ++ /* 312: slm */ ABSENT_STRING, ++ /* 313: smicm */ ABSENT_STRING, ++ /* 314: snlq */ ABSENT_STRING, ++ /* 315: snrmq */ ABSENT_STRING, ++ /* 316: sshm */ ABSENT_STRING, ++ /* 317: ssubm */ ABSENT_STRING, ++ /* 318: ssupm */ ABSENT_STRING, ++ /* 319: sum */ ABSENT_STRING, ++ /* 320: rwidm */ ABSENT_STRING, ++ /* 321: ritm */ ABSENT_STRING, ++ /* 322: rlm */ ABSENT_STRING, ++ /* 323: rmicm */ ABSENT_STRING, ++ /* 324: rshm */ ABSENT_STRING, ++ /* 325: rsubm */ ABSENT_STRING, ++ /* 326: rsupm */ ABSENT_STRING, ++ /* 327: rum */ ABSENT_STRING, ++ /* 328: mhpa */ ABSENT_STRING, ++ /* 329: mcud1 */ ABSENT_STRING, ++ /* 330: mcub1 */ ABSENT_STRING, ++ /* 331: mcuf1 */ ABSENT_STRING, ++ /* 332: mvpa */ ABSENT_STRING, ++ /* 333: mcuu1 */ ABSENT_STRING, ++ /* 334: porder */ ABSENT_STRING, ++ /* 335: mcud */ ABSENT_STRING, ++ /* 336: mcub */ ABSENT_STRING, ++ /* 337: mcuf */ ABSENT_STRING, ++ /* 338: mcuu */ ABSENT_STRING, ++ /* 339: scs */ ABSENT_STRING, ++ /* 340: smgb */ ABSENT_STRING, ++ /* 341: smgbp */ ABSENT_STRING, ++ /* 342: smglp */ ABSENT_STRING, ++ /* 343: smgrp */ ABSENT_STRING, ++ /* 344: smgt */ ABSENT_STRING, ++ /* 345: smgtp */ ABSENT_STRING, ++ /* 346: sbim */ ABSENT_STRING, ++ /* 347: scsd */ ABSENT_STRING, ++ /* 348: rbim */ ABSENT_STRING, ++ /* 349: rcsd */ ABSENT_STRING, ++ /* 350: subcs */ ABSENT_STRING, ++ /* 351: supcs */ ABSENT_STRING, ++ /* 352: docr */ ABSENT_STRING, ++ /* 353: zerom */ ABSENT_STRING, ++ /* 354: csnm */ ABSENT_STRING, ++ /* 355: kmous */ ABSENT_STRING, ++ /* 356: minfo */ ABSENT_STRING, ++ /* 357: reqmp */ ABSENT_STRING, ++ /* 358: getm */ ABSENT_STRING, ++ /* 359: setaf */ ABSENT_STRING, ++ /* 360: setab */ ABSENT_STRING, ++ /* 361: pfxl */ ABSENT_STRING, ++ /* 362: devt */ ABSENT_STRING, ++ /* 363: csin */ ABSENT_STRING, ++ /* 364: s0ds */ ABSENT_STRING, ++ /* 365: s1ds */ ABSENT_STRING, ++ /* 366: s2ds */ ABSENT_STRING, ++ /* 367: s3ds */ ABSENT_STRING, ++ /* 368: smglr */ ABSENT_STRING, ++ /* 369: smgtb */ ABSENT_STRING, ++ /* 370: birep */ ABSENT_STRING, ++ /* 371: binel */ ABSENT_STRING, ++ /* 372: bicr */ ABSENT_STRING, ++ /* 373: colornm */ ABSENT_STRING, ++ /* 374: defbi */ ABSENT_STRING, ++ /* 375: endbi */ ABSENT_STRING, ++ /* 376: setcolor */ ABSENT_STRING, ++ /* 377: slines */ ABSENT_STRING, ++ /* 378: dispc */ ABSENT_STRING, ++ /* 379: smpch */ ABSENT_STRING, ++ /* 380: rmpch */ ABSENT_STRING, ++ /* 381: smsc */ ABSENT_STRING, ++ /* 382: rmsc */ ABSENT_STRING, ++ /* 383: pctrm */ ABSENT_STRING, ++ /* 384: scesc */ ABSENT_STRING, ++ /* 385: scesa */ ABSENT_STRING, ++ /* 386: ehhlm */ ABSENT_STRING, ++ /* 387: elhlm */ ABSENT_STRING, ++ /* 388: elohlm */ ABSENT_STRING, ++ /* 389: erhlm */ ABSENT_STRING, ++ /* 390: ethlm */ ABSENT_STRING, ++ /* 391: evhlm */ ABSENT_STRING, ++ /* 392: sgr1 */ ABSENT_STRING, ++ /* 393: slength */ ABSENT_STRING, ++ /* 394: OTi2 */ ABSENT_STRING, ++ /* 395: OTrs */ ABSENT_STRING, ++ /* 396: OTnl */ ABSENT_STRING, ++ /* 397: OTbc */ ABSENT_STRING, ++ /* 398: OTko */ ABSENT_STRING, ++ /* 399: OTma */ ABSENT_STRING, ++ /* 400: OTG2 */ ABSENT_STRING, ++ /* 401: OTG3 */ ABSENT_STRING, ++ /* 402: OTG1 */ ABSENT_STRING, ++ /* 403: OTG4 */ ABSENT_STRING, ++ /* 404: OTGR */ ABSENT_STRING, ++ /* 405: OTGL */ ABSENT_STRING, ++ /* 406: OTGU */ ABSENT_STRING, ++ /* 407: OTGD */ ABSENT_STRING, ++ /* 408: OTGH */ ABSENT_STRING, ++ /* 409: OTGV */ ABSENT_STRING, ++ /* 410: OTGC */ ABSENT_STRING, ++ /* 411: meml */ ABSENT_STRING, ++ /* 412: memu */ ABSENT_STRING, ++ /* 413: box1 */ ABSENT_STRING, ++}; ++/* xterm */ ++ ++static char xterm_alias_data[] = "xterm|xterm terminal emulator (X Window System)"; ++ ++static char xterm_s_cbt [] = "\033[Z"; ++static char xterm_s_bel [] = "\007"; ++static char xterm_s_cr [] = "\015"; ++static char xterm_s_csr [] = "\033[%i%p1%d;%p2%dr"; ++static char xterm_s_tbc [] = "\033[3g"; ++static char xterm_s_clear [] = "\033[H\033[2J"; ++static char xterm_s_el [] = "\033[K"; ++static char xterm_s_ed [] = "\033[J"; ++static char xterm_s_hpa [] = "\033[%i%p1%dG"; ++static char xterm_s_cup [] = "\033[%i%p1%d;%p2%dH"; ++static char xterm_s_cud1 [] = "\012"; ++static char xterm_s_home [] = "\033[H"; ++static char xterm_s_civis [] = "\033[?25l"; ++static char xterm_s_cub1 [] = "\010"; ++static char xterm_s_cnorm [] = "\033[?12l\033[?25h"; ++static char xterm_s_cuf1 [] = "\033[C"; ++static char xterm_s_cuu1 [] = "\033[A"; ++static char xterm_s_cvvis [] = "\033[?12;25h"; ++static char xterm_s_dch1 [] = "\033[P"; ++static char xterm_s_dl1 [] = "\033[M"; ++static char xterm_s_smacs [] = "\033(0"; ++static char xterm_s_blink [] = "\033[5m"; ++static char xterm_s_bold [] = "\033[1m"; ++static char xterm_s_smcup [] = "\033[?1049h\033[22;0;0t"; ++static char xterm_s_dim [] = "\033[2m"; ++static char xterm_s_smir [] = "\033[4h"; ++static char xterm_s_invis [] = "\033[8m"; ++static char xterm_s_rev [] = "\033[7m"; ++static char xterm_s_smso [] = "\033[7m"; ++static char xterm_s_smul [] = "\033[4m"; ++static char xterm_s_ech [] = "\033[%p1%dX"; ++static char xterm_s_rmacs [] = "\033(B"; ++static char xterm_s_sgr0 [] = "\033(B\033[m"; ++static char xterm_s_rmcup [] = "\033[?1049l\033[23;0;0t"; ++static char xterm_s_rmir [] = "\033[4l"; ++static char xterm_s_rmso [] = "\033[27m"; ++static char xterm_s_rmul [] = "\033[24m"; ++static char xterm_s_flash [] = "\033[?5h$<100/>\033[?5l"; ++static char xterm_s_is2 [] = "\033[!p\033[?3;4l\033[4l\033>"; ++static char xterm_s_il1 [] = "\033[L"; ++static char xterm_s_kbs [] = "\010"; ++static char xterm_s_kdch1 [] = "\033[3~"; ++static char xterm_s_kcud1 [] = "\033OB"; ++static char xterm_s_kf1 [] = "\033OP"; ++static char xterm_s_kf10 [] = "\033[21~"; ++static char xterm_s_kf2 [] = "\033OQ"; ++static char xterm_s_kf3 [] = "\033OR"; ++static char xterm_s_kf4 [] = "\033OS"; ++static char xterm_s_kf5 [] = "\033[15~"; ++static char xterm_s_kf6 [] = "\033[17~"; ++static char xterm_s_kf7 [] = "\033[18~"; ++static char xterm_s_kf8 [] = "\033[19~"; ++static char xterm_s_kf9 [] = "\033[20~"; ++static char xterm_s_khome [] = "\033OH"; ++static char xterm_s_kich1 [] = "\033[2~"; ++static char xterm_s_kcub1 [] = "\033OD"; ++static char xterm_s_knp [] = "\033[6~"; ++static char xterm_s_kpp [] = "\033[5~"; ++static char xterm_s_kcuf1 [] = "\033OC"; ++static char xterm_s_kind [] = "\033[1;2B"; ++static char xterm_s_kri [] = "\033[1;2A"; ++static char xterm_s_kcuu1 [] = "\033OA"; ++static char xterm_s_rmkx [] = "\033[?1l\033>"; ++static char xterm_s_smkx [] = "\033[?1h\033="; ++static char xterm_s_rmm [] = "\033[?1034l"; ++static char xterm_s_smm [] = "\033[?1034h"; ++static char xterm_s_dch [] = "\033[%p1%dP"; ++static char xterm_s_dl [] = "\033[%p1%dM"; ++static char xterm_s_cud [] = "\033[%p1%dB"; ++static char xterm_s_ich [] = "\033[%p1%d@"; ++static char xterm_s_indn [] = "\033[%p1%dS"; ++static char xterm_s_il [] = "\033[%p1%dL"; ++static char xterm_s_cub [] = "\033[%p1%dD"; ++static char xterm_s_cuf [] = "\033[%p1%dC"; ++static char xterm_s_rin [] = "\033[%p1%dT"; ++static char xterm_s_cuu [] = "\033[%p1%dA"; ++static char xterm_s_mc0 [] = "\033[i"; ++static char xterm_s_mc4 [] = "\033[4i"; ++static char xterm_s_mc5 [] = "\033[5i"; ++static char xterm_s_rep [] = "%p1%c\033[%p2%{1}%-%db"; ++static char xterm_s_rs1 [] = "\033c"; ++static char xterm_s_rs2 [] = "\033[!p\033[?3;4l\033[4l\033>"; ++static char xterm_s_rc [] = "\0338"; ++static char xterm_s_vpa [] = "\033[%i%p1%dd"; ++static char xterm_s_sc [] = "\0337"; ++static char xterm_s_ind [] = "\012"; ++static char xterm_s_ri [] = "\033M"; ++static char xterm_s_sgr [] = "%?%p9%t\033(0%e\033(B%;\033[0%?%p6%t;1%;%?%p5%t;2%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m"; ++static char xterm_s_hts [] = "\033H"; ++static char xterm_s_ht [] = "\011"; ++static char xterm_s_kb2 [] = "\033OE"; ++static char xterm_s_acsc [] = "``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~"; ++static char xterm_s_kcbt [] = "\033[Z"; ++static char xterm_s_smam [] = "\033[?7h"; ++static char xterm_s_rmam [] = "\033[?7l"; ++static char xterm_s_kend [] = "\033OF"; ++static char xterm_s_kent [] = "\033OM"; ++static char xterm_s_kDC [] = "\033[3;2~"; ++static char xterm_s_kEND [] = "\033[1;2F"; ++static char xterm_s_kHOM [] = "\033[1;2H"; ++static char xterm_s_kIC [] = "\033[2;2~"; ++static char xterm_s_kLFT [] = "\033[1;2D"; ++static char xterm_s_kNXT [] = "\033[6;2~"; ++static char xterm_s_kPRV [] = "\033[5;2~"; ++static char xterm_s_kRIT [] = "\033[1;2C"; ++static char xterm_s_kf11 [] = "\033[23~"; ++static char xterm_s_kf12 [] = "\033[24~"; ++static char xterm_s_kf13 [] = "\033[1;2P"; ++static char xterm_s_kf14 [] = "\033[1;2Q"; ++static char xterm_s_kf15 [] = "\033[1;2R"; ++static char xterm_s_kf16 [] = "\033[1;2S"; ++static char xterm_s_kf17 [] = "\033[15;2~"; ++static char xterm_s_kf18 [] = "\033[17;2~"; ++static char xterm_s_kf19 [] = "\033[18;2~"; ++static char xterm_s_kf20 [] = "\033[19;2~"; ++static char xterm_s_kf21 [] = "\033[20;2~"; ++static char xterm_s_kf22 [] = "\033[21;2~"; ++static char xterm_s_kf23 [] = "\033[23;2~"; ++static char xterm_s_kf24 [] = "\033[24;2~"; ++static char xterm_s_kf25 [] = "\033[1;5P"; ++static char xterm_s_kf26 [] = "\033[1;5Q"; ++static char xterm_s_kf27 [] = "\033[1;5R"; ++static char xterm_s_kf28 [] = "\033[1;5S"; ++static char xterm_s_kf29 [] = "\033[15;5~"; ++static char xterm_s_kf30 [] = "\033[17;5~"; ++static char xterm_s_kf31 [] = "\033[18;5~"; ++static char xterm_s_kf32 [] = "\033[19;5~"; ++static char xterm_s_kf33 [] = "\033[20;5~"; ++static char xterm_s_kf34 [] = "\033[21;5~"; ++static char xterm_s_kf35 [] = "\033[23;5~"; ++static char xterm_s_kf36 [] = "\033[24;5~"; ++static char xterm_s_kf37 [] = "\033[1;6P"; ++static char xterm_s_kf38 [] = "\033[1;6Q"; ++static char xterm_s_kf39 [] = "\033[1;6R"; ++static char xterm_s_kf40 [] = "\033[1;6S"; ++static char xterm_s_kf41 [] = "\033[15;6~"; ++static char xterm_s_kf42 [] = "\033[17;6~"; ++static char xterm_s_kf43 [] = "\033[18;6~"; ++static char xterm_s_kf44 [] = "\033[19;6~"; ++static char xterm_s_kf45 [] = "\033[20;6~"; ++static char xterm_s_kf46 [] = "\033[21;6~"; ++static char xterm_s_kf47 [] = "\033[23;6~"; ++static char xterm_s_kf48 [] = "\033[24;6~"; ++static char xterm_s_kf49 [] = "\033[1;3P"; ++static char xterm_s_kf50 [] = "\033[1;3Q"; ++static char xterm_s_kf51 [] = "\033[1;3R"; ++static char xterm_s_kf52 [] = "\033[1;3S"; ++static char xterm_s_kf53 [] = "\033[15;3~"; ++static char xterm_s_kf54 [] = "\033[17;3~"; ++static char xterm_s_kf55 [] = "\033[18;3~"; ++static char xterm_s_kf56 [] = "\033[19;3~"; ++static char xterm_s_kf57 [] = "\033[20;3~"; ++static char xterm_s_kf58 [] = "\033[21;3~"; ++static char xterm_s_kf59 [] = "\033[23;3~"; ++static char xterm_s_kf60 [] = "\033[24;3~"; ++static char xterm_s_kf61 [] = "\033[1;4P"; ++static char xterm_s_kf62 [] = "\033[1;4Q"; ++static char xterm_s_kf63 [] = "\033[1;4R"; ++static char xterm_s_el1 [] = "\033[1K"; ++static char xterm_s_u6 [] = "\033[%i%d;%dR"; ++static char xterm_s_u7 [] = "\033[6n"; ++static char xterm_s_u8 [] = "\033[?%[;0123456789]c"; ++static char xterm_s_u9 [] = "\033[c"; ++static char xterm_s_op [] = "\033[39;49m"; ++static char xterm_s_setf [] = "\033[3%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m"; ++static char xterm_s_setb [] = "\033[4%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m"; ++static char xterm_s_sitm [] = "\033[3m"; ++static char xterm_s_ritm [] = "\033[23m"; ++static char xterm_s_kmous [] = "\033[<"; ++static char xterm_s_setaf [] = "\033[3%p1%dm"; ++static char xterm_s_setab [] = "\033[4%p1%dm"; ++static char xterm_s_meml [] = "\033l"; ++static char xterm_s_memu [] = "\033m"; ++ ++static char xterm_bool_data[] = { ++ /* 0: bw */ FALSE, ++ /* 1: am */ TRUE, ++ /* 2: xsb */ FALSE, ++ /* 3: xhp */ FALSE, ++ /* 4: xenl */ TRUE, ++ /* 5: eo */ FALSE, ++ /* 6: gn */ FALSE, ++ /* 7: hc */ FALSE, ++ /* 8: km */ TRUE, ++ /* 9: hs */ FALSE, ++ /* 10: in */ FALSE, ++ /* 11: da */ FALSE, ++ /* 12: db */ FALSE, ++ /* 13: mir */ TRUE, ++ /* 14: msgr */ TRUE, ++ /* 15: os */ FALSE, ++ /* 16: eslok */ FALSE, ++ /* 17: xt */ FALSE, ++ /* 18: hz */ FALSE, ++ /* 19: ul */ FALSE, ++ /* 20: xon */ FALSE, ++ /* 21: nxon */ FALSE, ++ /* 22: mc5i */ TRUE, ++ /* 23: chts */ FALSE, ++ /* 24: nrrmc */ FALSE, ++ /* 25: npc */ TRUE, ++ /* 26: ndscr */ FALSE, ++ /* 27: ccc */ FALSE, ++ /* 28: bce */ TRUE, ++ /* 29: hls */ FALSE, ++ /* 30: xhpa */ FALSE, ++ /* 31: crxm */ FALSE, ++ /* 32: daisy */ FALSE, ++ /* 33: xvpa */ FALSE, ++ /* 34: sam */ FALSE, ++ /* 35: cpix */ FALSE, ++ /* 36: lpix */ FALSE, ++ /* 37: OTbs */ TRUE, ++ /* 38: OTns */ FALSE, ++ /* 39: OTnc */ FALSE, ++ /* 40: OTMT */ FALSE, ++ /* 41: OTNL */ FALSE, ++ /* 42: OTpt */ FALSE, ++ /* 43: OTxr */ FALSE, ++}; ++static NCURSES_INT2 xterm_number_data[] = { ++ /* 0: cols */ 80, ++ /* 1: it */ 8, ++ /* 2: lines */ 24, ++ /* 3: lm */ ABSENT_NUMERIC, ++ /* 4: xmc */ ABSENT_NUMERIC, ++ /* 5: pb */ ABSENT_NUMERIC, ++ /* 6: vt */ ABSENT_NUMERIC, ++ /* 7: wsl */ ABSENT_NUMERIC, ++ /* 8: nlab */ ABSENT_NUMERIC, ++ /* 9: lh */ ABSENT_NUMERIC, ++ /* 10: lw */ ABSENT_NUMERIC, ++ /* 11: ma */ ABSENT_NUMERIC, ++ /* 12: wnum */ ABSENT_NUMERIC, ++ /* 13: colors */ 8, ++ /* 14: pairs */ 64, ++ /* 15: ncv */ ABSENT_NUMERIC, ++ /* 16: bufsz */ ABSENT_NUMERIC, ++ /* 17: spinv */ ABSENT_NUMERIC, ++ /* 18: spinh */ ABSENT_NUMERIC, ++ /* 19: maddr */ ABSENT_NUMERIC, ++ /* 20: mjump */ ABSENT_NUMERIC, ++ /* 21: mcs */ ABSENT_NUMERIC, ++ /* 22: mls */ ABSENT_NUMERIC, ++ /* 23: npins */ ABSENT_NUMERIC, ++ /* 24: orc */ ABSENT_NUMERIC, ++ /* 25: orl */ ABSENT_NUMERIC, ++ /* 26: orhi */ ABSENT_NUMERIC, ++ /* 27: orvi */ ABSENT_NUMERIC, ++ /* 28: cps */ ABSENT_NUMERIC, ++ /* 29: widcs */ ABSENT_NUMERIC, ++ /* 30: btns */ ABSENT_NUMERIC, ++ /* 31: bitwin */ ABSENT_NUMERIC, ++ /* 32: bitype */ ABSENT_NUMERIC, ++ /* 33: OTug */ ABSENT_NUMERIC, ++ /* 34: OTdC */ ABSENT_NUMERIC, ++ /* 35: OTdN */ ABSENT_NUMERIC, ++ /* 36: OTdB */ ABSENT_NUMERIC, ++ /* 37: OTdT */ ABSENT_NUMERIC, ++ /* 38: OTkn */ ABSENT_NUMERIC, ++}; ++static char * xterm_string_data[] = { ++ /* 0: cbt */ xterm_s_cbt, ++ /* 1: bel */ xterm_s_bel, ++ /* 2: cr */ xterm_s_cr, ++ /* 3: csr */ xterm_s_csr, ++ /* 4: tbc */ xterm_s_tbc, ++ /* 5: clear */ xterm_s_clear, ++ /* 6: el */ xterm_s_el, ++ /* 7: ed */ xterm_s_ed, ++ /* 8: hpa */ xterm_s_hpa, ++ /* 9: cmdch */ ABSENT_STRING, ++ /* 10: cup */ xterm_s_cup, ++ /* 11: cud1 */ xterm_s_cud1, ++ /* 12: home */ xterm_s_home, ++ /* 13: civis */ xterm_s_civis, ++ /* 14: cub1 */ xterm_s_cub1, ++ /* 15: mrcup */ ABSENT_STRING, ++ /* 16: cnorm */ xterm_s_cnorm, ++ /* 17: cuf1 */ xterm_s_cuf1, ++ /* 18: ll */ ABSENT_STRING, ++ /* 19: cuu1 */ xterm_s_cuu1, ++ /* 20: cvvis */ xterm_s_cvvis, ++ /* 21: dch1 */ xterm_s_dch1, ++ /* 22: dl1 */ xterm_s_dl1, ++ /* 23: dsl */ ABSENT_STRING, ++ /* 24: hd */ ABSENT_STRING, ++ /* 25: smacs */ xterm_s_smacs, ++ /* 26: blink */ xterm_s_blink, ++ /* 27: bold */ xterm_s_bold, ++ /* 28: smcup */ xterm_s_smcup, ++ /* 29: smdc */ ABSENT_STRING, ++ /* 30: dim */ xterm_s_dim, ++ /* 31: smir */ xterm_s_smir, ++ /* 32: invis */ xterm_s_invis, ++ /* 33: prot */ ABSENT_STRING, ++ /* 34: rev */ xterm_s_rev, ++ /* 35: smso */ xterm_s_smso, ++ /* 36: smul */ xterm_s_smul, ++ /* 37: ech */ xterm_s_ech, ++ /* 38: rmacs */ xterm_s_rmacs, ++ /* 39: sgr0 */ xterm_s_sgr0, ++ /* 40: rmcup */ xterm_s_rmcup, ++ /* 41: rmdc */ ABSENT_STRING, ++ /* 42: rmir */ xterm_s_rmir, ++ /* 43: rmso */ xterm_s_rmso, ++ /* 44: rmul */ xterm_s_rmul, ++ /* 45: flash */ xterm_s_flash, ++ /* 46: ff */ ABSENT_STRING, ++ /* 47: fsl */ ABSENT_STRING, ++ /* 48: is1 */ ABSENT_STRING, ++ /* 49: is2 */ xterm_s_is2, ++ /* 50: is3 */ ABSENT_STRING, ++ /* 51: if */ ABSENT_STRING, ++ /* 52: ich1 */ ABSENT_STRING, ++ /* 53: il1 */ xterm_s_il1, ++ /* 54: ip */ ABSENT_STRING, ++ /* 55: kbs */ xterm_s_kbs, ++ /* 56: ktbc */ ABSENT_STRING, ++ /* 57: kclr */ ABSENT_STRING, ++ /* 58: kctab */ ABSENT_STRING, ++ /* 59: kdch1 */ xterm_s_kdch1, ++ /* 60: kdl1 */ ABSENT_STRING, ++ /* 61: kcud1 */ xterm_s_kcud1, ++ /* 62: krmir */ ABSENT_STRING, ++ /* 63: kel */ ABSENT_STRING, ++ /* 64: ked */ ABSENT_STRING, ++ /* 65: kf0 */ ABSENT_STRING, ++ /* 66: kf1 */ xterm_s_kf1, ++ /* 67: kf10 */ xterm_s_kf10, ++ /* 68: kf2 */ xterm_s_kf2, ++ /* 69: kf3 */ xterm_s_kf3, ++ /* 70: kf4 */ xterm_s_kf4, ++ /* 71: kf5 */ xterm_s_kf5, ++ /* 72: kf6 */ xterm_s_kf6, ++ /* 73: kf7 */ xterm_s_kf7, ++ /* 74: kf8 */ xterm_s_kf8, ++ /* 75: kf9 */ xterm_s_kf9, ++ /* 76: khome */ xterm_s_khome, ++ /* 77: kich1 */ xterm_s_kich1, ++ /* 78: kil1 */ ABSENT_STRING, ++ /* 79: kcub1 */ xterm_s_kcub1, ++ /* 80: kll */ ABSENT_STRING, ++ /* 81: knp */ xterm_s_knp, ++ /* 82: kpp */ xterm_s_kpp, ++ /* 83: kcuf1 */ xterm_s_kcuf1, ++ /* 84: kind */ xterm_s_kind, ++ /* 85: kri */ xterm_s_kri, ++ /* 86: khts */ ABSENT_STRING, ++ /* 87: kcuu1 */ xterm_s_kcuu1, ++ /* 88: rmkx */ xterm_s_rmkx, ++ /* 89: smkx */ xterm_s_smkx, ++ /* 90: lf0 */ ABSENT_STRING, ++ /* 91: lf1 */ ABSENT_STRING, ++ /* 92: lf10 */ ABSENT_STRING, ++ /* 93: lf2 */ ABSENT_STRING, ++ /* 94: lf3 */ ABSENT_STRING, ++ /* 95: lf4 */ ABSENT_STRING, ++ /* 96: lf5 */ ABSENT_STRING, ++ /* 97: lf6 */ ABSENT_STRING, ++ /* 98: lf7 */ ABSENT_STRING, ++ /* 99: lf8 */ ABSENT_STRING, ++ /* 100: lf9 */ ABSENT_STRING, ++ /* 101: rmm */ xterm_s_rmm, ++ /* 102: smm */ xterm_s_smm, ++ /* 103: nel */ ABSENT_STRING, ++ /* 104: pad */ ABSENT_STRING, ++ /* 105: dch */ xterm_s_dch, ++ /* 106: dl */ xterm_s_dl, ++ /* 107: cud */ xterm_s_cud, ++ /* 108: ich */ xterm_s_ich, ++ /* 109: indn */ xterm_s_indn, ++ /* 110: il */ xterm_s_il, ++ /* 111: cub */ xterm_s_cub, ++ /* 112: cuf */ xterm_s_cuf, ++ /* 113: rin */ xterm_s_rin, ++ /* 114: cuu */ xterm_s_cuu, ++ /* 115: pfkey */ ABSENT_STRING, ++ /* 116: pfloc */ ABSENT_STRING, ++ /* 117: pfx */ ABSENT_STRING, ++ /* 118: mc0 */ xterm_s_mc0, ++ /* 119: mc4 */ xterm_s_mc4, ++ /* 120: mc5 */ xterm_s_mc5, ++ /* 121: rep */ xterm_s_rep, ++ /* 122: rs1 */ xterm_s_rs1, ++ /* 123: rs2 */ xterm_s_rs2, ++ /* 124: rs3 */ ABSENT_STRING, ++ /* 125: rf */ ABSENT_STRING, ++ /* 126: rc */ xterm_s_rc, ++ /* 127: vpa */ xterm_s_vpa, ++ /* 128: sc */ xterm_s_sc, ++ /* 129: ind */ xterm_s_ind, ++ /* 130: ri */ xterm_s_ri, ++ /* 131: sgr */ xterm_s_sgr, ++ /* 132: hts */ xterm_s_hts, ++ /* 133: wind */ ABSENT_STRING, ++ /* 134: ht */ xterm_s_ht, ++ /* 135: tsl */ ABSENT_STRING, ++ /* 136: uc */ ABSENT_STRING, ++ /* 137: hu */ ABSENT_STRING, ++ /* 138: iprog */ ABSENT_STRING, ++ /* 139: ka1 */ ABSENT_STRING, ++ /* 140: ka3 */ ABSENT_STRING, ++ /* 141: kb2 */ xterm_s_kb2, ++ /* 142: kc1 */ ABSENT_STRING, ++ /* 143: kc3 */ ABSENT_STRING, ++ /* 144: mc5p */ ABSENT_STRING, ++ /* 145: rmp */ ABSENT_STRING, ++ /* 146: acsc */ xterm_s_acsc, ++ /* 147: pln */ ABSENT_STRING, ++ /* 148: kcbt */ xterm_s_kcbt, ++ /* 149: smxon */ ABSENT_STRING, ++ /* 150: rmxon */ ABSENT_STRING, ++ /* 151: smam */ xterm_s_smam, ++ /* 152: rmam */ xterm_s_rmam, ++ /* 153: xonc */ ABSENT_STRING, ++ /* 154: xoffc */ ABSENT_STRING, ++ /* 155: enacs */ ABSENT_STRING, ++ /* 156: smln */ ABSENT_STRING, ++ /* 157: rmln */ ABSENT_STRING, ++ /* 158: kbeg */ ABSENT_STRING, ++ /* 159: kcan */ ABSENT_STRING, ++ /* 160: kclo */ ABSENT_STRING, ++ /* 161: kcmd */ ABSENT_STRING, ++ /* 162: kcpy */ ABSENT_STRING, ++ /* 163: kcrt */ ABSENT_STRING, ++ /* 164: kend */ xterm_s_kend, ++ /* 165: kent */ xterm_s_kent, ++ /* 166: kext */ ABSENT_STRING, ++ /* 167: kfnd */ ABSENT_STRING, ++ /* 168: khlp */ ABSENT_STRING, ++ /* 169: kmrk */ ABSENT_STRING, ++ /* 170: kmsg */ ABSENT_STRING, ++ /* 171: kmov */ ABSENT_STRING, ++ /* 172: knxt */ ABSENT_STRING, ++ /* 173: kopn */ ABSENT_STRING, ++ /* 174: kopt */ ABSENT_STRING, ++ /* 175: kprv */ ABSENT_STRING, ++ /* 176: kprt */ ABSENT_STRING, ++ /* 177: krdo */ ABSENT_STRING, ++ /* 178: kref */ ABSENT_STRING, ++ /* 179: krfr */ ABSENT_STRING, ++ /* 180: krpl */ ABSENT_STRING, ++ /* 181: krst */ ABSENT_STRING, ++ /* 182: kres */ ABSENT_STRING, ++ /* 183: ksav */ ABSENT_STRING, ++ /* 184: kspd */ ABSENT_STRING, ++ /* 185: kund */ ABSENT_STRING, ++ /* 186: kBEG */ ABSENT_STRING, ++ /* 187: kCAN */ ABSENT_STRING, ++ /* 188: kCMD */ ABSENT_STRING, ++ /* 189: kCPY */ ABSENT_STRING, ++ /* 190: kCRT */ ABSENT_STRING, ++ /* 191: kDC */ xterm_s_kDC, ++ /* 192: kDL */ ABSENT_STRING, ++ /* 193: kslt */ ABSENT_STRING, ++ /* 194: kEND */ xterm_s_kEND, ++ /* 195: kEOL */ ABSENT_STRING, ++ /* 196: kEXT */ ABSENT_STRING, ++ /* 197: kFND */ ABSENT_STRING, ++ /* 198: kHLP */ ABSENT_STRING, ++ /* 199: kHOM */ xterm_s_kHOM, ++ /* 200: kIC */ xterm_s_kIC, ++ /* 201: kLFT */ xterm_s_kLFT, ++ /* 202: kMSG */ ABSENT_STRING, ++ /* 203: kMOV */ ABSENT_STRING, ++ /* 204: kNXT */ xterm_s_kNXT, ++ /* 205: kOPT */ ABSENT_STRING, ++ /* 206: kPRV */ xterm_s_kPRV, ++ /* 207: kPRT */ ABSENT_STRING, ++ /* 208: kRDO */ ABSENT_STRING, ++ /* 209: kRPL */ ABSENT_STRING, ++ /* 210: kRIT */ xterm_s_kRIT, ++ /* 211: kRES */ ABSENT_STRING, ++ /* 212: kSAV */ ABSENT_STRING, ++ /* 213: kSPD */ ABSENT_STRING, ++ /* 214: kUND */ ABSENT_STRING, ++ /* 215: rfi */ ABSENT_STRING, ++ /* 216: kf11 */ xterm_s_kf11, ++ /* 217: kf12 */ xterm_s_kf12, ++ /* 218: kf13 */ xterm_s_kf13, ++ /* 219: kf14 */ xterm_s_kf14, ++ /* 220: kf15 */ xterm_s_kf15, ++ /* 221: kf16 */ xterm_s_kf16, ++ /* 222: kf17 */ xterm_s_kf17, ++ /* 223: kf18 */ xterm_s_kf18, ++ /* 224: kf19 */ xterm_s_kf19, ++ /* 225: kf20 */ xterm_s_kf20, ++ /* 226: kf21 */ xterm_s_kf21, ++ /* 227: kf22 */ xterm_s_kf22, ++ /* 228: kf23 */ xterm_s_kf23, ++ /* 229: kf24 */ xterm_s_kf24, ++ /* 230: kf25 */ xterm_s_kf25, ++ /* 231: kf26 */ xterm_s_kf26, ++ /* 232: kf27 */ xterm_s_kf27, ++ /* 233: kf28 */ xterm_s_kf28, ++ /* 234: kf29 */ xterm_s_kf29, ++ /* 235: kf30 */ xterm_s_kf30, ++ /* 236: kf31 */ xterm_s_kf31, ++ /* 237: kf32 */ xterm_s_kf32, ++ /* 238: kf33 */ xterm_s_kf33, ++ /* 239: kf34 */ xterm_s_kf34, ++ /* 240: kf35 */ xterm_s_kf35, ++ /* 241: kf36 */ xterm_s_kf36, ++ /* 242: kf37 */ xterm_s_kf37, ++ /* 243: kf38 */ xterm_s_kf38, ++ /* 244: kf39 */ xterm_s_kf39, ++ /* 245: kf40 */ xterm_s_kf40, ++ /* 246: kf41 */ xterm_s_kf41, ++ /* 247: kf42 */ xterm_s_kf42, ++ /* 248: kf43 */ xterm_s_kf43, ++ /* 249: kf44 */ xterm_s_kf44, ++ /* 250: kf45 */ xterm_s_kf45, ++ /* 251: kf46 */ xterm_s_kf46, ++ /* 252: kf47 */ xterm_s_kf47, ++ /* 253: kf48 */ xterm_s_kf48, ++ /* 254: kf49 */ xterm_s_kf49, ++ /* 255: kf50 */ xterm_s_kf50, ++ /* 256: kf51 */ xterm_s_kf51, ++ /* 257: kf52 */ xterm_s_kf52, ++ /* 258: kf53 */ xterm_s_kf53, ++ /* 259: kf54 */ xterm_s_kf54, ++ /* 260: kf55 */ xterm_s_kf55, ++ /* 261: kf56 */ xterm_s_kf56, ++ /* 262: kf57 */ xterm_s_kf57, ++ /* 263: kf58 */ xterm_s_kf58, ++ /* 264: kf59 */ xterm_s_kf59, ++ /* 265: kf60 */ xterm_s_kf60, ++ /* 266: kf61 */ xterm_s_kf61, ++ /* 267: kf62 */ xterm_s_kf62, ++ /* 268: kf63 */ xterm_s_kf63, ++ /* 269: el1 */ xterm_s_el1, ++ /* 270: mgc */ ABSENT_STRING, ++ /* 271: smgl */ ABSENT_STRING, ++ /* 272: smgr */ ABSENT_STRING, ++ /* 273: fln */ ABSENT_STRING, ++ /* 274: sclk */ ABSENT_STRING, ++ /* 275: dclk */ ABSENT_STRING, ++ /* 276: rmclk */ ABSENT_STRING, ++ /* 277: cwin */ ABSENT_STRING, ++ /* 278: wingo */ ABSENT_STRING, ++ /* 279: hup */ ABSENT_STRING, ++ /* 280: dial */ ABSENT_STRING, ++ /* 281: qdial */ ABSENT_STRING, ++ /* 282: tone */ ABSENT_STRING, ++ /* 283: pulse */ ABSENT_STRING, ++ /* 284: hook */ ABSENT_STRING, ++ /* 285: pause */ ABSENT_STRING, ++ /* 286: wait */ ABSENT_STRING, ++ /* 287: u0 */ ABSENT_STRING, ++ /* 288: u1 */ ABSENT_STRING, ++ /* 289: u2 */ ABSENT_STRING, ++ /* 290: u3 */ ABSENT_STRING, ++ /* 291: u4 */ ABSENT_STRING, ++ /* 292: u5 */ ABSENT_STRING, ++ /* 293: u6 */ xterm_s_u6, ++ /* 294: u7 */ xterm_s_u7, ++ /* 295: u8 */ xterm_s_u8, ++ /* 296: u9 */ xterm_s_u9, ++ /* 297: op */ xterm_s_op, ++ /* 298: oc */ ABSENT_STRING, ++ /* 299: initc */ ABSENT_STRING, ++ /* 300: initp */ ABSENT_STRING, ++ /* 301: scp */ ABSENT_STRING, ++ /* 302: setf */ xterm_s_setf, ++ /* 303: setb */ xterm_s_setb, ++ /* 304: cpi */ ABSENT_STRING, ++ /* 305: lpi */ ABSENT_STRING, ++ /* 306: chr */ ABSENT_STRING, ++ /* 307: cvr */ ABSENT_STRING, ++ /* 308: defc */ ABSENT_STRING, ++ /* 309: swidm */ ABSENT_STRING, ++ /* 310: sdrfq */ ABSENT_STRING, ++ /* 311: sitm */ xterm_s_sitm, ++ /* 312: slm */ ABSENT_STRING, ++ /* 313: smicm */ ABSENT_STRING, ++ /* 314: snlq */ ABSENT_STRING, ++ /* 315: snrmq */ ABSENT_STRING, ++ /* 316: sshm */ ABSENT_STRING, ++ /* 317: ssubm */ ABSENT_STRING, ++ /* 318: ssupm */ ABSENT_STRING, ++ /* 319: sum */ ABSENT_STRING, ++ /* 320: rwidm */ ABSENT_STRING, ++ /* 321: ritm */ xterm_s_ritm, ++ /* 322: rlm */ ABSENT_STRING, ++ /* 323: rmicm */ ABSENT_STRING, ++ /* 324: rshm */ ABSENT_STRING, ++ /* 325: rsubm */ ABSENT_STRING, ++ /* 326: rsupm */ ABSENT_STRING, ++ /* 327: rum */ ABSENT_STRING, ++ /* 328: mhpa */ ABSENT_STRING, ++ /* 329: mcud1 */ ABSENT_STRING, ++ /* 330: mcub1 */ ABSENT_STRING, ++ /* 331: mcuf1 */ ABSENT_STRING, ++ /* 332: mvpa */ ABSENT_STRING, ++ /* 333: mcuu1 */ ABSENT_STRING, ++ /* 334: porder */ ABSENT_STRING, ++ /* 335: mcud */ ABSENT_STRING, ++ /* 336: mcub */ ABSENT_STRING, ++ /* 337: mcuf */ ABSENT_STRING, ++ /* 338: mcuu */ ABSENT_STRING, ++ /* 339: scs */ ABSENT_STRING, ++ /* 340: smgb */ ABSENT_STRING, ++ /* 341: smgbp */ ABSENT_STRING, ++ /* 342: smglp */ ABSENT_STRING, ++ /* 343: smgrp */ ABSENT_STRING, ++ /* 344: smgt */ ABSENT_STRING, ++ /* 345: smgtp */ ABSENT_STRING, ++ /* 346: sbim */ ABSENT_STRING, ++ /* 347: scsd */ ABSENT_STRING, ++ /* 348: rbim */ ABSENT_STRING, ++ /* 349: rcsd */ ABSENT_STRING, ++ /* 350: subcs */ ABSENT_STRING, ++ /* 351: supcs */ ABSENT_STRING, ++ /* 352: docr */ ABSENT_STRING, ++ /* 353: zerom */ ABSENT_STRING, ++ /* 354: csnm */ ABSENT_STRING, ++ /* 355: kmous */ xterm_s_kmous, ++ /* 356: minfo */ ABSENT_STRING, ++ /* 357: reqmp */ ABSENT_STRING, ++ /* 358: getm */ ABSENT_STRING, ++ /* 359: setaf */ xterm_s_setaf, ++ /* 360: setab */ xterm_s_setab, ++ /* 361: pfxl */ ABSENT_STRING, ++ /* 362: devt */ ABSENT_STRING, ++ /* 363: csin */ ABSENT_STRING, ++ /* 364: s0ds */ ABSENT_STRING, ++ /* 365: s1ds */ ABSENT_STRING, ++ /* 366: s2ds */ ABSENT_STRING, ++ /* 367: s3ds */ ABSENT_STRING, ++ /* 368: smglr */ ABSENT_STRING, ++ /* 369: smgtb */ ABSENT_STRING, ++ /* 370: birep */ ABSENT_STRING, ++ /* 371: binel */ ABSENT_STRING, ++ /* 372: bicr */ ABSENT_STRING, ++ /* 373: colornm */ ABSENT_STRING, ++ /* 374: defbi */ ABSENT_STRING, ++ /* 375: endbi */ ABSENT_STRING, ++ /* 376: setcolor */ ABSENT_STRING, ++ /* 377: slines */ ABSENT_STRING, ++ /* 378: dispc */ ABSENT_STRING, ++ /* 379: smpch */ ABSENT_STRING, ++ /* 380: rmpch */ ABSENT_STRING, ++ /* 381: smsc */ ABSENT_STRING, ++ /* 382: rmsc */ ABSENT_STRING, ++ /* 383: pctrm */ ABSENT_STRING, ++ /* 384: scesc */ ABSENT_STRING, ++ /* 385: scesa */ ABSENT_STRING, ++ /* 386: ehhlm */ ABSENT_STRING, ++ /* 387: elhlm */ ABSENT_STRING, ++ /* 388: elohlm */ ABSENT_STRING, ++ /* 389: erhlm */ ABSENT_STRING, ++ /* 390: ethlm */ ABSENT_STRING, ++ /* 391: evhlm */ ABSENT_STRING, ++ /* 392: sgr1 */ ABSENT_STRING, ++ /* 393: slength */ ABSENT_STRING, ++ /* 394: OTi2 */ ABSENT_STRING, ++ /* 395: OTrs */ ABSENT_STRING, ++ /* 396: OTnl */ ABSENT_STRING, ++ /* 397: OTbc */ ABSENT_STRING, ++ /* 398: OTko */ ABSENT_STRING, ++ /* 399: OTma */ ABSENT_STRING, ++ /* 400: OTG2 */ ABSENT_STRING, ++ /* 401: OTG3 */ ABSENT_STRING, ++ /* 402: OTG1 */ ABSENT_STRING, ++ /* 403: OTG4 */ ABSENT_STRING, ++ /* 404: OTGR */ ABSENT_STRING, ++ /* 405: OTGL */ ABSENT_STRING, ++ /* 406: OTGU */ ABSENT_STRING, ++ /* 407: OTGD */ ABSENT_STRING, ++ /* 408: OTGH */ ABSENT_STRING, ++ /* 409: OTGV */ ABSENT_STRING, ++ /* 410: OTGC */ ABSENT_STRING, ++ /* 411: meml */ xterm_s_meml, ++ /* 412: memu */ xterm_s_memu, ++ /* 413: box1 */ ABSENT_STRING, ++}; ++/* xterm-256color */ ++ ++static char xterm_256color_alias_data[] = "xterm-256color|xterm with 256 colors"; ++ ++static char xterm_256color_s_cbt[] = "\033[Z"; ++static char xterm_256color_s_bel[] = "\007"; ++static char xterm_256color_s_cr [] = "\015"; ++static char xterm_256color_s_csr[] = "\033[%i%p1%d;%p2%dr"; ++static char xterm_256color_s_tbc[] = "\033[3g"; ++static char xterm_256color_s_clear[] = "\033[H\033[2J"; ++static char xterm_256color_s_el [] = "\033[K"; ++static char xterm_256color_s_ed [] = "\033[J"; ++static char xterm_256color_s_hpa[] = "\033[%i%p1%dG"; ++static char xterm_256color_s_cup[] = "\033[%i%p1%d;%p2%dH"; ++static char xterm_256color_s_cud1[] = "\012"; ++static char xterm_256color_s_home[] = "\033[H"; ++static char xterm_256color_s_civis[] = "\033[?25l"; ++static char xterm_256color_s_cub1[] = "\010"; ++static char xterm_256color_s_cnorm[] = "\033[?12l\033[?25h"; ++static char xterm_256color_s_cuf1[] = "\033[C"; ++static char xterm_256color_s_cuu1[] = "\033[A"; ++static char xterm_256color_s_cvvis[] = "\033[?12;25h"; ++static char xterm_256color_s_dch1[] = "\033[P"; ++static char xterm_256color_s_dl1[] = "\033[M"; ++static char xterm_256color_s_smacs[] = "\033(0"; ++static char xterm_256color_s_blink[] = "\033[5m"; ++static char xterm_256color_s_bold[] = "\033[1m"; ++static char xterm_256color_s_smcup[] = "\033[?1049h\033[22;0;0t"; ++static char xterm_256color_s_dim[] = "\033[2m"; ++static char xterm_256color_s_smir[] = "\033[4h"; ++static char xterm_256color_s_invis[] = "\033[8m"; ++static char xterm_256color_s_rev[] = "\033[7m"; ++static char xterm_256color_s_smso[] = "\033[7m"; ++static char xterm_256color_s_smul[] = "\033[4m"; ++static char xterm_256color_s_ech[] = "\033[%p1%dX"; ++static char xterm_256color_s_rmacs[] = "\033(B"; ++static char xterm_256color_s_sgr0[] = "\033(B\033[m"; ++static char xterm_256color_s_rmcup[] = "\033[?1049l\033[23;0;0t"; ++static char xterm_256color_s_rmir[] = "\033[4l"; ++static char xterm_256color_s_rmso[] = "\033[27m"; ++static char xterm_256color_s_rmul[] = "\033[24m"; ++static char xterm_256color_s_flash[] = "\033[?5h$<100/>\033[?5l"; ++static char xterm_256color_s_is2[] = "\033[!p\033[?3;4l\033[4l\033>"; ++static char xterm_256color_s_il1[] = "\033[L"; ++static char xterm_256color_s_kbs[] = "\010"; ++static char xterm_256color_s_kdch1[] = "\033[3~"; ++static char xterm_256color_s_kcud1[] = "\033OB"; ++static char xterm_256color_s_kf1[] = "\033OP"; ++static char xterm_256color_s_kf10[] = "\033[21~"; ++static char xterm_256color_s_kf2[] = "\033OQ"; ++static char xterm_256color_s_kf3[] = "\033OR"; ++static char xterm_256color_s_kf4[] = "\033OS"; ++static char xterm_256color_s_kf5[] = "\033[15~"; ++static char xterm_256color_s_kf6[] = "\033[17~"; ++static char xterm_256color_s_kf7[] = "\033[18~"; ++static char xterm_256color_s_kf8[] = "\033[19~"; ++static char xterm_256color_s_kf9[] = "\033[20~"; ++static char xterm_256color_s_khome[] = "\033OH"; ++static char xterm_256color_s_kich1[] = "\033[2~"; ++static char xterm_256color_s_kcub1[] = "\033OD"; ++static char xterm_256color_s_knp[] = "\033[6~"; ++static char xterm_256color_s_kpp[] = "\033[5~"; ++static char xterm_256color_s_kcuf1[] = "\033OC"; ++static char xterm_256color_s_kind[] = "\033[1;2B"; ++static char xterm_256color_s_kri[] = "\033[1;2A"; ++static char xterm_256color_s_kcuu1[] = "\033OA"; ++static char xterm_256color_s_rmkx[] = "\033[?1l\033>"; ++static char xterm_256color_s_smkx[] = "\033[?1h\033="; ++static char xterm_256color_s_rmm[] = "\033[?1034l"; ++static char xterm_256color_s_smm[] = "\033[?1034h"; ++static char xterm_256color_s_dch[] = "\033[%p1%dP"; ++static char xterm_256color_s_dl [] = "\033[%p1%dM"; ++static char xterm_256color_s_cud[] = "\033[%p1%dB"; ++static char xterm_256color_s_ich[] = "\033[%p1%d@"; ++static char xterm_256color_s_indn[] = "\033[%p1%dS"; ++static char xterm_256color_s_il [] = "\033[%p1%dL"; ++static char xterm_256color_s_cub[] = "\033[%p1%dD"; ++static char xterm_256color_s_cuf[] = "\033[%p1%dC"; ++static char xterm_256color_s_rin[] = "\033[%p1%dT"; ++static char xterm_256color_s_cuu[] = "\033[%p1%dA"; ++static char xterm_256color_s_mc0[] = "\033[i"; ++static char xterm_256color_s_mc4[] = "\033[4i"; ++static char xterm_256color_s_mc5[] = "\033[5i"; ++static char xterm_256color_s_rep[] = "%p1%c\033[%p2%{1}%-%db"; ++static char xterm_256color_s_rs1[] = "\033c\033]104\007"; ++static char xterm_256color_s_rs2[] = "\033[!p\033[?3;4l\033[4l\033>"; ++static char xterm_256color_s_rc [] = "\0338"; ++static char xterm_256color_s_vpa[] = "\033[%i%p1%dd"; ++static char xterm_256color_s_sc [] = "\0337"; ++static char xterm_256color_s_ind[] = "\012"; ++static char xterm_256color_s_ri [] = "\033M"; ++static char xterm_256color_s_sgr[] = "%?%p9%t\033(0%e\033(B%;\033[0%?%p6%t;1%;%?%p5%t;2%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p7%t;8%;m"; ++static char xterm_256color_s_hts[] = "\033H"; ++static char xterm_256color_s_ht [] = "\011"; ++static char xterm_256color_s_kb2[] = "\033OE"; ++static char xterm_256color_s_acsc[] = "``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~"; ++static char xterm_256color_s_kcbt[] = "\033[Z"; ++static char xterm_256color_s_smam[] = "\033[?7h"; ++static char xterm_256color_s_rmam[] = "\033[?7l"; ++static char xterm_256color_s_kend[] = "\033OF"; ++static char xterm_256color_s_kent[] = "\033OM"; ++static char xterm_256color_s_kDC[] = "\033[3;2~"; ++static char xterm_256color_s_kEND[] = "\033[1;2F"; ++static char xterm_256color_s_kHOM[] = "\033[1;2H"; ++static char xterm_256color_s_kIC[] = "\033[2;2~"; ++static char xterm_256color_s_kLFT[] = "\033[1;2D"; ++static char xterm_256color_s_kNXT[] = "\033[6;2~"; ++static char xterm_256color_s_kPRV[] = "\033[5;2~"; ++static char xterm_256color_s_kRIT[] = "\033[1;2C"; ++static char xterm_256color_s_kf11[] = "\033[23~"; ++static char xterm_256color_s_kf12[] = "\033[24~"; ++static char xterm_256color_s_kf13[] = "\033[1;2P"; ++static char xterm_256color_s_kf14[] = "\033[1;2Q"; ++static char xterm_256color_s_kf15[] = "\033[1;2R"; ++static char xterm_256color_s_kf16[] = "\033[1;2S"; ++static char xterm_256color_s_kf17[] = "\033[15;2~"; ++static char xterm_256color_s_kf18[] = "\033[17;2~"; ++static char xterm_256color_s_kf19[] = "\033[18;2~"; ++static char xterm_256color_s_kf20[] = "\033[19;2~"; ++static char xterm_256color_s_kf21[] = "\033[20;2~"; ++static char xterm_256color_s_kf22[] = "\033[21;2~"; ++static char xterm_256color_s_kf23[] = "\033[23;2~"; ++static char xterm_256color_s_kf24[] = "\033[24;2~"; ++static char xterm_256color_s_kf25[] = "\033[1;5P"; ++static char xterm_256color_s_kf26[] = "\033[1;5Q"; ++static char xterm_256color_s_kf27[] = "\033[1;5R"; ++static char xterm_256color_s_kf28[] = "\033[1;5S"; ++static char xterm_256color_s_kf29[] = "\033[15;5~"; ++static char xterm_256color_s_kf30[] = "\033[17;5~"; ++static char xterm_256color_s_kf31[] = "\033[18;5~"; ++static char xterm_256color_s_kf32[] = "\033[19;5~"; ++static char xterm_256color_s_kf33[] = "\033[20;5~"; ++static char xterm_256color_s_kf34[] = "\033[21;5~"; ++static char xterm_256color_s_kf35[] = "\033[23;5~"; ++static char xterm_256color_s_kf36[] = "\033[24;5~"; ++static char xterm_256color_s_kf37[] = "\033[1;6P"; ++static char xterm_256color_s_kf38[] = "\033[1;6Q"; ++static char xterm_256color_s_kf39[] = "\033[1;6R"; ++static char xterm_256color_s_kf40[] = "\033[1;6S"; ++static char xterm_256color_s_kf41[] = "\033[15;6~"; ++static char xterm_256color_s_kf42[] = "\033[17;6~"; ++static char xterm_256color_s_kf43[] = "\033[18;6~"; ++static char xterm_256color_s_kf44[] = "\033[19;6~"; ++static char xterm_256color_s_kf45[] = "\033[20;6~"; ++static char xterm_256color_s_kf46[] = "\033[21;6~"; ++static char xterm_256color_s_kf47[] = "\033[23;6~"; ++static char xterm_256color_s_kf48[] = "\033[24;6~"; ++static char xterm_256color_s_kf49[] = "\033[1;3P"; ++static char xterm_256color_s_kf50[] = "\033[1;3Q"; ++static char xterm_256color_s_kf51[] = "\033[1;3R"; ++static char xterm_256color_s_kf52[] = "\033[1;3S"; ++static char xterm_256color_s_kf53[] = "\033[15;3~"; ++static char xterm_256color_s_kf54[] = "\033[17;3~"; ++static char xterm_256color_s_kf55[] = "\033[18;3~"; ++static char xterm_256color_s_kf56[] = "\033[19;3~"; ++static char xterm_256color_s_kf57[] = "\033[20;3~"; ++static char xterm_256color_s_kf58[] = "\033[21;3~"; ++static char xterm_256color_s_kf59[] = "\033[23;3~"; ++static char xterm_256color_s_kf60[] = "\033[24;3~"; ++static char xterm_256color_s_kf61[] = "\033[1;4P"; ++static char xterm_256color_s_kf62[] = "\033[1;4Q"; ++static char xterm_256color_s_kf63[] = "\033[1;4R"; ++static char xterm_256color_s_el1[] = "\033[1K"; ++static char xterm_256color_s_u6 [] = "\033[%i%d;%dR"; ++static char xterm_256color_s_u7 [] = "\033[6n"; ++static char xterm_256color_s_u8 [] = "\033[?%[;0123456789]c"; ++static char xterm_256color_s_u9 [] = "\033[c"; ++static char xterm_256color_s_op [] = "\033[39;49m"; ++static char xterm_256color_s_oc [] = "\033]104\007"; ++static char xterm_256color_s_initc[] = "\033]4;%p1%d;rgb:%p2%{255}%*%{1000}%/%2.2X/%p3%{255}%*%{1000}%/%2.2X/%p4%{255}%*%{1000}%/%2.2X\033\134"; ++static char xterm_256color_s_sitm[] = "\033[3m"; ++static char xterm_256color_s_ritm[] = "\033[23m"; ++static char xterm_256color_s_kmous[] = "\033[<"; ++static char xterm_256color_s_setaf[] = "\033[%?%p1%{8}%<%t3%p1%d%e%p1%{16}%<%t9%p1%{8}%-%d%e38;5;%p1%d%;m"; ++static char xterm_256color_s_setab[] = "\033[%?%p1%{8}%<%t4%p1%d%e%p1%{16}%<%t10%p1%{8}%-%d%e48;5;%p1%d%;m"; ++static char xterm_256color_s_meml[] = "\033l"; ++static char xterm_256color_s_memu[] = "\033m"; ++ ++static char xterm_256color_bool_data[] = { ++ /* 0: bw */ FALSE, ++ /* 1: am */ TRUE, ++ /* 2: xsb */ FALSE, ++ /* 3: xhp */ FALSE, ++ /* 4: xenl */ TRUE, ++ /* 5: eo */ FALSE, ++ /* 6: gn */ FALSE, ++ /* 7: hc */ FALSE, ++ /* 8: km */ TRUE, ++ /* 9: hs */ FALSE, ++ /* 10: in */ FALSE, ++ /* 11: da */ FALSE, ++ /* 12: db */ FALSE, ++ /* 13: mir */ TRUE, ++ /* 14: msgr */ TRUE, ++ /* 15: os */ FALSE, ++ /* 16: eslok */ FALSE, ++ /* 17: xt */ FALSE, ++ /* 18: hz */ FALSE, ++ /* 19: ul */ FALSE, ++ /* 20: xon */ FALSE, ++ /* 21: nxon */ FALSE, ++ /* 22: mc5i */ TRUE, ++ /* 23: chts */ FALSE, ++ /* 24: nrrmc */ FALSE, ++ /* 25: npc */ TRUE, ++ /* 26: ndscr */ FALSE, ++ /* 27: ccc */ TRUE, ++ /* 28: bce */ TRUE, ++ /* 29: hls */ FALSE, ++ /* 30: xhpa */ FALSE, ++ /* 31: crxm */ FALSE, ++ /* 32: daisy */ FALSE, ++ /* 33: xvpa */ FALSE, ++ /* 34: sam */ FALSE, ++ /* 35: cpix */ FALSE, ++ /* 36: lpix */ FALSE, ++ /* 37: OTbs */ TRUE, ++ /* 38: OTns */ FALSE, ++ /* 39: OTnc */ FALSE, ++ /* 40: OTMT */ FALSE, ++ /* 41: OTNL */ FALSE, ++ /* 42: OTpt */ FALSE, ++ /* 43: OTxr */ FALSE, ++}; ++static NCURSES_INT2 xterm_256color_number_data[] = { ++ /* 0: cols */ 80, ++ /* 1: it */ 8, ++ /* 2: lines */ 24, ++ /* 3: lm */ ABSENT_NUMERIC, ++ /* 4: xmc */ ABSENT_NUMERIC, ++ /* 5: pb */ ABSENT_NUMERIC, ++ /* 6: vt */ ABSENT_NUMERIC, ++ /* 7: wsl */ ABSENT_NUMERIC, ++ /* 8: nlab */ ABSENT_NUMERIC, ++ /* 9: lh */ ABSENT_NUMERIC, ++ /* 10: lw */ ABSENT_NUMERIC, ++ /* 11: ma */ ABSENT_NUMERIC, ++ /* 12: wnum */ ABSENT_NUMERIC, ++ /* 13: colors */ 256, ++ /* 14: pairs */ 32767, ++ /* 15: ncv */ ABSENT_NUMERIC, ++ /* 16: bufsz */ ABSENT_NUMERIC, ++ /* 17: spinv */ ABSENT_NUMERIC, ++ /* 18: spinh */ ABSENT_NUMERIC, ++ /* 19: maddr */ ABSENT_NUMERIC, ++ /* 20: mjump */ ABSENT_NUMERIC, ++ /* 21: mcs */ ABSENT_NUMERIC, ++ /* 22: mls */ ABSENT_NUMERIC, ++ /* 23: npins */ ABSENT_NUMERIC, ++ /* 24: orc */ ABSENT_NUMERIC, ++ /* 25: orl */ ABSENT_NUMERIC, ++ /* 26: orhi */ ABSENT_NUMERIC, ++ /* 27: orvi */ ABSENT_NUMERIC, ++ /* 28: cps */ ABSENT_NUMERIC, ++ /* 29: widcs */ ABSENT_NUMERIC, ++ /* 30: btns */ ABSENT_NUMERIC, ++ /* 31: bitwin */ ABSENT_NUMERIC, ++ /* 32: bitype */ ABSENT_NUMERIC, ++ /* 33: OTug */ ABSENT_NUMERIC, ++ /* 34: OTdC */ ABSENT_NUMERIC, ++ /* 35: OTdN */ ABSENT_NUMERIC, ++ /* 36: OTdB */ ABSENT_NUMERIC, ++ /* 37: OTdT */ ABSENT_NUMERIC, ++ /* 38: OTkn */ ABSENT_NUMERIC, ++}; ++static char * xterm_256color_string_data[] = { ++ /* 0: cbt */ xterm_256color_s_cbt, ++ /* 1: bel */ xterm_256color_s_bel, ++ /* 2: cr */ xterm_256color_s_cr, ++ /* 3: csr */ xterm_256color_s_csr, ++ /* 4: tbc */ xterm_256color_s_tbc, ++ /* 5: clear */ xterm_256color_s_clear, ++ /* 6: el */ xterm_256color_s_el, ++ /* 7: ed */ xterm_256color_s_ed, ++ /* 8: hpa */ xterm_256color_s_hpa, ++ /* 9: cmdch */ ABSENT_STRING, ++ /* 10: cup */ xterm_256color_s_cup, ++ /* 11: cud1 */ xterm_256color_s_cud1, ++ /* 12: home */ xterm_256color_s_home, ++ /* 13: civis */ xterm_256color_s_civis, ++ /* 14: cub1 */ xterm_256color_s_cub1, ++ /* 15: mrcup */ ABSENT_STRING, ++ /* 16: cnorm */ xterm_256color_s_cnorm, ++ /* 17: cuf1 */ xterm_256color_s_cuf1, ++ /* 18: ll */ ABSENT_STRING, ++ /* 19: cuu1 */ xterm_256color_s_cuu1, ++ /* 20: cvvis */ xterm_256color_s_cvvis, ++ /* 21: dch1 */ xterm_256color_s_dch1, ++ /* 22: dl1 */ xterm_256color_s_dl1, ++ /* 23: dsl */ ABSENT_STRING, ++ /* 24: hd */ ABSENT_STRING, ++ /* 25: smacs */ xterm_256color_s_smacs, ++ /* 26: blink */ xterm_256color_s_blink, ++ /* 27: bold */ xterm_256color_s_bold, ++ /* 28: smcup */ xterm_256color_s_smcup, ++ /* 29: smdc */ ABSENT_STRING, ++ /* 30: dim */ xterm_256color_s_dim, ++ /* 31: smir */ xterm_256color_s_smir, ++ /* 32: invis */ xterm_256color_s_invis, ++ /* 33: prot */ ABSENT_STRING, ++ /* 34: rev */ xterm_256color_s_rev, ++ /* 35: smso */ xterm_256color_s_smso, ++ /* 36: smul */ xterm_256color_s_smul, ++ /* 37: ech */ xterm_256color_s_ech, ++ /* 38: rmacs */ xterm_256color_s_rmacs, ++ /* 39: sgr0 */ xterm_256color_s_sgr0, ++ /* 40: rmcup */ xterm_256color_s_rmcup, ++ /* 41: rmdc */ ABSENT_STRING, ++ /* 42: rmir */ xterm_256color_s_rmir, ++ /* 43: rmso */ xterm_256color_s_rmso, ++ /* 44: rmul */ xterm_256color_s_rmul, ++ /* 45: flash */ xterm_256color_s_flash, ++ /* 46: ff */ ABSENT_STRING, ++ /* 47: fsl */ ABSENT_STRING, ++ /* 48: is1 */ ABSENT_STRING, ++ /* 49: is2 */ xterm_256color_s_is2, ++ /* 50: is3 */ ABSENT_STRING, ++ /* 51: if */ ABSENT_STRING, ++ /* 52: ich1 */ ABSENT_STRING, ++ /* 53: il1 */ xterm_256color_s_il1, ++ /* 54: ip */ ABSENT_STRING, ++ /* 55: kbs */ xterm_256color_s_kbs, ++ /* 56: ktbc */ ABSENT_STRING, ++ /* 57: kclr */ ABSENT_STRING, ++ /* 58: kctab */ ABSENT_STRING, ++ /* 59: kdch1 */ xterm_256color_s_kdch1, ++ /* 60: kdl1 */ ABSENT_STRING, ++ /* 61: kcud1 */ xterm_256color_s_kcud1, ++ /* 62: krmir */ ABSENT_STRING, ++ /* 63: kel */ ABSENT_STRING, ++ /* 64: ked */ ABSENT_STRING, ++ /* 65: kf0 */ ABSENT_STRING, ++ /* 66: kf1 */ xterm_256color_s_kf1, ++ /* 67: kf10 */ xterm_256color_s_kf10, ++ /* 68: kf2 */ xterm_256color_s_kf2, ++ /* 69: kf3 */ xterm_256color_s_kf3, ++ /* 70: kf4 */ xterm_256color_s_kf4, ++ /* 71: kf5 */ xterm_256color_s_kf5, ++ /* 72: kf6 */ xterm_256color_s_kf6, ++ /* 73: kf7 */ xterm_256color_s_kf7, ++ /* 74: kf8 */ xterm_256color_s_kf8, ++ /* 75: kf9 */ xterm_256color_s_kf9, ++ /* 76: khome */ xterm_256color_s_khome, ++ /* 77: kich1 */ xterm_256color_s_kich1, ++ /* 78: kil1 */ ABSENT_STRING, ++ /* 79: kcub1 */ xterm_256color_s_kcub1, ++ /* 80: kll */ ABSENT_STRING, ++ /* 81: knp */ xterm_256color_s_knp, ++ /* 82: kpp */ xterm_256color_s_kpp, ++ /* 83: kcuf1 */ xterm_256color_s_kcuf1, ++ /* 84: kind */ xterm_256color_s_kind, ++ /* 85: kri */ xterm_256color_s_kri, ++ /* 86: khts */ ABSENT_STRING, ++ /* 87: kcuu1 */ xterm_256color_s_kcuu1, ++ /* 88: rmkx */ xterm_256color_s_rmkx, ++ /* 89: smkx */ xterm_256color_s_smkx, ++ /* 90: lf0 */ ABSENT_STRING, ++ /* 91: lf1 */ ABSENT_STRING, ++ /* 92: lf10 */ ABSENT_STRING, ++ /* 93: lf2 */ ABSENT_STRING, ++ /* 94: lf3 */ ABSENT_STRING, ++ /* 95: lf4 */ ABSENT_STRING, ++ /* 96: lf5 */ ABSENT_STRING, ++ /* 97: lf6 */ ABSENT_STRING, ++ /* 98: lf7 */ ABSENT_STRING, ++ /* 99: lf8 */ ABSENT_STRING, ++ /* 100: lf9 */ ABSENT_STRING, ++ /* 101: rmm */ xterm_256color_s_rmm, ++ /* 102: smm */ xterm_256color_s_smm, ++ /* 103: nel */ ABSENT_STRING, ++ /* 104: pad */ ABSENT_STRING, ++ /* 105: dch */ xterm_256color_s_dch, ++ /* 106: dl */ xterm_256color_s_dl, ++ /* 107: cud */ xterm_256color_s_cud, ++ /* 108: ich */ xterm_256color_s_ich, ++ /* 109: indn */ xterm_256color_s_indn, ++ /* 110: il */ xterm_256color_s_il, ++ /* 111: cub */ xterm_256color_s_cub, ++ /* 112: cuf */ xterm_256color_s_cuf, ++ /* 113: rin */ xterm_256color_s_rin, ++ /* 114: cuu */ xterm_256color_s_cuu, ++ /* 115: pfkey */ ABSENT_STRING, ++ /* 116: pfloc */ ABSENT_STRING, ++ /* 117: pfx */ ABSENT_STRING, ++ /* 118: mc0 */ xterm_256color_s_mc0, ++ /* 119: mc4 */ xterm_256color_s_mc4, ++ /* 120: mc5 */ xterm_256color_s_mc5, ++ /* 121: rep */ xterm_256color_s_rep, ++ /* 122: rs1 */ xterm_256color_s_rs1, ++ /* 123: rs2 */ xterm_256color_s_rs2, ++ /* 124: rs3 */ ABSENT_STRING, ++ /* 125: rf */ ABSENT_STRING, ++ /* 126: rc */ xterm_256color_s_rc, ++ /* 127: vpa */ xterm_256color_s_vpa, ++ /* 128: sc */ xterm_256color_s_sc, ++ /* 129: ind */ xterm_256color_s_ind, ++ /* 130: ri */ xterm_256color_s_ri, ++ /* 131: sgr */ xterm_256color_s_sgr, ++ /* 132: hts */ xterm_256color_s_hts, ++ /* 133: wind */ ABSENT_STRING, ++ /* 134: ht */ xterm_256color_s_ht, ++ /* 135: tsl */ ABSENT_STRING, ++ /* 136: uc */ ABSENT_STRING, ++ /* 137: hu */ ABSENT_STRING, ++ /* 138: iprog */ ABSENT_STRING, ++ /* 139: ka1 */ ABSENT_STRING, ++ /* 140: ka3 */ ABSENT_STRING, ++ /* 141: kb2 */ xterm_256color_s_kb2, ++ /* 142: kc1 */ ABSENT_STRING, ++ /* 143: kc3 */ ABSENT_STRING, ++ /* 144: mc5p */ ABSENT_STRING, ++ /* 145: rmp */ ABSENT_STRING, ++ /* 146: acsc */ xterm_256color_s_acsc, ++ /* 147: pln */ ABSENT_STRING, ++ /* 148: kcbt */ xterm_256color_s_kcbt, ++ /* 149: smxon */ ABSENT_STRING, ++ /* 150: rmxon */ ABSENT_STRING, ++ /* 151: smam */ xterm_256color_s_smam, ++ /* 152: rmam */ xterm_256color_s_rmam, ++ /* 153: xonc */ ABSENT_STRING, ++ /* 154: xoffc */ ABSENT_STRING, ++ /* 155: enacs */ ABSENT_STRING, ++ /* 156: smln */ ABSENT_STRING, ++ /* 157: rmln */ ABSENT_STRING, ++ /* 158: kbeg */ ABSENT_STRING, ++ /* 159: kcan */ ABSENT_STRING, ++ /* 160: kclo */ ABSENT_STRING, ++ /* 161: kcmd */ ABSENT_STRING, ++ /* 162: kcpy */ ABSENT_STRING, ++ /* 163: kcrt */ ABSENT_STRING, ++ /* 164: kend */ xterm_256color_s_kend, ++ /* 165: kent */ xterm_256color_s_kent, ++ /* 166: kext */ ABSENT_STRING, ++ /* 167: kfnd */ ABSENT_STRING, ++ /* 168: khlp */ ABSENT_STRING, ++ /* 169: kmrk */ ABSENT_STRING, ++ /* 170: kmsg */ ABSENT_STRING, ++ /* 171: kmov */ ABSENT_STRING, ++ /* 172: knxt */ ABSENT_STRING, ++ /* 173: kopn */ ABSENT_STRING, ++ /* 174: kopt */ ABSENT_STRING, ++ /* 175: kprv */ ABSENT_STRING, ++ /* 176: kprt */ ABSENT_STRING, ++ /* 177: krdo */ ABSENT_STRING, ++ /* 178: kref */ ABSENT_STRING, ++ /* 179: krfr */ ABSENT_STRING, ++ /* 180: krpl */ ABSENT_STRING, ++ /* 181: krst */ ABSENT_STRING, ++ /* 182: kres */ ABSENT_STRING, ++ /* 183: ksav */ ABSENT_STRING, ++ /* 184: kspd */ ABSENT_STRING, ++ /* 185: kund */ ABSENT_STRING, ++ /* 186: kBEG */ ABSENT_STRING, ++ /* 187: kCAN */ ABSENT_STRING, ++ /* 188: kCMD */ ABSENT_STRING, ++ /* 189: kCPY */ ABSENT_STRING, ++ /* 190: kCRT */ ABSENT_STRING, ++ /* 191: kDC */ xterm_256color_s_kDC, ++ /* 192: kDL */ ABSENT_STRING, ++ /* 193: kslt */ ABSENT_STRING, ++ /* 194: kEND */ xterm_256color_s_kEND, ++ /* 195: kEOL */ ABSENT_STRING, ++ /* 196: kEXT */ ABSENT_STRING, ++ /* 197: kFND */ ABSENT_STRING, ++ /* 198: kHLP */ ABSENT_STRING, ++ /* 199: kHOM */ xterm_256color_s_kHOM, ++ /* 200: kIC */ xterm_256color_s_kIC, ++ /* 201: kLFT */ xterm_256color_s_kLFT, ++ /* 202: kMSG */ ABSENT_STRING, ++ /* 203: kMOV */ ABSENT_STRING, ++ /* 204: kNXT */ xterm_256color_s_kNXT, ++ /* 205: kOPT */ ABSENT_STRING, ++ /* 206: kPRV */ xterm_256color_s_kPRV, ++ /* 207: kPRT */ ABSENT_STRING, ++ /* 208: kRDO */ ABSENT_STRING, ++ /* 209: kRPL */ ABSENT_STRING, ++ /* 210: kRIT */ xterm_256color_s_kRIT, ++ /* 211: kRES */ ABSENT_STRING, ++ /* 212: kSAV */ ABSENT_STRING, ++ /* 213: kSPD */ ABSENT_STRING, ++ /* 214: kUND */ ABSENT_STRING, ++ /* 215: rfi */ ABSENT_STRING, ++ /* 216: kf11 */ xterm_256color_s_kf11, ++ /* 217: kf12 */ xterm_256color_s_kf12, ++ /* 218: kf13 */ xterm_256color_s_kf13, ++ /* 219: kf14 */ xterm_256color_s_kf14, ++ /* 220: kf15 */ xterm_256color_s_kf15, ++ /* 221: kf16 */ xterm_256color_s_kf16, ++ /* 222: kf17 */ xterm_256color_s_kf17, ++ /* 223: kf18 */ xterm_256color_s_kf18, ++ /* 224: kf19 */ xterm_256color_s_kf19, ++ /* 225: kf20 */ xterm_256color_s_kf20, ++ /* 226: kf21 */ xterm_256color_s_kf21, ++ /* 227: kf22 */ xterm_256color_s_kf22, ++ /* 228: kf23 */ xterm_256color_s_kf23, ++ /* 229: kf24 */ xterm_256color_s_kf24, ++ /* 230: kf25 */ xterm_256color_s_kf25, ++ /* 231: kf26 */ xterm_256color_s_kf26, ++ /* 232: kf27 */ xterm_256color_s_kf27, ++ /* 233: kf28 */ xterm_256color_s_kf28, ++ /* 234: kf29 */ xterm_256color_s_kf29, ++ /* 235: kf30 */ xterm_256color_s_kf30, ++ /* 236: kf31 */ xterm_256color_s_kf31, ++ /* 237: kf32 */ xterm_256color_s_kf32, ++ /* 238: kf33 */ xterm_256color_s_kf33, ++ /* 239: kf34 */ xterm_256color_s_kf34, ++ /* 240: kf35 */ xterm_256color_s_kf35, ++ /* 241: kf36 */ xterm_256color_s_kf36, ++ /* 242: kf37 */ xterm_256color_s_kf37, ++ /* 243: kf38 */ xterm_256color_s_kf38, ++ /* 244: kf39 */ xterm_256color_s_kf39, ++ /* 245: kf40 */ xterm_256color_s_kf40, ++ /* 246: kf41 */ xterm_256color_s_kf41, ++ /* 247: kf42 */ xterm_256color_s_kf42, ++ /* 248: kf43 */ xterm_256color_s_kf43, ++ /* 249: kf44 */ xterm_256color_s_kf44, ++ /* 250: kf45 */ xterm_256color_s_kf45, ++ /* 251: kf46 */ xterm_256color_s_kf46, ++ /* 252: kf47 */ xterm_256color_s_kf47, ++ /* 253: kf48 */ xterm_256color_s_kf48, ++ /* 254: kf49 */ xterm_256color_s_kf49, ++ /* 255: kf50 */ xterm_256color_s_kf50, ++ /* 256: kf51 */ xterm_256color_s_kf51, ++ /* 257: kf52 */ xterm_256color_s_kf52, ++ /* 258: kf53 */ xterm_256color_s_kf53, ++ /* 259: kf54 */ xterm_256color_s_kf54, ++ /* 260: kf55 */ xterm_256color_s_kf55, ++ /* 261: kf56 */ xterm_256color_s_kf56, ++ /* 262: kf57 */ xterm_256color_s_kf57, ++ /* 263: kf58 */ xterm_256color_s_kf58, ++ /* 264: kf59 */ xterm_256color_s_kf59, ++ /* 265: kf60 */ xterm_256color_s_kf60, ++ /* 266: kf61 */ xterm_256color_s_kf61, ++ /* 267: kf62 */ xterm_256color_s_kf62, ++ /* 268: kf63 */ xterm_256color_s_kf63, ++ /* 269: el1 */ xterm_256color_s_el1, ++ /* 270: mgc */ ABSENT_STRING, ++ /* 271: smgl */ ABSENT_STRING, ++ /* 272: smgr */ ABSENT_STRING, ++ /* 273: fln */ ABSENT_STRING, ++ /* 274: sclk */ ABSENT_STRING, ++ /* 275: dclk */ ABSENT_STRING, ++ /* 276: rmclk */ ABSENT_STRING, ++ /* 277: cwin */ ABSENT_STRING, ++ /* 278: wingo */ ABSENT_STRING, ++ /* 279: hup */ ABSENT_STRING, ++ /* 280: dial */ ABSENT_STRING, ++ /* 281: qdial */ ABSENT_STRING, ++ /* 282: tone */ ABSENT_STRING, ++ /* 283: pulse */ ABSENT_STRING, ++ /* 284: hook */ ABSENT_STRING, ++ /* 285: pause */ ABSENT_STRING, ++ /* 286: wait */ ABSENT_STRING, ++ /* 287: u0 */ ABSENT_STRING, ++ /* 288: u1 */ ABSENT_STRING, ++ /* 289: u2 */ ABSENT_STRING, ++ /* 290: u3 */ ABSENT_STRING, ++ /* 291: u4 */ ABSENT_STRING, ++ /* 292: u5 */ ABSENT_STRING, ++ /* 293: u6 */ xterm_256color_s_u6, ++ /* 294: u7 */ xterm_256color_s_u7, ++ /* 295: u8 */ xterm_256color_s_u8, ++ /* 296: u9 */ xterm_256color_s_u9, ++ /* 297: op */ xterm_256color_s_op, ++ /* 298: oc */ xterm_256color_s_oc, ++ /* 299: initc */ xterm_256color_s_initc, ++ /* 300: initp */ ABSENT_STRING, ++ /* 301: scp */ ABSENT_STRING, ++ /* 302: setf */ ABSENT_STRING, ++ /* 303: setb */ ABSENT_STRING, ++ /* 304: cpi */ ABSENT_STRING, ++ /* 305: lpi */ ABSENT_STRING, ++ /* 306: chr */ ABSENT_STRING, ++ /* 307: cvr */ ABSENT_STRING, ++ /* 308: defc */ ABSENT_STRING, ++ /* 309: swidm */ ABSENT_STRING, ++ /* 310: sdrfq */ ABSENT_STRING, ++ /* 311: sitm */ xterm_256color_s_sitm, ++ /* 312: slm */ ABSENT_STRING, ++ /* 313: smicm */ ABSENT_STRING, ++ /* 314: snlq */ ABSENT_STRING, ++ /* 315: snrmq */ ABSENT_STRING, ++ /* 316: sshm */ ABSENT_STRING, ++ /* 317: ssubm */ ABSENT_STRING, ++ /* 318: ssupm */ ABSENT_STRING, ++ /* 319: sum */ ABSENT_STRING, ++ /* 320: rwidm */ ABSENT_STRING, ++ /* 321: ritm */ xterm_256color_s_ritm, ++ /* 322: rlm */ ABSENT_STRING, ++ /* 323: rmicm */ ABSENT_STRING, ++ /* 324: rshm */ ABSENT_STRING, ++ /* 325: rsubm */ ABSENT_STRING, ++ /* 326: rsupm */ ABSENT_STRING, ++ /* 327: rum */ ABSENT_STRING, ++ /* 328: mhpa */ ABSENT_STRING, ++ /* 329: mcud1 */ ABSENT_STRING, ++ /* 330: mcub1 */ ABSENT_STRING, ++ /* 331: mcuf1 */ ABSENT_STRING, ++ /* 332: mvpa */ ABSENT_STRING, ++ /* 333: mcuu1 */ ABSENT_STRING, ++ /* 334: porder */ ABSENT_STRING, ++ /* 335: mcud */ ABSENT_STRING, ++ /* 336: mcub */ ABSENT_STRING, ++ /* 337: mcuf */ ABSENT_STRING, ++ /* 338: mcuu */ ABSENT_STRING, ++ /* 339: scs */ ABSENT_STRING, ++ /* 340: smgb */ ABSENT_STRING, ++ /* 341: smgbp */ ABSENT_STRING, ++ /* 342: smglp */ ABSENT_STRING, ++ /* 343: smgrp */ ABSENT_STRING, ++ /* 344: smgt */ ABSENT_STRING, ++ /* 345: smgtp */ ABSENT_STRING, ++ /* 346: sbim */ ABSENT_STRING, ++ /* 347: scsd */ ABSENT_STRING, ++ /* 348: rbim */ ABSENT_STRING, ++ /* 349: rcsd */ ABSENT_STRING, ++ /* 350: subcs */ ABSENT_STRING, ++ /* 351: supcs */ ABSENT_STRING, ++ /* 352: docr */ ABSENT_STRING, ++ /* 353: zerom */ ABSENT_STRING, ++ /* 354: csnm */ ABSENT_STRING, ++ /* 355: kmous */ xterm_256color_s_kmous, ++ /* 356: minfo */ ABSENT_STRING, ++ /* 357: reqmp */ ABSENT_STRING, ++ /* 358: getm */ ABSENT_STRING, ++ /* 359: setaf */ xterm_256color_s_setaf, ++ /* 360: setab */ xterm_256color_s_setab, ++ /* 361: pfxl */ ABSENT_STRING, ++ /* 362: devt */ ABSENT_STRING, ++ /* 363: csin */ ABSENT_STRING, ++ /* 364: s0ds */ ABSENT_STRING, ++ /* 365: s1ds */ ABSENT_STRING, ++ /* 366: s2ds */ ABSENT_STRING, ++ /* 367: s3ds */ ABSENT_STRING, ++ /* 368: smglr */ ABSENT_STRING, ++ /* 369: smgtb */ ABSENT_STRING, ++ /* 370: birep */ ABSENT_STRING, ++ /* 371: binel */ ABSENT_STRING, ++ /* 372: bicr */ ABSENT_STRING, ++ /* 373: colornm */ ABSENT_STRING, ++ /* 374: defbi */ ABSENT_STRING, ++ /* 375: endbi */ ABSENT_STRING, ++ /* 376: setcolor */ ABSENT_STRING, ++ /* 377: slines */ ABSENT_STRING, ++ /* 378: dispc */ ABSENT_STRING, ++ /* 379: smpch */ ABSENT_STRING, ++ /* 380: rmpch */ ABSENT_STRING, ++ /* 381: smsc */ ABSENT_STRING, ++ /* 382: rmsc */ ABSENT_STRING, ++ /* 383: pctrm */ ABSENT_STRING, ++ /* 384: scesc */ ABSENT_STRING, ++ /* 385: scesa */ ABSENT_STRING, ++ /* 386: ehhlm */ ABSENT_STRING, ++ /* 387: elhlm */ ABSENT_STRING, ++ /* 388: elohlm */ ABSENT_STRING, ++ /* 389: erhlm */ ABSENT_STRING, ++ /* 390: ethlm */ ABSENT_STRING, ++ /* 391: evhlm */ ABSENT_STRING, ++ /* 392: sgr1 */ ABSENT_STRING, ++ /* 393: slength */ ABSENT_STRING, ++ /* 394: OTi2 */ ABSENT_STRING, ++ /* 395: OTrs */ ABSENT_STRING, ++ /* 396: OTnl */ ABSENT_STRING, ++ /* 397: OTbc */ ABSENT_STRING, ++ /* 398: OTko */ ABSENT_STRING, ++ /* 399: OTma */ ABSENT_STRING, ++ /* 400: OTG2 */ ABSENT_STRING, ++ /* 401: OTG3 */ ABSENT_STRING, ++ /* 402: OTG1 */ ABSENT_STRING, ++ /* 403: OTG4 */ ABSENT_STRING, ++ /* 404: OTGR */ ABSENT_STRING, ++ /* 405: OTGL */ ABSENT_STRING, ++ /* 406: OTGU */ ABSENT_STRING, ++ /* 407: OTGD */ ABSENT_STRING, ++ /* 408: OTGH */ ABSENT_STRING, ++ /* 409: OTGV */ ABSENT_STRING, ++ /* 410: OTGC */ ABSENT_STRING, ++ /* 411: meml */ xterm_256color_s_meml, ++ /* 412: memu */ xterm_256color_s_memu, ++ /* 413: box1 */ ABSENT_STRING, ++}; ++/* screen */ ++ ++static char screen_alias_data[] = "screen|VT 100/ANSI X3.64 virtual terminal"; ++ ++static char screen_s_cbt [] = "\033[Z"; ++static char screen_s_bel [] = "\007"; ++static char screen_s_cr [] = "\015"; ++static char screen_s_csr [] = "\033[%i%p1%d;%p2%dr"; ++static char screen_s_tbc [] = "\033[3g"; ++static char screen_s_clear [] = "\033[H\033[J"; ++static char screen_s_el [] = "\033[K"; ++static char screen_s_ed [] = "\033[J"; ++static char screen_s_hpa [] = "\033[%i%p1%dG"; ++static char screen_s_cup [] = "\033[%i%p1%d;%p2%dH"; ++static char screen_s_cud1 [] = "\012"; ++static char screen_s_home [] = "\033[H"; ++static char screen_s_civis [] = "\033[?25l"; ++static char screen_s_cub1 [] = "\010"; ++static char screen_s_cnorm [] = "\033[34h\033[?25h"; ++static char screen_s_cuf1 [] = "\033[C"; ++static char screen_s_cuu1 [] = "\033M"; ++static char screen_s_cvvis [] = "\033[34l"; ++static char screen_s_dch1 [] = "\033[P"; ++static char screen_s_dl1 [] = "\033[M"; ++static char screen_s_smacs [] = "\016"; ++static char screen_s_blink [] = "\033[5m"; ++static char screen_s_bold [] = "\033[1m"; ++static char screen_s_smcup [] = "\033[?1049h"; ++static char screen_s_dim [] = "\033[2m"; ++static char screen_s_smir [] = "\033[4h"; ++static char screen_s_rev [] = "\033[7m"; ++static char screen_s_smso [] = "\033[3m"; ++static char screen_s_smul [] = "\033[4m"; ++static char screen_s_rmacs [] = "\017"; ++static char screen_s_sgr0 [] = "\033[m\017"; ++static char screen_s_rmcup [] = "\033[?1049l"; ++static char screen_s_rmir [] = "\033[4l"; ++static char screen_s_rmso [] = "\033[23m"; ++static char screen_s_rmul [] = "\033[24m"; ++static char screen_s_flash [] = "\033g"; ++static char screen_s_is2 [] = "\033)0"; ++static char screen_s_il1 [] = "\033[L"; ++static char screen_s_kbs [] = "\010"; ++static char screen_s_kdch1 [] = "\033[3~"; ++static char screen_s_kcud1 [] = "\033OB"; ++static char screen_s_kf1 [] = "\033OP"; ++static char screen_s_kf10 [] = "\033[21~"; ++static char screen_s_kf2 [] = "\033OQ"; ++static char screen_s_kf3 [] = "\033OR"; ++static char screen_s_kf4 [] = "\033OS"; ++static char screen_s_kf5 [] = "\033[15~"; ++static char screen_s_kf6 [] = "\033[17~"; ++static char screen_s_kf7 [] = "\033[18~"; ++static char screen_s_kf8 [] = "\033[19~"; ++static char screen_s_kf9 [] = "\033[20~"; ++static char screen_s_khome [] = "\033[1~"; ++static char screen_s_kich1 [] = "\033[2~"; ++static char screen_s_kcub1 [] = "\033OD"; ++static char screen_s_knp [] = "\033[6~"; ++static char screen_s_kpp [] = "\033[5~"; ++static char screen_s_kcuf1 [] = "\033OC"; ++static char screen_s_kcuu1 [] = "\033OA"; ++static char screen_s_rmkx [] = "\033[?1l\033>"; ++static char screen_s_smkx [] = "\033[?1h\033="; ++static char screen_s_nel [] = "\033E"; ++static char screen_s_dch [] = "\033[%p1%dP"; ++static char screen_s_dl [] = "\033[%p1%dM"; ++static char screen_s_cud [] = "\033[%p1%dB"; ++static char screen_s_ich [] = "\033[%p1%d@"; ++static char screen_s_indn [] = "\033[%p1%dS"; ++static char screen_s_il [] = "\033[%p1%dL"; ++static char screen_s_cub [] = "\033[%p1%dD"; ++static char screen_s_cuf [] = "\033[%p1%dC"; ++static char screen_s_cuu [] = "\033[%p1%dA"; ++static char screen_s_rs2 [] = "\033c\033[?1000l\033[?25h"; ++static char screen_s_rc [] = "\0338"; ++static char screen_s_vpa [] = "\033[%i%p1%dd"; ++static char screen_s_sc [] = "\0337"; ++static char screen_s_ind [] = "\012"; ++static char screen_s_ri [] = "\033M"; ++static char screen_s_sgr [] = "\033[0%?%p6%t;1%;%?%p1%t;3%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p5%t;2%;m%?%p9%t\016%e\017%;"; ++static char screen_s_hts [] = "\033H"; ++static char screen_s_ht [] = "\011"; ++static char screen_s_acsc [] = "++,,--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~"; ++static char screen_s_kcbt [] = "\033[Z"; ++static char screen_s_enacs [] = "\033(B\033)0"; ++static char screen_s_kend [] = "\033[4~"; ++static char screen_s_kf11 [] = "\033[23~"; ++static char screen_s_kf12 [] = "\033[24~"; ++static char screen_s_el1 [] = "\033[1K"; ++static char screen_s_op [] = "\033[39;49m"; ++static char screen_s_kmous [] = "\033[M"; ++static char screen_s_setaf [] = "\033[3%p1%dm"; ++static char screen_s_setab [] = "\033[4%p1%dm"; ++ ++static char screen_bool_data[] = { ++ /* 0: bw */ FALSE, ++ /* 1: am */ TRUE, ++ /* 2: xsb */ FALSE, ++ /* 3: xhp */ FALSE, ++ /* 4: xenl */ TRUE, ++ /* 5: eo */ FALSE, ++ /* 6: gn */ FALSE, ++ /* 7: hc */ FALSE, ++ /* 8: km */ TRUE, ++ /* 9: hs */ FALSE, ++ /* 10: in */ FALSE, ++ /* 11: da */ FALSE, ++ /* 12: db */ FALSE, ++ /* 13: mir */ TRUE, ++ /* 14: msgr */ TRUE, ++ /* 15: os */ FALSE, ++ /* 16: eslok */ FALSE, ++ /* 17: xt */ FALSE, ++ /* 18: hz */ FALSE, ++ /* 19: ul */ FALSE, ++ /* 20: xon */ FALSE, ++ /* 21: nxon */ FALSE, ++ /* 22: mc5i */ FALSE, ++ /* 23: chts */ FALSE, ++ /* 24: nrrmc */ FALSE, ++ /* 25: npc */ FALSE, ++ /* 26: ndscr */ FALSE, ++ /* 27: ccc */ FALSE, ++ /* 28: bce */ FALSE, ++ /* 29: hls */ FALSE, ++ /* 30: xhpa */ FALSE, ++ /* 31: crxm */ FALSE, ++ /* 32: daisy */ FALSE, ++ /* 33: xvpa */ FALSE, ++ /* 34: sam */ FALSE, ++ /* 35: cpix */ FALSE, ++ /* 36: lpix */ FALSE, ++ /* 37: OTbs */ TRUE, ++ /* 38: OTns */ FALSE, ++ /* 39: OTnc */ FALSE, ++ /* 40: OTMT */ FALSE, ++ /* 41: OTNL */ FALSE, ++ /* 42: OTpt */ TRUE, ++ /* 43: OTxr */ FALSE, ++}; ++static NCURSES_INT2 screen_number_data[] = { ++ /* 0: cols */ 80, ++ /* 1: it */ 8, ++ /* 2: lines */ 24, ++ /* 3: lm */ ABSENT_NUMERIC, ++ /* 4: xmc */ ABSENT_NUMERIC, ++ /* 5: pb */ ABSENT_NUMERIC, ++ /* 6: vt */ ABSENT_NUMERIC, ++ /* 7: wsl */ ABSENT_NUMERIC, ++ /* 8: nlab */ ABSENT_NUMERIC, ++ /* 9: lh */ ABSENT_NUMERIC, ++ /* 10: lw */ ABSENT_NUMERIC, ++ /* 11: ma */ ABSENT_NUMERIC, ++ /* 12: wnum */ ABSENT_NUMERIC, ++ /* 13: colors */ 8, ++ /* 14: pairs */ 64, ++ /* 15: ncv */ CANCELLED_NUMERIC, ++ /* 16: bufsz */ ABSENT_NUMERIC, ++ /* 17: spinv */ ABSENT_NUMERIC, ++ /* 18: spinh */ ABSENT_NUMERIC, ++ /* 19: maddr */ ABSENT_NUMERIC, ++ /* 20: mjump */ ABSENT_NUMERIC, ++ /* 21: mcs */ ABSENT_NUMERIC, ++ /* 22: mls */ ABSENT_NUMERIC, ++ /* 23: npins */ ABSENT_NUMERIC, ++ /* 24: orc */ ABSENT_NUMERIC, ++ /* 25: orl */ ABSENT_NUMERIC, ++ /* 26: orhi */ ABSENT_NUMERIC, ++ /* 27: orvi */ ABSENT_NUMERIC, ++ /* 28: cps */ ABSENT_NUMERIC, ++ /* 29: widcs */ ABSENT_NUMERIC, ++ /* 30: btns */ ABSENT_NUMERIC, ++ /* 31: bitwin */ ABSENT_NUMERIC, ++ /* 32: bitype */ ABSENT_NUMERIC, ++ /* 33: OTug */ ABSENT_NUMERIC, ++ /* 34: OTdC */ ABSENT_NUMERIC, ++ /* 35: OTdN */ ABSENT_NUMERIC, ++ /* 36: OTdB */ ABSENT_NUMERIC, ++ /* 37: OTdT */ ABSENT_NUMERIC, ++ /* 38: OTkn */ ABSENT_NUMERIC, ++}; ++static char * screen_string_data[] = { ++ /* 0: cbt */ screen_s_cbt, ++ /* 1: bel */ screen_s_bel, ++ /* 2: cr */ screen_s_cr, ++ /* 3: csr */ screen_s_csr, ++ /* 4: tbc */ screen_s_tbc, ++ /* 5: clear */ screen_s_clear, ++ /* 6: el */ screen_s_el, ++ /* 7: ed */ screen_s_ed, ++ /* 8: hpa */ screen_s_hpa, ++ /* 9: cmdch */ ABSENT_STRING, ++ /* 10: cup */ screen_s_cup, ++ /* 11: cud1 */ screen_s_cud1, ++ /* 12: home */ screen_s_home, ++ /* 13: civis */ screen_s_civis, ++ /* 14: cub1 */ screen_s_cub1, ++ /* 15: mrcup */ ABSENT_STRING, ++ /* 16: cnorm */ screen_s_cnorm, ++ /* 17: cuf1 */ screen_s_cuf1, ++ /* 18: ll */ ABSENT_STRING, ++ /* 19: cuu1 */ screen_s_cuu1, ++ /* 20: cvvis */ screen_s_cvvis, ++ /* 21: dch1 */ screen_s_dch1, ++ /* 22: dl1 */ screen_s_dl1, ++ /* 23: dsl */ ABSENT_STRING, ++ /* 24: hd */ ABSENT_STRING, ++ /* 25: smacs */ screen_s_smacs, ++ /* 26: blink */ screen_s_blink, ++ /* 27: bold */ screen_s_bold, ++ /* 28: smcup */ screen_s_smcup, ++ /* 29: smdc */ ABSENT_STRING, ++ /* 30: dim */ screen_s_dim, ++ /* 31: smir */ screen_s_smir, ++ /* 32: invis */ ABSENT_STRING, ++ /* 33: prot */ ABSENT_STRING, ++ /* 34: rev */ screen_s_rev, ++ /* 35: smso */ screen_s_smso, ++ /* 36: smul */ screen_s_smul, ++ /* 37: ech */ ABSENT_STRING, ++ /* 38: rmacs */ screen_s_rmacs, ++ /* 39: sgr0 */ screen_s_sgr0, ++ /* 40: rmcup */ screen_s_rmcup, ++ /* 41: rmdc */ ABSENT_STRING, ++ /* 42: rmir */ screen_s_rmir, ++ /* 43: rmso */ screen_s_rmso, ++ /* 44: rmul */ screen_s_rmul, ++ /* 45: flash */ screen_s_flash, ++ /* 46: ff */ ABSENT_STRING, ++ /* 47: fsl */ ABSENT_STRING, ++ /* 48: is1 */ ABSENT_STRING, ++ /* 49: is2 */ screen_s_is2, ++ /* 50: is3 */ ABSENT_STRING, ++ /* 51: if */ ABSENT_STRING, ++ /* 52: ich1 */ ABSENT_STRING, ++ /* 53: il1 */ screen_s_il1, ++ /* 54: ip */ ABSENT_STRING, ++ /* 55: kbs */ screen_s_kbs, ++ /* 56: ktbc */ ABSENT_STRING, ++ /* 57: kclr */ ABSENT_STRING, ++ /* 58: kctab */ ABSENT_STRING, ++ /* 59: kdch1 */ screen_s_kdch1, ++ /* 60: kdl1 */ ABSENT_STRING, ++ /* 61: kcud1 */ screen_s_kcud1, ++ /* 62: krmir */ ABSENT_STRING, ++ /* 63: kel */ ABSENT_STRING, ++ /* 64: ked */ ABSENT_STRING, ++ /* 65: kf0 */ ABSENT_STRING, ++ /* 66: kf1 */ screen_s_kf1, ++ /* 67: kf10 */ screen_s_kf10, ++ /* 68: kf2 */ screen_s_kf2, ++ /* 69: kf3 */ screen_s_kf3, ++ /* 70: kf4 */ screen_s_kf4, ++ /* 71: kf5 */ screen_s_kf5, ++ /* 72: kf6 */ screen_s_kf6, ++ /* 73: kf7 */ screen_s_kf7, ++ /* 74: kf8 */ screen_s_kf8, ++ /* 75: kf9 */ screen_s_kf9, ++ /* 76: khome */ screen_s_khome, ++ /* 77: kich1 */ screen_s_kich1, ++ /* 78: kil1 */ ABSENT_STRING, ++ /* 79: kcub1 */ screen_s_kcub1, ++ /* 80: kll */ ABSENT_STRING, ++ /* 81: knp */ screen_s_knp, ++ /* 82: kpp */ screen_s_kpp, ++ /* 83: kcuf1 */ screen_s_kcuf1, ++ /* 84: kind */ ABSENT_STRING, ++ /* 85: kri */ ABSENT_STRING, ++ /* 86: khts */ ABSENT_STRING, ++ /* 87: kcuu1 */ screen_s_kcuu1, ++ /* 88: rmkx */ screen_s_rmkx, ++ /* 89: smkx */ screen_s_smkx, ++ /* 90: lf0 */ ABSENT_STRING, ++ /* 91: lf1 */ ABSENT_STRING, ++ /* 92: lf10 */ ABSENT_STRING, ++ /* 93: lf2 */ ABSENT_STRING, ++ /* 94: lf3 */ ABSENT_STRING, ++ /* 95: lf4 */ ABSENT_STRING, ++ /* 96: lf5 */ ABSENT_STRING, ++ /* 97: lf6 */ ABSENT_STRING, ++ /* 98: lf7 */ ABSENT_STRING, ++ /* 99: lf8 */ ABSENT_STRING, ++ /* 100: lf9 */ ABSENT_STRING, ++ /* 101: rmm */ ABSENT_STRING, ++ /* 102: smm */ ABSENT_STRING, ++ /* 103: nel */ screen_s_nel, ++ /* 104: pad */ ABSENT_STRING, ++ /* 105: dch */ screen_s_dch, ++ /* 106: dl */ screen_s_dl, ++ /* 107: cud */ screen_s_cud, ++ /* 108: ich */ screen_s_ich, ++ /* 109: indn */ screen_s_indn, ++ /* 110: il */ screen_s_il, ++ /* 111: cub */ screen_s_cub, ++ /* 112: cuf */ screen_s_cuf, ++ /* 113: rin */ ABSENT_STRING, ++ /* 114: cuu */ screen_s_cuu, ++ /* 115: pfkey */ ABSENT_STRING, ++ /* 116: pfloc */ ABSENT_STRING, ++ /* 117: pfx */ ABSENT_STRING, ++ /* 118: mc0 */ ABSENT_STRING, ++ /* 119: mc4 */ ABSENT_STRING, ++ /* 120: mc5 */ ABSENT_STRING, ++ /* 121: rep */ ABSENT_STRING, ++ /* 122: rs1 */ ABSENT_STRING, ++ /* 123: rs2 */ screen_s_rs2, ++ /* 124: rs3 */ ABSENT_STRING, ++ /* 125: rf */ ABSENT_STRING, ++ /* 126: rc */ screen_s_rc, ++ /* 127: vpa */ screen_s_vpa, ++ /* 128: sc */ screen_s_sc, ++ /* 129: ind */ screen_s_ind, ++ /* 130: ri */ screen_s_ri, ++ /* 131: sgr */ screen_s_sgr, ++ /* 132: hts */ screen_s_hts, ++ /* 133: wind */ ABSENT_STRING, ++ /* 134: ht */ screen_s_ht, ++ /* 135: tsl */ ABSENT_STRING, ++ /* 136: uc */ ABSENT_STRING, ++ /* 137: hu */ ABSENT_STRING, ++ /* 138: iprog */ ABSENT_STRING, ++ /* 139: ka1 */ ABSENT_STRING, ++ /* 140: ka3 */ ABSENT_STRING, ++ /* 141: kb2 */ ABSENT_STRING, ++ /* 142: kc1 */ ABSENT_STRING, ++ /* 143: kc3 */ ABSENT_STRING, ++ /* 144: mc5p */ ABSENT_STRING, ++ /* 145: rmp */ ABSENT_STRING, ++ /* 146: acsc */ screen_s_acsc, ++ /* 147: pln */ ABSENT_STRING, ++ /* 148: kcbt */ screen_s_kcbt, ++ /* 149: smxon */ ABSENT_STRING, ++ /* 150: rmxon */ ABSENT_STRING, ++ /* 151: smam */ ABSENT_STRING, ++ /* 152: rmam */ ABSENT_STRING, ++ /* 153: xonc */ ABSENT_STRING, ++ /* 154: xoffc */ ABSENT_STRING, ++ /* 155: enacs */ screen_s_enacs, ++ /* 156: smln */ ABSENT_STRING, ++ /* 157: rmln */ ABSENT_STRING, ++ /* 158: kbeg */ ABSENT_STRING, ++ /* 159: kcan */ ABSENT_STRING, ++ /* 160: kclo */ ABSENT_STRING, ++ /* 161: kcmd */ ABSENT_STRING, ++ /* 162: kcpy */ ABSENT_STRING, ++ /* 163: kcrt */ ABSENT_STRING, ++ /* 164: kend */ screen_s_kend, ++ /* 165: kent */ ABSENT_STRING, ++ /* 166: kext */ ABSENT_STRING, ++ /* 167: kfnd */ ABSENT_STRING, ++ /* 168: khlp */ ABSENT_STRING, ++ /* 169: kmrk */ ABSENT_STRING, ++ /* 170: kmsg */ ABSENT_STRING, ++ /* 171: kmov */ ABSENT_STRING, ++ /* 172: knxt */ ABSENT_STRING, ++ /* 173: kopn */ ABSENT_STRING, ++ /* 174: kopt */ ABSENT_STRING, ++ /* 175: kprv */ ABSENT_STRING, ++ /* 176: kprt */ ABSENT_STRING, ++ /* 177: krdo */ ABSENT_STRING, ++ /* 178: kref */ ABSENT_STRING, ++ /* 179: krfr */ ABSENT_STRING, ++ /* 180: krpl */ ABSENT_STRING, ++ /* 181: krst */ ABSENT_STRING, ++ /* 182: kres */ ABSENT_STRING, ++ /* 183: ksav */ ABSENT_STRING, ++ /* 184: kspd */ ABSENT_STRING, ++ /* 185: kund */ ABSENT_STRING, ++ /* 186: kBEG */ ABSENT_STRING, ++ /* 187: kCAN */ ABSENT_STRING, ++ /* 188: kCMD */ ABSENT_STRING, ++ /* 189: kCPY */ ABSENT_STRING, ++ /* 190: kCRT */ ABSENT_STRING, ++ /* 191: kDC */ ABSENT_STRING, ++ /* 192: kDL */ ABSENT_STRING, ++ /* 193: kslt */ ABSENT_STRING, ++ /* 194: kEND */ ABSENT_STRING, ++ /* 195: kEOL */ ABSENT_STRING, ++ /* 196: kEXT */ ABSENT_STRING, ++ /* 197: kFND */ ABSENT_STRING, ++ /* 198: kHLP */ ABSENT_STRING, ++ /* 199: kHOM */ ABSENT_STRING, ++ /* 200: kIC */ ABSENT_STRING, ++ /* 201: kLFT */ ABSENT_STRING, ++ /* 202: kMSG */ ABSENT_STRING, ++ /* 203: kMOV */ ABSENT_STRING, ++ /* 204: kNXT */ ABSENT_STRING, ++ /* 205: kOPT */ ABSENT_STRING, ++ /* 206: kPRV */ ABSENT_STRING, ++ /* 207: kPRT */ ABSENT_STRING, ++ /* 208: kRDO */ ABSENT_STRING, ++ /* 209: kRPL */ ABSENT_STRING, ++ /* 210: kRIT */ ABSENT_STRING, ++ /* 211: kRES */ ABSENT_STRING, ++ /* 212: kSAV */ ABSENT_STRING, ++ /* 213: kSPD */ ABSENT_STRING, ++ /* 214: kUND */ ABSENT_STRING, ++ /* 215: rfi */ ABSENT_STRING, ++ /* 216: kf11 */ screen_s_kf11, ++ /* 217: kf12 */ screen_s_kf12, ++ /* 218: kf13 */ ABSENT_STRING, ++ /* 219: kf14 */ ABSENT_STRING, ++ /* 220: kf15 */ ABSENT_STRING, ++ /* 221: kf16 */ ABSENT_STRING, ++ /* 222: kf17 */ ABSENT_STRING, ++ /* 223: kf18 */ ABSENT_STRING, ++ /* 224: kf19 */ ABSENT_STRING, ++ /* 225: kf20 */ ABSENT_STRING, ++ /* 226: kf21 */ ABSENT_STRING, ++ /* 227: kf22 */ ABSENT_STRING, ++ /* 228: kf23 */ ABSENT_STRING, ++ /* 229: kf24 */ ABSENT_STRING, ++ /* 230: kf25 */ ABSENT_STRING, ++ /* 231: kf26 */ ABSENT_STRING, ++ /* 232: kf27 */ ABSENT_STRING, ++ /* 233: kf28 */ ABSENT_STRING, ++ /* 234: kf29 */ ABSENT_STRING, ++ /* 235: kf30 */ ABSENT_STRING, ++ /* 236: kf31 */ ABSENT_STRING, ++ /* 237: kf32 */ ABSENT_STRING, ++ /* 238: kf33 */ ABSENT_STRING, ++ /* 239: kf34 */ ABSENT_STRING, ++ /* 240: kf35 */ ABSENT_STRING, ++ /* 241: kf36 */ ABSENT_STRING, ++ /* 242: kf37 */ ABSENT_STRING, ++ /* 243: kf38 */ ABSENT_STRING, ++ /* 244: kf39 */ ABSENT_STRING, ++ /* 245: kf40 */ ABSENT_STRING, ++ /* 246: kf41 */ ABSENT_STRING, ++ /* 247: kf42 */ ABSENT_STRING, ++ /* 248: kf43 */ ABSENT_STRING, ++ /* 249: kf44 */ ABSENT_STRING, ++ /* 250: kf45 */ ABSENT_STRING, ++ /* 251: kf46 */ ABSENT_STRING, ++ /* 252: kf47 */ ABSENT_STRING, ++ /* 253: kf48 */ ABSENT_STRING, ++ /* 254: kf49 */ ABSENT_STRING, ++ /* 255: kf50 */ ABSENT_STRING, ++ /* 256: kf51 */ ABSENT_STRING, ++ /* 257: kf52 */ ABSENT_STRING, ++ /* 258: kf53 */ ABSENT_STRING, ++ /* 259: kf54 */ ABSENT_STRING, ++ /* 260: kf55 */ ABSENT_STRING, ++ /* 261: kf56 */ ABSENT_STRING, ++ /* 262: kf57 */ ABSENT_STRING, ++ /* 263: kf58 */ ABSENT_STRING, ++ /* 264: kf59 */ ABSENT_STRING, ++ /* 265: kf60 */ ABSENT_STRING, ++ /* 266: kf61 */ ABSENT_STRING, ++ /* 267: kf62 */ ABSENT_STRING, ++ /* 268: kf63 */ ABSENT_STRING, ++ /* 269: el1 */ screen_s_el1, ++ /* 270: mgc */ ABSENT_STRING, ++ /* 271: smgl */ ABSENT_STRING, ++ /* 272: smgr */ ABSENT_STRING, ++ /* 273: fln */ ABSENT_STRING, ++ /* 274: sclk */ ABSENT_STRING, ++ /* 275: dclk */ ABSENT_STRING, ++ /* 276: rmclk */ ABSENT_STRING, ++ /* 277: cwin */ ABSENT_STRING, ++ /* 278: wingo */ ABSENT_STRING, ++ /* 279: hup */ ABSENT_STRING, ++ /* 280: dial */ ABSENT_STRING, ++ /* 281: qdial */ ABSENT_STRING, ++ /* 282: tone */ ABSENT_STRING, ++ /* 283: pulse */ ABSENT_STRING, ++ /* 284: hook */ ABSENT_STRING, ++ /* 285: pause */ ABSENT_STRING, ++ /* 286: wait */ ABSENT_STRING, ++ /* 287: u0 */ ABSENT_STRING, ++ /* 288: u1 */ ABSENT_STRING, ++ /* 289: u2 */ ABSENT_STRING, ++ /* 290: u3 */ ABSENT_STRING, ++ /* 291: u4 */ ABSENT_STRING, ++ /* 292: u5 */ ABSENT_STRING, ++ /* 293: u6 */ ABSENT_STRING, ++ /* 294: u7 */ ABSENT_STRING, ++ /* 295: u8 */ ABSENT_STRING, ++ /* 296: u9 */ ABSENT_STRING, ++ /* 297: op */ screen_s_op, ++ /* 298: oc */ ABSENT_STRING, ++ /* 299: initc */ ABSENT_STRING, ++ /* 300: initp */ ABSENT_STRING, ++ /* 301: scp */ ABSENT_STRING, ++ /* 302: setf */ ABSENT_STRING, ++ /* 303: setb */ ABSENT_STRING, ++ /* 304: cpi */ ABSENT_STRING, ++ /* 305: lpi */ ABSENT_STRING, ++ /* 306: chr */ ABSENT_STRING, ++ /* 307: cvr */ ABSENT_STRING, ++ /* 308: defc */ ABSENT_STRING, ++ /* 309: swidm */ ABSENT_STRING, ++ /* 310: sdrfq */ ABSENT_STRING, ++ /* 311: sitm */ ABSENT_STRING, ++ /* 312: slm */ ABSENT_STRING, ++ /* 313: smicm */ ABSENT_STRING, ++ /* 314: snlq */ ABSENT_STRING, ++ /* 315: snrmq */ ABSENT_STRING, ++ /* 316: sshm */ ABSENT_STRING, ++ /* 317: ssubm */ ABSENT_STRING, ++ /* 318: ssupm */ ABSENT_STRING, ++ /* 319: sum */ ABSENT_STRING, ++ /* 320: rwidm */ ABSENT_STRING, ++ /* 321: ritm */ ABSENT_STRING, ++ /* 322: rlm */ ABSENT_STRING, ++ /* 323: rmicm */ ABSENT_STRING, ++ /* 324: rshm */ ABSENT_STRING, ++ /* 325: rsubm */ ABSENT_STRING, ++ /* 326: rsupm */ ABSENT_STRING, ++ /* 327: rum */ ABSENT_STRING, ++ /* 328: mhpa */ ABSENT_STRING, ++ /* 329: mcud1 */ ABSENT_STRING, ++ /* 330: mcub1 */ ABSENT_STRING, ++ /* 331: mcuf1 */ ABSENT_STRING, ++ /* 332: mvpa */ ABSENT_STRING, ++ /* 333: mcuu1 */ ABSENT_STRING, ++ /* 334: porder */ ABSENT_STRING, ++ /* 335: mcud */ ABSENT_STRING, ++ /* 336: mcub */ ABSENT_STRING, ++ /* 337: mcuf */ ABSENT_STRING, ++ /* 338: mcuu */ ABSENT_STRING, ++ /* 339: scs */ ABSENT_STRING, ++ /* 340: smgb */ ABSENT_STRING, ++ /* 341: smgbp */ ABSENT_STRING, ++ /* 342: smglp */ ABSENT_STRING, ++ /* 343: smgrp */ ABSENT_STRING, ++ /* 344: smgt */ ABSENT_STRING, ++ /* 345: smgtp */ ABSENT_STRING, ++ /* 346: sbim */ ABSENT_STRING, ++ /* 347: scsd */ ABSENT_STRING, ++ /* 348: rbim */ ABSENT_STRING, ++ /* 349: rcsd */ ABSENT_STRING, ++ /* 350: subcs */ ABSENT_STRING, ++ /* 351: supcs */ ABSENT_STRING, ++ /* 352: docr */ ABSENT_STRING, ++ /* 353: zerom */ ABSENT_STRING, ++ /* 354: csnm */ ABSENT_STRING, ++ /* 355: kmous */ screen_s_kmous, ++ /* 356: minfo */ ABSENT_STRING, ++ /* 357: reqmp */ ABSENT_STRING, ++ /* 358: getm */ ABSENT_STRING, ++ /* 359: setaf */ screen_s_setaf, ++ /* 360: setab */ screen_s_setab, ++ /* 361: pfxl */ ABSENT_STRING, ++ /* 362: devt */ ABSENT_STRING, ++ /* 363: csin */ ABSENT_STRING, ++ /* 364: s0ds */ ABSENT_STRING, ++ /* 365: s1ds */ ABSENT_STRING, ++ /* 366: s2ds */ ABSENT_STRING, ++ /* 367: s3ds */ ABSENT_STRING, ++ /* 368: smglr */ ABSENT_STRING, ++ /* 369: smgtb */ ABSENT_STRING, ++ /* 370: birep */ ABSENT_STRING, ++ /* 371: binel */ ABSENT_STRING, ++ /* 372: bicr */ ABSENT_STRING, ++ /* 373: colornm */ ABSENT_STRING, ++ /* 374: defbi */ ABSENT_STRING, ++ /* 375: endbi */ ABSENT_STRING, ++ /* 376: setcolor */ ABSENT_STRING, ++ /* 377: slines */ ABSENT_STRING, ++ /* 378: dispc */ ABSENT_STRING, ++ /* 379: smpch */ ABSENT_STRING, ++ /* 380: rmpch */ ABSENT_STRING, ++ /* 381: smsc */ ABSENT_STRING, ++ /* 382: rmsc */ ABSENT_STRING, ++ /* 383: pctrm */ ABSENT_STRING, ++ /* 384: scesc */ ABSENT_STRING, ++ /* 385: scesa */ ABSENT_STRING, ++ /* 386: ehhlm */ ABSENT_STRING, ++ /* 387: elhlm */ ABSENT_STRING, ++ /* 388: elohlm */ ABSENT_STRING, ++ /* 389: erhlm */ ABSENT_STRING, ++ /* 390: ethlm */ ABSENT_STRING, ++ /* 391: evhlm */ ABSENT_STRING, ++ /* 392: sgr1 */ ABSENT_STRING, ++ /* 393: slength */ ABSENT_STRING, ++ /* 394: OTi2 */ ABSENT_STRING, ++ /* 395: OTrs */ ABSENT_STRING, ++ /* 396: OTnl */ ABSENT_STRING, ++ /* 397: OTbc */ ABSENT_STRING, ++ /* 398: OTko */ ABSENT_STRING, ++ /* 399: OTma */ ABSENT_STRING, ++ /* 400: OTG2 */ ABSENT_STRING, ++ /* 401: OTG3 */ ABSENT_STRING, ++ /* 402: OTG1 */ ABSENT_STRING, ++ /* 403: OTG4 */ ABSENT_STRING, ++ /* 404: OTGR */ ABSENT_STRING, ++ /* 405: OTGL */ ABSENT_STRING, ++ /* 406: OTGU */ ABSENT_STRING, ++ /* 407: OTGD */ ABSENT_STRING, ++ /* 408: OTGH */ ABSENT_STRING, ++ /* 409: OTGV */ ABSENT_STRING, ++ /* 410: OTGC */ ABSENT_STRING, ++ /* 411: meml */ ABSENT_STRING, ++ /* 412: memu */ ABSENT_STRING, ++ /* 413: box1 */ ABSENT_STRING, ++}; ++/* screen.linux */ ++ ++static char screen_linux_alias_data[] = "screen.linux|screen in linux console"; ++ ++static char screen_linux_s_cbt [] = "\033[Z"; ++static char screen_linux_s_bel [] = "\007"; ++static char screen_linux_s_cr [] = "\015"; ++static char screen_linux_s_csr [] = "\033[%i%p1%d;%p2%dr"; ++static char screen_linux_s_tbc [] = "\033[3g"; ++static char screen_linux_s_clear[] = "\033[H\033[J"; ++static char screen_linux_s_el [] = "\033[K"; ++static char screen_linux_s_ed [] = "\033[J"; ++static char screen_linux_s_hpa [] = "\033[%i%p1%dG"; ++static char screen_linux_s_cup [] = "\033[%i%p1%d;%p2%dH"; ++static char screen_linux_s_cud1 [] = "\012"; ++static char screen_linux_s_home [] = "\033[H"; ++static char screen_linux_s_civis[] = "\033[?25l"; ++static char screen_linux_s_cub1 [] = "\010"; ++static char screen_linux_s_cnorm[] = "\033[34h\033[?25h"; ++static char screen_linux_s_cuf1 [] = "\033[C"; ++static char screen_linux_s_cuu1 [] = "\033M"; ++static char screen_linux_s_cvvis[] = "\033[34l"; ++static char screen_linux_s_dch1 [] = "\033[P"; ++static char screen_linux_s_dl1 [] = "\033[M"; ++static char screen_linux_s_smacs[] = "\016"; ++static char screen_linux_s_blink[] = "\033[5m"; ++static char screen_linux_s_bold [] = "\033[1m"; ++static char screen_linux_s_smcup[] = "\033[?1049h"; ++static char screen_linux_s_dim [] = "\033[2m"; ++static char screen_linux_s_smir [] = "\033[4h"; ++static char screen_linux_s_rev [] = "\033[7m"; ++static char screen_linux_s_smso [] = "\033[3m"; ++static char screen_linux_s_smul [] = "\033[4m"; ++static char screen_linux_s_rmacs[] = "\017"; ++static char screen_linux_s_sgr0 [] = "\033[m\017"; ++static char screen_linux_s_rmcup[] = "\033[?1049l"; ++static char screen_linux_s_rmir [] = "\033[4l"; ++static char screen_linux_s_rmso [] = "\033[23m"; ++static char screen_linux_s_rmul [] = "\033[24m"; ++static char screen_linux_s_flash[] = "\033g"; ++static char screen_linux_s_is2 [] = "\033)0"; ++static char screen_linux_s_il1 [] = "\033[L"; ++static char screen_linux_s_kbs [] = "\177"; ++static char screen_linux_s_kdch1[] = "\033[3~"; ++static char screen_linux_s_kcud1[] = "\033OB"; ++static char screen_linux_s_kf1 [] = "\033OP"; ++static char screen_linux_s_kf10 [] = "\033[21~"; ++static char screen_linux_s_kf2 [] = "\033OQ"; ++static char screen_linux_s_kf3 [] = "\033OR"; ++static char screen_linux_s_kf4 [] = "\033OS"; ++static char screen_linux_s_kf5 [] = "\033[15~"; ++static char screen_linux_s_kf6 [] = "\033[17~"; ++static char screen_linux_s_kf7 [] = "\033[18~"; ++static char screen_linux_s_kf8 [] = "\033[19~"; ++static char screen_linux_s_kf9 [] = "\033[20~"; ++static char screen_linux_s_khome[] = "\033[1~"; ++static char screen_linux_s_kich1[] = "\033[2~"; ++static char screen_linux_s_kcub1[] = "\033OD"; ++static char screen_linux_s_knp [] = "\033[6~"; ++static char screen_linux_s_kpp [] = "\033[5~"; ++static char screen_linux_s_kcuf1[] = "\033OC"; ++static char screen_linux_s_kcuu1[] = "\033OA"; ++static char screen_linux_s_rmkx [] = "\033[?1l\033>"; ++static char screen_linux_s_smkx [] = "\033[?1h\033="; ++static char screen_linux_s_nel [] = "\033E"; ++static char screen_linux_s_dch [] = "\033[%p1%dP"; ++static char screen_linux_s_dl [] = "\033[%p1%dM"; ++static char screen_linux_s_cud [] = "\033[%p1%dB"; ++static char screen_linux_s_ich [] = "\033[%p1%d@"; ++static char screen_linux_s_indn [] = "\033[%p1%dS"; ++static char screen_linux_s_il [] = "\033[%p1%dL"; ++static char screen_linux_s_cub [] = "\033[%p1%dD"; ++static char screen_linux_s_cuf [] = "\033[%p1%dC"; ++static char screen_linux_s_cuu [] = "\033[%p1%dA"; ++static char screen_linux_s_rs2 [] = "\033c\033[?1000l\033[?25h"; ++static char screen_linux_s_rc [] = "\0338"; ++static char screen_linux_s_vpa [] = "\033[%i%p1%dd"; ++static char screen_linux_s_sc [] = "\0337"; ++static char screen_linux_s_ind [] = "\012"; ++static char screen_linux_s_ri [] = "\033M"; ++static char screen_linux_s_sgr [] = "\033[0%?%p6%t;1%;%?%p1%t;3%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p5%t;2%;m%?%p9%t\016%e\017%;"; ++static char screen_linux_s_hts [] = "\033H"; ++static char screen_linux_s_ht [] = "\011"; ++static char screen_linux_s_acsc [] = "++,,--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~"; ++static char screen_linux_s_enacs[] = "\033(B\033)0"; ++static char screen_linux_s_kend [] = "\033[4~"; ++static char screen_linux_s_kf11 [] = "\033[23~"; ++static char screen_linux_s_kf12 [] = "\033[24~"; ++static char screen_linux_s_el1 [] = "\033[1K"; ++static char screen_linux_s_op [] = "\033[39;49m"; ++static char screen_linux_s_kmous[] = "\033[M"; ++static char screen_linux_s_setaf[] = "\033[3%p1%dm"; ++static char screen_linux_s_setab[] = "\033[4%p1%dm"; ++ ++static char screen_linux_bool_data[] = { ++ /* 0: bw */ TRUE, ++ /* 1: am */ TRUE, ++ /* 2: xsb */ FALSE, ++ /* 3: xhp */ FALSE, ++ /* 4: xenl */ TRUE, ++ /* 5: eo */ FALSE, ++ /* 6: gn */ FALSE, ++ /* 7: hc */ FALSE, ++ /* 8: km */ TRUE, ++ /* 9: hs */ FALSE, ++ /* 10: in */ FALSE, ++ /* 11: da */ FALSE, ++ /* 12: db */ FALSE, ++ /* 13: mir */ TRUE, ++ /* 14: msgr */ TRUE, ++ /* 15: os */ FALSE, ++ /* 16: eslok */ FALSE, ++ /* 17: xt */ FALSE, ++ /* 18: hz */ FALSE, ++ /* 19: ul */ FALSE, ++ /* 20: xon */ FALSE, ++ /* 21: nxon */ FALSE, ++ /* 22: mc5i */ FALSE, ++ /* 23: chts */ FALSE, ++ /* 24: nrrmc */ FALSE, ++ /* 25: npc */ FALSE, ++ /* 26: ndscr */ FALSE, ++ /* 27: ccc */ FALSE, ++ /* 28: bce */ FALSE, ++ /* 29: hls */ FALSE, ++ /* 30: xhpa */ FALSE, ++ /* 31: crxm */ FALSE, ++ /* 32: daisy */ FALSE, ++ /* 33: xvpa */ FALSE, ++ /* 34: sam */ FALSE, ++ /* 35: cpix */ FALSE, ++ /* 36: lpix */ FALSE, ++ /* 37: OTbs */ TRUE, ++ /* 38: OTns */ FALSE, ++ /* 39: OTnc */ FALSE, ++ /* 40: OTMT */ FALSE, ++ /* 41: OTNL */ FALSE, ++ /* 42: OTpt */ TRUE, ++ /* 43: OTxr */ FALSE, ++}; ++static NCURSES_INT2 screen_linux_number_data[] = { ++ /* 0: cols */ 80, ++ /* 1: it */ 8, ++ /* 2: lines */ 24, ++ /* 3: lm */ ABSENT_NUMERIC, ++ /* 4: xmc */ ABSENT_NUMERIC, ++ /* 5: pb */ ABSENT_NUMERIC, ++ /* 6: vt */ ABSENT_NUMERIC, ++ /* 7: wsl */ ABSENT_NUMERIC, ++ /* 8: nlab */ ABSENT_NUMERIC, ++ /* 9: lh */ ABSENT_NUMERIC, ++ /* 10: lw */ ABSENT_NUMERIC, ++ /* 11: ma */ ABSENT_NUMERIC, ++ /* 12: wnum */ ABSENT_NUMERIC, ++ /* 13: colors */ 8, ++ /* 14: pairs */ 64, ++ /* 15: ncv */ ABSENT_NUMERIC, ++ /* 16: bufsz */ ABSENT_NUMERIC, ++ /* 17: spinv */ ABSENT_NUMERIC, ++ /* 18: spinh */ ABSENT_NUMERIC, ++ /* 19: maddr */ ABSENT_NUMERIC, ++ /* 20: mjump */ ABSENT_NUMERIC, ++ /* 21: mcs */ ABSENT_NUMERIC, ++ /* 22: mls */ ABSENT_NUMERIC, ++ /* 23: npins */ ABSENT_NUMERIC, ++ /* 24: orc */ ABSENT_NUMERIC, ++ /* 25: orl */ ABSENT_NUMERIC, ++ /* 26: orhi */ ABSENT_NUMERIC, ++ /* 27: orvi */ ABSENT_NUMERIC, ++ /* 28: cps */ ABSENT_NUMERIC, ++ /* 29: widcs */ ABSENT_NUMERIC, ++ /* 30: btns */ ABSENT_NUMERIC, ++ /* 31: bitwin */ ABSENT_NUMERIC, ++ /* 32: bitype */ ABSENT_NUMERIC, ++ /* 33: OTug */ ABSENT_NUMERIC, ++ /* 34: OTdC */ ABSENT_NUMERIC, ++ /* 35: OTdN */ ABSENT_NUMERIC, ++ /* 36: OTdB */ ABSENT_NUMERIC, ++ /* 37: OTdT */ ABSENT_NUMERIC, ++ /* 38: OTkn */ ABSENT_NUMERIC, ++}; ++static char * screen_linux_string_data[] = { ++ /* 0: cbt */ screen_linux_s_cbt, ++ /* 1: bel */ screen_linux_s_bel, ++ /* 2: cr */ screen_linux_s_cr, ++ /* 3: csr */ screen_linux_s_csr, ++ /* 4: tbc */ screen_linux_s_tbc, ++ /* 5: clear */ screen_linux_s_clear, ++ /* 6: el */ screen_linux_s_el, ++ /* 7: ed */ screen_linux_s_ed, ++ /* 8: hpa */ screen_linux_s_hpa, ++ /* 9: cmdch */ ABSENT_STRING, ++ /* 10: cup */ screen_linux_s_cup, ++ /* 11: cud1 */ screen_linux_s_cud1, ++ /* 12: home */ screen_linux_s_home, ++ /* 13: civis */ screen_linux_s_civis, ++ /* 14: cub1 */ screen_linux_s_cub1, ++ /* 15: mrcup */ ABSENT_STRING, ++ /* 16: cnorm */ screen_linux_s_cnorm, ++ /* 17: cuf1 */ screen_linux_s_cuf1, ++ /* 18: ll */ ABSENT_STRING, ++ /* 19: cuu1 */ screen_linux_s_cuu1, ++ /* 20: cvvis */ screen_linux_s_cvvis, ++ /* 21: dch1 */ screen_linux_s_dch1, ++ /* 22: dl1 */ screen_linux_s_dl1, ++ /* 23: dsl */ ABSENT_STRING, ++ /* 24: hd */ ABSENT_STRING, ++ /* 25: smacs */ screen_linux_s_smacs, ++ /* 26: blink */ screen_linux_s_blink, ++ /* 27: bold */ screen_linux_s_bold, ++ /* 28: smcup */ screen_linux_s_smcup, ++ /* 29: smdc */ ABSENT_STRING, ++ /* 30: dim */ screen_linux_s_dim, ++ /* 31: smir */ screen_linux_s_smir, ++ /* 32: invis */ ABSENT_STRING, ++ /* 33: prot */ ABSENT_STRING, ++ /* 34: rev */ screen_linux_s_rev, ++ /* 35: smso */ screen_linux_s_smso, ++ /* 36: smul */ screen_linux_s_smul, ++ /* 37: ech */ ABSENT_STRING, ++ /* 38: rmacs */ screen_linux_s_rmacs, ++ /* 39: sgr0 */ screen_linux_s_sgr0, ++ /* 40: rmcup */ screen_linux_s_rmcup, ++ /* 41: rmdc */ ABSENT_STRING, ++ /* 42: rmir */ screen_linux_s_rmir, ++ /* 43: rmso */ screen_linux_s_rmso, ++ /* 44: rmul */ screen_linux_s_rmul, ++ /* 45: flash */ screen_linux_s_flash, ++ /* 46: ff */ ABSENT_STRING, ++ /* 47: fsl */ ABSENT_STRING, ++ /* 48: is1 */ ABSENT_STRING, ++ /* 49: is2 */ screen_linux_s_is2, ++ /* 50: is3 */ ABSENT_STRING, ++ /* 51: if */ ABSENT_STRING, ++ /* 52: ich1 */ ABSENT_STRING, ++ /* 53: il1 */ screen_linux_s_il1, ++ /* 54: ip */ ABSENT_STRING, ++ /* 55: kbs */ screen_linux_s_kbs, ++ /* 56: ktbc */ ABSENT_STRING, ++ /* 57: kclr */ ABSENT_STRING, ++ /* 58: kctab */ ABSENT_STRING, ++ /* 59: kdch1 */ screen_linux_s_kdch1, ++ /* 60: kdl1 */ ABSENT_STRING, ++ /* 61: kcud1 */ screen_linux_s_kcud1, ++ /* 62: krmir */ ABSENT_STRING, ++ /* 63: kel */ ABSENT_STRING, ++ /* 64: ked */ ABSENT_STRING, ++ /* 65: kf0 */ ABSENT_STRING, ++ /* 66: kf1 */ screen_linux_s_kf1, ++ /* 67: kf10 */ screen_linux_s_kf10, ++ /* 68: kf2 */ screen_linux_s_kf2, ++ /* 69: kf3 */ screen_linux_s_kf3, ++ /* 70: kf4 */ screen_linux_s_kf4, ++ /* 71: kf5 */ screen_linux_s_kf5, ++ /* 72: kf6 */ screen_linux_s_kf6, ++ /* 73: kf7 */ screen_linux_s_kf7, ++ /* 74: kf8 */ screen_linux_s_kf8, ++ /* 75: kf9 */ screen_linux_s_kf9, ++ /* 76: khome */ screen_linux_s_khome, ++ /* 77: kich1 */ screen_linux_s_kich1, ++ /* 78: kil1 */ ABSENT_STRING, ++ /* 79: kcub1 */ screen_linux_s_kcub1, ++ /* 80: kll */ ABSENT_STRING, ++ /* 81: knp */ screen_linux_s_knp, ++ /* 82: kpp */ screen_linux_s_kpp, ++ /* 83: kcuf1 */ screen_linux_s_kcuf1, ++ /* 84: kind */ ABSENT_STRING, ++ /* 85: kri */ ABSENT_STRING, ++ /* 86: khts */ ABSENT_STRING, ++ /* 87: kcuu1 */ screen_linux_s_kcuu1, ++ /* 88: rmkx */ screen_linux_s_rmkx, ++ /* 89: smkx */ screen_linux_s_smkx, ++ /* 90: lf0 */ ABSENT_STRING, ++ /* 91: lf1 */ ABSENT_STRING, ++ /* 92: lf10 */ ABSENT_STRING, ++ /* 93: lf2 */ ABSENT_STRING, ++ /* 94: lf3 */ ABSENT_STRING, ++ /* 95: lf4 */ ABSENT_STRING, ++ /* 96: lf5 */ ABSENT_STRING, ++ /* 97: lf6 */ ABSENT_STRING, ++ /* 98: lf7 */ ABSENT_STRING, ++ /* 99: lf8 */ ABSENT_STRING, ++ /* 100: lf9 */ ABSENT_STRING, ++ /* 101: rmm */ ABSENT_STRING, ++ /* 102: smm */ ABSENT_STRING, ++ /* 103: nel */ screen_linux_s_nel, ++ /* 104: pad */ ABSENT_STRING, ++ /* 105: dch */ screen_linux_s_dch, ++ /* 106: dl */ screen_linux_s_dl, ++ /* 107: cud */ screen_linux_s_cud, ++ /* 108: ich */ screen_linux_s_ich, ++ /* 109: indn */ screen_linux_s_indn, ++ /* 110: il */ screen_linux_s_il, ++ /* 111: cub */ screen_linux_s_cub, ++ /* 112: cuf */ screen_linux_s_cuf, ++ /* 113: rin */ ABSENT_STRING, ++ /* 114: cuu */ screen_linux_s_cuu, ++ /* 115: pfkey */ ABSENT_STRING, ++ /* 116: pfloc */ ABSENT_STRING, ++ /* 117: pfx */ ABSENT_STRING, ++ /* 118: mc0 */ ABSENT_STRING, ++ /* 119: mc4 */ ABSENT_STRING, ++ /* 120: mc5 */ ABSENT_STRING, ++ /* 121: rep */ ABSENT_STRING, ++ /* 122: rs1 */ ABSENT_STRING, ++ /* 123: rs2 */ screen_linux_s_rs2, ++ /* 124: rs3 */ ABSENT_STRING, ++ /* 125: rf */ ABSENT_STRING, ++ /* 126: rc */ screen_linux_s_rc, ++ /* 127: vpa */ screen_linux_s_vpa, ++ /* 128: sc */ screen_linux_s_sc, ++ /* 129: ind */ screen_linux_s_ind, ++ /* 130: ri */ screen_linux_s_ri, ++ /* 131: sgr */ screen_linux_s_sgr, ++ /* 132: hts */ screen_linux_s_hts, ++ /* 133: wind */ ABSENT_STRING, ++ /* 134: ht */ screen_linux_s_ht, ++ /* 135: tsl */ ABSENT_STRING, ++ /* 136: uc */ ABSENT_STRING, ++ /* 137: hu */ ABSENT_STRING, ++ /* 138: iprog */ ABSENT_STRING, ++ /* 139: ka1 */ ABSENT_STRING, ++ /* 140: ka3 */ ABSENT_STRING, ++ /* 141: kb2 */ ABSENT_STRING, ++ /* 142: kc1 */ ABSENT_STRING, ++ /* 143: kc3 */ ABSENT_STRING, ++ /* 144: mc5p */ ABSENT_STRING, ++ /* 145: rmp */ ABSENT_STRING, ++ /* 146: acsc */ screen_linux_s_acsc, ++ /* 147: pln */ ABSENT_STRING, ++ /* 148: kcbt */ CANCELLED_STRING, ++ /* 149: smxon */ ABSENT_STRING, ++ /* 150: rmxon */ ABSENT_STRING, ++ /* 151: smam */ ABSENT_STRING, ++ /* 152: rmam */ ABSENT_STRING, ++ /* 153: xonc */ ABSENT_STRING, ++ /* 154: xoffc */ ABSENT_STRING, ++ /* 155: enacs */ screen_linux_s_enacs, ++ /* 156: smln */ ABSENT_STRING, ++ /* 157: rmln */ ABSENT_STRING, ++ /* 158: kbeg */ ABSENT_STRING, ++ /* 159: kcan */ ABSENT_STRING, ++ /* 160: kclo */ ABSENT_STRING, ++ /* 161: kcmd */ ABSENT_STRING, ++ /* 162: kcpy */ ABSENT_STRING, ++ /* 163: kcrt */ ABSENT_STRING, ++ /* 164: kend */ screen_linux_s_kend, ++ /* 165: kent */ ABSENT_STRING, ++ /* 166: kext */ ABSENT_STRING, ++ /* 167: kfnd */ ABSENT_STRING, ++ /* 168: khlp */ ABSENT_STRING, ++ /* 169: kmrk */ ABSENT_STRING, ++ /* 170: kmsg */ ABSENT_STRING, ++ /* 171: kmov */ ABSENT_STRING, ++ /* 172: knxt */ ABSENT_STRING, ++ /* 173: kopn */ ABSENT_STRING, ++ /* 174: kopt */ ABSENT_STRING, ++ /* 175: kprv */ ABSENT_STRING, ++ /* 176: kprt */ ABSENT_STRING, ++ /* 177: krdo */ ABSENT_STRING, ++ /* 178: kref */ ABSENT_STRING, ++ /* 179: krfr */ ABSENT_STRING, ++ /* 180: krpl */ ABSENT_STRING, ++ /* 181: krst */ ABSENT_STRING, ++ /* 182: kres */ ABSENT_STRING, ++ /* 183: ksav */ ABSENT_STRING, ++ /* 184: kspd */ ABSENT_STRING, ++ /* 185: kund */ ABSENT_STRING, ++ /* 186: kBEG */ ABSENT_STRING, ++ /* 187: kCAN */ ABSENT_STRING, ++ /* 188: kCMD */ ABSENT_STRING, ++ /* 189: kCPY */ ABSENT_STRING, ++ /* 190: kCRT */ ABSENT_STRING, ++ /* 191: kDC */ ABSENT_STRING, ++ /* 192: kDL */ ABSENT_STRING, ++ /* 193: kslt */ ABSENT_STRING, ++ /* 194: kEND */ ABSENT_STRING, ++ /* 195: kEOL */ ABSENT_STRING, ++ /* 196: kEXT */ ABSENT_STRING, ++ /* 197: kFND */ ABSENT_STRING, ++ /* 198: kHLP */ ABSENT_STRING, ++ /* 199: kHOM */ ABSENT_STRING, ++ /* 200: kIC */ ABSENT_STRING, ++ /* 201: kLFT */ ABSENT_STRING, ++ /* 202: kMSG */ ABSENT_STRING, ++ /* 203: kMOV */ ABSENT_STRING, ++ /* 204: kNXT */ ABSENT_STRING, ++ /* 205: kOPT */ ABSENT_STRING, ++ /* 206: kPRV */ ABSENT_STRING, ++ /* 207: kPRT */ ABSENT_STRING, ++ /* 208: kRDO */ ABSENT_STRING, ++ /* 209: kRPL */ ABSENT_STRING, ++ /* 210: kRIT */ ABSENT_STRING, ++ /* 211: kRES */ ABSENT_STRING, ++ /* 212: kSAV */ ABSENT_STRING, ++ /* 213: kSPD */ ABSENT_STRING, ++ /* 214: kUND */ ABSENT_STRING, ++ /* 215: rfi */ ABSENT_STRING, ++ /* 216: kf11 */ screen_linux_s_kf11, ++ /* 217: kf12 */ screen_linux_s_kf12, ++ /* 218: kf13 */ ABSENT_STRING, ++ /* 219: kf14 */ ABSENT_STRING, ++ /* 220: kf15 */ ABSENT_STRING, ++ /* 221: kf16 */ ABSENT_STRING, ++ /* 222: kf17 */ ABSENT_STRING, ++ /* 223: kf18 */ ABSENT_STRING, ++ /* 224: kf19 */ ABSENT_STRING, ++ /* 225: kf20 */ ABSENT_STRING, ++ /* 226: kf21 */ ABSENT_STRING, ++ /* 227: kf22 */ ABSENT_STRING, ++ /* 228: kf23 */ ABSENT_STRING, ++ /* 229: kf24 */ ABSENT_STRING, ++ /* 230: kf25 */ ABSENT_STRING, ++ /* 231: kf26 */ ABSENT_STRING, ++ /* 232: kf27 */ ABSENT_STRING, ++ /* 233: kf28 */ ABSENT_STRING, ++ /* 234: kf29 */ ABSENT_STRING, ++ /* 235: kf30 */ ABSENT_STRING, ++ /* 236: kf31 */ ABSENT_STRING, ++ /* 237: kf32 */ ABSENT_STRING, ++ /* 238: kf33 */ ABSENT_STRING, ++ /* 239: kf34 */ ABSENT_STRING, ++ /* 240: kf35 */ ABSENT_STRING, ++ /* 241: kf36 */ ABSENT_STRING, ++ /* 242: kf37 */ ABSENT_STRING, ++ /* 243: kf38 */ ABSENT_STRING, ++ /* 244: kf39 */ ABSENT_STRING, ++ /* 245: kf40 */ ABSENT_STRING, ++ /* 246: kf41 */ ABSENT_STRING, ++ /* 247: kf42 */ ABSENT_STRING, ++ /* 248: kf43 */ ABSENT_STRING, ++ /* 249: kf44 */ ABSENT_STRING, ++ /* 250: kf45 */ ABSENT_STRING, ++ /* 251: kf46 */ ABSENT_STRING, ++ /* 252: kf47 */ ABSENT_STRING, ++ /* 253: kf48 */ ABSENT_STRING, ++ /* 254: kf49 */ ABSENT_STRING, ++ /* 255: kf50 */ ABSENT_STRING, ++ /* 256: kf51 */ ABSENT_STRING, ++ /* 257: kf52 */ ABSENT_STRING, ++ /* 258: kf53 */ ABSENT_STRING, ++ /* 259: kf54 */ ABSENT_STRING, ++ /* 260: kf55 */ ABSENT_STRING, ++ /* 261: kf56 */ ABSENT_STRING, ++ /* 262: kf57 */ ABSENT_STRING, ++ /* 263: kf58 */ ABSENT_STRING, ++ /* 264: kf59 */ ABSENT_STRING, ++ /* 265: kf60 */ ABSENT_STRING, ++ /* 266: kf61 */ ABSENT_STRING, ++ /* 267: kf62 */ ABSENT_STRING, ++ /* 268: kf63 */ ABSENT_STRING, ++ /* 269: el1 */ screen_linux_s_el1, ++ /* 270: mgc */ ABSENT_STRING, ++ /* 271: smgl */ ABSENT_STRING, ++ /* 272: smgr */ ABSENT_STRING, ++ /* 273: fln */ ABSENT_STRING, ++ /* 274: sclk */ ABSENT_STRING, ++ /* 275: dclk */ ABSENT_STRING, ++ /* 276: rmclk */ ABSENT_STRING, ++ /* 277: cwin */ ABSENT_STRING, ++ /* 278: wingo */ ABSENT_STRING, ++ /* 279: hup */ ABSENT_STRING, ++ /* 280: dial */ ABSENT_STRING, ++ /* 281: qdial */ ABSENT_STRING, ++ /* 282: tone */ ABSENT_STRING, ++ /* 283: pulse */ ABSENT_STRING, ++ /* 284: hook */ ABSENT_STRING, ++ /* 285: pause */ ABSENT_STRING, ++ /* 286: wait */ ABSENT_STRING, ++ /* 287: u0 */ ABSENT_STRING, ++ /* 288: u1 */ ABSENT_STRING, ++ /* 289: u2 */ ABSENT_STRING, ++ /* 290: u3 */ ABSENT_STRING, ++ /* 291: u4 */ ABSENT_STRING, ++ /* 292: u5 */ ABSENT_STRING, ++ /* 293: u6 */ ABSENT_STRING, ++ /* 294: u7 */ ABSENT_STRING, ++ /* 295: u8 */ ABSENT_STRING, ++ /* 296: u9 */ ABSENT_STRING, ++ /* 297: op */ screen_linux_s_op, ++ /* 298: oc */ ABSENT_STRING, ++ /* 299: initc */ ABSENT_STRING, ++ /* 300: initp */ ABSENT_STRING, ++ /* 301: scp */ ABSENT_STRING, ++ /* 302: setf */ ABSENT_STRING, ++ /* 303: setb */ ABSENT_STRING, ++ /* 304: cpi */ ABSENT_STRING, ++ /* 305: lpi */ ABSENT_STRING, ++ /* 306: chr */ ABSENT_STRING, ++ /* 307: cvr */ ABSENT_STRING, ++ /* 308: defc */ ABSENT_STRING, ++ /* 309: swidm */ ABSENT_STRING, ++ /* 310: sdrfq */ ABSENT_STRING, ++ /* 311: sitm */ ABSENT_STRING, ++ /* 312: slm */ ABSENT_STRING, ++ /* 313: smicm */ ABSENT_STRING, ++ /* 314: snlq */ ABSENT_STRING, ++ /* 315: snrmq */ ABSENT_STRING, ++ /* 316: sshm */ ABSENT_STRING, ++ /* 317: ssubm */ ABSENT_STRING, ++ /* 318: ssupm */ ABSENT_STRING, ++ /* 319: sum */ ABSENT_STRING, ++ /* 320: rwidm */ ABSENT_STRING, ++ /* 321: ritm */ ABSENT_STRING, ++ /* 322: rlm */ ABSENT_STRING, ++ /* 323: rmicm */ ABSENT_STRING, ++ /* 324: rshm */ ABSENT_STRING, ++ /* 325: rsubm */ ABSENT_STRING, ++ /* 326: rsupm */ ABSENT_STRING, ++ /* 327: rum */ ABSENT_STRING, ++ /* 328: mhpa */ ABSENT_STRING, ++ /* 329: mcud1 */ ABSENT_STRING, ++ /* 330: mcub1 */ ABSENT_STRING, ++ /* 331: mcuf1 */ ABSENT_STRING, ++ /* 332: mvpa */ ABSENT_STRING, ++ /* 333: mcuu1 */ ABSENT_STRING, ++ /* 334: porder */ ABSENT_STRING, ++ /* 335: mcud */ ABSENT_STRING, ++ /* 336: mcub */ ABSENT_STRING, ++ /* 337: mcuf */ ABSENT_STRING, ++ /* 338: mcuu */ ABSENT_STRING, ++ /* 339: scs */ ABSENT_STRING, ++ /* 340: smgb */ ABSENT_STRING, ++ /* 341: smgbp */ ABSENT_STRING, ++ /* 342: smglp */ ABSENT_STRING, ++ /* 343: smgrp */ ABSENT_STRING, ++ /* 344: smgt */ ABSENT_STRING, ++ /* 345: smgtp */ ABSENT_STRING, ++ /* 346: sbim */ ABSENT_STRING, ++ /* 347: scsd */ ABSENT_STRING, ++ /* 348: rbim */ ABSENT_STRING, ++ /* 349: rcsd */ ABSENT_STRING, ++ /* 350: subcs */ ABSENT_STRING, ++ /* 351: supcs */ ABSENT_STRING, ++ /* 352: docr */ ABSENT_STRING, ++ /* 353: zerom */ ABSENT_STRING, ++ /* 354: csnm */ ABSENT_STRING, ++ /* 355: kmous */ screen_linux_s_kmous, ++ /* 356: minfo */ ABSENT_STRING, ++ /* 357: reqmp */ ABSENT_STRING, ++ /* 358: getm */ ABSENT_STRING, ++ /* 359: setaf */ screen_linux_s_setaf, ++ /* 360: setab */ screen_linux_s_setab, ++ /* 361: pfxl */ ABSENT_STRING, ++ /* 362: devt */ ABSENT_STRING, ++ /* 363: csin */ ABSENT_STRING, ++ /* 364: s0ds */ ABSENT_STRING, ++ /* 365: s1ds */ ABSENT_STRING, ++ /* 366: s2ds */ ABSENT_STRING, ++ /* 367: s3ds */ ABSENT_STRING, ++ /* 368: smglr */ ABSENT_STRING, ++ /* 369: smgtb */ ABSENT_STRING, ++ /* 370: birep */ ABSENT_STRING, ++ /* 371: binel */ ABSENT_STRING, ++ /* 372: bicr */ ABSENT_STRING, ++ /* 373: colornm */ ABSENT_STRING, ++ /* 374: defbi */ ABSENT_STRING, ++ /* 375: endbi */ ABSENT_STRING, ++ /* 376: setcolor */ ABSENT_STRING, ++ /* 377: slines */ ABSENT_STRING, ++ /* 378: dispc */ ABSENT_STRING, ++ /* 379: smpch */ ABSENT_STRING, ++ /* 380: rmpch */ ABSENT_STRING, ++ /* 381: smsc */ ABSENT_STRING, ++ /* 382: rmsc */ ABSENT_STRING, ++ /* 383: pctrm */ ABSENT_STRING, ++ /* 384: scesc */ ABSENT_STRING, ++ /* 385: scesa */ ABSENT_STRING, ++ /* 386: ehhlm */ ABSENT_STRING, ++ /* 387: elhlm */ ABSENT_STRING, ++ /* 388: elohlm */ ABSENT_STRING, ++ /* 389: erhlm */ ABSENT_STRING, ++ /* 390: ethlm */ ABSENT_STRING, ++ /* 391: evhlm */ ABSENT_STRING, ++ /* 392: sgr1 */ ABSENT_STRING, ++ /* 393: slength */ ABSENT_STRING, ++ /* 394: OTi2 */ ABSENT_STRING, ++ /* 395: OTrs */ ABSENT_STRING, ++ /* 396: OTnl */ ABSENT_STRING, ++ /* 397: OTbc */ ABSENT_STRING, ++ /* 398: OTko */ ABSENT_STRING, ++ /* 399: OTma */ ABSENT_STRING, ++ /* 400: OTG2 */ ABSENT_STRING, ++ /* 401: OTG3 */ ABSENT_STRING, ++ /* 402: OTG1 */ ABSENT_STRING, ++ /* 403: OTG4 */ ABSENT_STRING, ++ /* 404: OTGR */ ABSENT_STRING, ++ /* 405: OTGL */ ABSENT_STRING, ++ /* 406: OTGU */ ABSENT_STRING, ++ /* 407: OTGD */ ABSENT_STRING, ++ /* 408: OTGH */ ABSENT_STRING, ++ /* 409: OTGV */ ABSENT_STRING, ++ /* 410: OTGC */ ABSENT_STRING, ++ /* 411: meml */ ABSENT_STRING, ++ /* 412: memu */ ABSENT_STRING, ++ /* 413: box1 */ ABSENT_STRING, ++}; ++/* screen.rxvt */ ++ ++static char screen_rxvt_alias_data[] = "screen.rxvt|screen in rxvt"; ++ ++static char screen_rxvt_s_cbt [] = "\033[Z"; ++static char screen_rxvt_s_bel [] = "\007"; ++static char screen_rxvt_s_cr [] = "\015"; ++static char screen_rxvt_s_csr [] = "\033[%i%p1%d;%p2%dr"; ++static char screen_rxvt_s_tbc [] = "\033[3g"; ++static char screen_rxvt_s_clear [] = "\033[H\033[J"; ++static char screen_rxvt_s_el [] = "\033[K"; ++static char screen_rxvt_s_ed [] = "\033[J"; ++static char screen_rxvt_s_hpa [] = "\033[%i%p1%dG"; ++static char screen_rxvt_s_cup [] = "\033[%i%p1%d;%p2%dH"; ++static char screen_rxvt_s_cud1 [] = "\012"; ++static char screen_rxvt_s_home [] = "\033[H"; ++static char screen_rxvt_s_civis [] = "\033[?25l"; ++static char screen_rxvt_s_cub1 [] = "\010"; ++static char screen_rxvt_s_cnorm [] = "\033[34h\033[?25h"; ++static char screen_rxvt_s_cuf1 [] = "\033[C"; ++static char screen_rxvt_s_cuu1 [] = "\033M"; ++static char screen_rxvt_s_dch1 [] = "\033[P"; ++static char screen_rxvt_s_dl1 [] = "\033[M"; ++static char screen_rxvt_s_smacs [] = "\016"; ++static char screen_rxvt_s_blink [] = "\033[5m"; ++static char screen_rxvt_s_bold [] = "\033[1m"; ++static char screen_rxvt_s_smcup [] = "\033[?1049h"; ++static char screen_rxvt_s_dim [] = "\033[2m"; ++static char screen_rxvt_s_smir [] = "\033[4h"; ++static char screen_rxvt_s_rev [] = "\033[7m"; ++static char screen_rxvt_s_smso [] = "\033[3m"; ++static char screen_rxvt_s_smul [] = "\033[4m"; ++static char screen_rxvt_s_rmacs [] = "\017"; ++static char screen_rxvt_s_sgr0 [] = "\033[m\017"; ++static char screen_rxvt_s_rmcup [] = "\033[?1049l"; ++static char screen_rxvt_s_rmir [] = "\033[4l"; ++static char screen_rxvt_s_rmso [] = "\033[23m"; ++static char screen_rxvt_s_rmul [] = "\033[24m"; ++static char screen_rxvt_s_is2 [] = "\033)0"; ++static char screen_rxvt_s_il1 [] = "\033[L"; ++static char screen_rxvt_s_kbs [] = "\010"; ++static char screen_rxvt_s_kdch1 [] = "\033[3~"; ++static char screen_rxvt_s_kcud1 [] = "\033OB"; ++static char screen_rxvt_s_kel [] = "\033[8^"; ++static char screen_rxvt_s_kf1 [] = "\033OP"; ++static char screen_rxvt_s_kf10 [] = "\033[21~"; ++static char screen_rxvt_s_kf2 [] = "\033OQ"; ++static char screen_rxvt_s_kf3 [] = "\033OR"; ++static char screen_rxvt_s_kf4 [] = "\033OS"; ++static char screen_rxvt_s_kf5 [] = "\033[15~"; ++static char screen_rxvt_s_kf6 [] = "\033[17~"; ++static char screen_rxvt_s_kf7 [] = "\033[18~"; ++static char screen_rxvt_s_kf8 [] = "\033[19~"; ++static char screen_rxvt_s_kf9 [] = "\033[20~"; ++static char screen_rxvt_s_khome [] = "\033[1~"; ++static char screen_rxvt_s_kich1 [] = "\033[2~"; ++static char screen_rxvt_s_kcub1 [] = "\033OD"; ++static char screen_rxvt_s_knp [] = "\033[6~"; ++static char screen_rxvt_s_kpp [] = "\033[5~"; ++static char screen_rxvt_s_kcuf1 [] = "\033OC"; ++static char screen_rxvt_s_kind [] = "\033[a"; ++static char screen_rxvt_s_kri [] = "\033[b"; ++static char screen_rxvt_s_kcuu1 [] = "\033OA"; ++static char screen_rxvt_s_rmkx [] = "\033[?1l\033>"; ++static char screen_rxvt_s_smkx [] = "\033[?1h\033="; ++static char screen_rxvt_s_nel [] = "\033E"; ++static char screen_rxvt_s_dch [] = "\033[%p1%dP"; ++static char screen_rxvt_s_dl [] = "\033[%p1%dM"; ++static char screen_rxvt_s_cud [] = "\033[%p1%dB"; ++static char screen_rxvt_s_ich [] = "\033[%p1%d@"; ++static char screen_rxvt_s_indn [] = "\033[%p1%dS"; ++static char screen_rxvt_s_il [] = "\033[%p1%dL"; ++static char screen_rxvt_s_cub [] = "\033[%p1%dD"; ++static char screen_rxvt_s_cuf [] = "\033[%p1%dC"; ++static char screen_rxvt_s_cuu [] = "\033[%p1%dA"; ++static char screen_rxvt_s_rs2 [] = "\033c\033[?1000l\033[?25h"; ++static char screen_rxvt_s_rc [] = "\0338"; ++static char screen_rxvt_s_vpa [] = "\033[%i%p1%dd"; ++static char screen_rxvt_s_sc [] = "\0337"; ++static char screen_rxvt_s_ind [] = "\012"; ++static char screen_rxvt_s_ri [] = "\033M"; ++static char screen_rxvt_s_sgr [] = "\033[0%?%p6%t;1%;%?%p1%t;3%;%?%p2%t;4%;%?%p3%t;7%;%?%p4%t;5%;%?%p5%t;2%;m%?%p9%t\016%e\017%;"; ++static char screen_rxvt_s_hts [] = "\033H"; ++static char screen_rxvt_s_ht [] = "\011"; ++static char screen_rxvt_s_ka1 [] = "\033Ow"; ++static char screen_rxvt_s_ka3 [] = "\033Oy"; ++static char screen_rxvt_s_kb2 [] = "\033Ou"; ++static char screen_rxvt_s_kc1 [] = "\033Oq"; ++static char screen_rxvt_s_kc3 [] = "\033Os"; ++static char screen_rxvt_s_acsc [] = "++,,--..00``aaffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~"; ++static char screen_rxvt_s_kcbt [] = "\033[Z"; ++static char screen_rxvt_s_enacs [] = "\033(B\033)0"; ++static char screen_rxvt_s_kend [] = "\033[4~"; ++static char screen_rxvt_s_kent [] = "\033OM"; ++static char screen_rxvt_s_kDC [] = "\033[3$"; ++static char screen_rxvt_s_kEND [] = "\033[8$"; ++static char screen_rxvt_s_kHOM [] = "\033[7$"; ++static char screen_rxvt_s_kIC [] = "\033[2$"; ++static char screen_rxvt_s_kLFT [] = "\033[d"; ++static char screen_rxvt_s_kNXT [] = "\033[6$"; ++static char screen_rxvt_s_kPRV [] = "\033[5$"; ++static char screen_rxvt_s_kRIT [] = "\033[c"; ++static char screen_rxvt_s_kf11 [] = "\033[23~"; ++static char screen_rxvt_s_kf12 [] = "\033[24~"; ++static char screen_rxvt_s_kf13 [] = "\033[25~"; ++static char screen_rxvt_s_kf14 [] = "\033[26~"; ++static char screen_rxvt_s_kf15 [] = "\033[28~"; ++static char screen_rxvt_s_kf16 [] = "\033[29~"; ++static char screen_rxvt_s_kf17 [] = "\033[31~"; ++static char screen_rxvt_s_kf18 [] = "\033[32~"; ++static char screen_rxvt_s_kf19 [] = "\033[33~"; ++static char screen_rxvt_s_kf20 [] = "\033[34~"; ++static char screen_rxvt_s_kf21 [] = "\033[23$"; ++static char screen_rxvt_s_kf22 [] = "\033[24$"; ++static char screen_rxvt_s_kf23 [] = "\033[11^"; ++static char screen_rxvt_s_kf24 [] = "\033[12^"; ++static char screen_rxvt_s_kf25 [] = "\033[13^"; ++static char screen_rxvt_s_kf26 [] = "\033[14^"; ++static char screen_rxvt_s_kf27 [] = "\033[15^"; ++static char screen_rxvt_s_kf28 [] = "\033[17^"; ++static char screen_rxvt_s_kf29 [] = "\033[18^"; ++static char screen_rxvt_s_kf30 [] = "\033[19^"; ++static char screen_rxvt_s_kf31 [] = "\033[20^"; ++static char screen_rxvt_s_kf32 [] = "\033[21^"; ++static char screen_rxvt_s_kf33 [] = "\033[23^"; ++static char screen_rxvt_s_kf34 [] = "\033[24^"; ++static char screen_rxvt_s_kf35 [] = "\033[25^"; ++static char screen_rxvt_s_kf36 [] = "\033[26^"; ++static char screen_rxvt_s_kf37 [] = "\033[28^"; ++static char screen_rxvt_s_kf38 [] = "\033[29^"; ++static char screen_rxvt_s_kf39 [] = "\033[31^"; ++static char screen_rxvt_s_kf40 [] = "\033[32^"; ++static char screen_rxvt_s_kf41 [] = "\033[33^"; ++static char screen_rxvt_s_kf42 [] = "\033[34^"; ++static char screen_rxvt_s_kf43 [] = "\033[23@"; ++static char screen_rxvt_s_kf44 [] = "\033[24@"; ++static char screen_rxvt_s_el1 [] = "\033[1K"; ++static char screen_rxvt_s_u6 [] = "\033[%i%d;%dR"; ++static char screen_rxvt_s_u7 [] = "\033[6n"; ++static char screen_rxvt_s_u8 [] = "\033[?1;2c"; ++static char screen_rxvt_s_u9 [] = "\033[c"; ++static char screen_rxvt_s_op [] = "\033[39;49m"; ++static char screen_rxvt_s_kmous [] = "\033[M"; ++static char screen_rxvt_s_setaf [] = "\033[3%p1%dm"; ++static char screen_rxvt_s_setab [] = "\033[4%p1%dm"; ++ ++static char screen_rxvt_bool_data[] = { ++ /* 0: bw */ TRUE, ++ /* 1: am */ TRUE, ++ /* 2: xsb */ FALSE, ++ /* 3: xhp */ FALSE, ++ /* 4: xenl */ TRUE, ++ /* 5: eo */ FALSE, ++ /* 6: gn */ FALSE, ++ /* 7: hc */ FALSE, ++ /* 8: km */ TRUE, ++ /* 9: hs */ FALSE, ++ /* 10: in */ FALSE, ++ /* 11: da */ FALSE, ++ /* 12: db */ FALSE, ++ /* 13: mir */ TRUE, ++ /* 14: msgr */ TRUE, ++ /* 15: os */ FALSE, ++ /* 16: eslok */ FALSE, ++ /* 17: xt */ FALSE, ++ /* 18: hz */ FALSE, ++ /* 19: ul */ FALSE, ++ /* 20: xon */ FALSE, ++ /* 21: nxon */ FALSE, ++ /* 22: mc5i */ FALSE, ++ /* 23: chts */ FALSE, ++ /* 24: nrrmc */ FALSE, ++ /* 25: npc */ FALSE, ++ /* 26: ndscr */ FALSE, ++ /* 27: ccc */ FALSE, ++ /* 28: bce */ FALSE, ++ /* 29: hls */ FALSE, ++ /* 30: xhpa */ FALSE, ++ /* 31: crxm */ FALSE, ++ /* 32: daisy */ FALSE, ++ /* 33: xvpa */ FALSE, ++ /* 34: sam */ FALSE, ++ /* 35: cpix */ FALSE, ++ /* 36: lpix */ FALSE, ++ /* 37: OTbs */ TRUE, ++ /* 38: OTns */ FALSE, ++ /* 39: OTnc */ FALSE, ++ /* 40: OTMT */ FALSE, ++ /* 41: OTNL */ FALSE, ++ /* 42: OTpt */ TRUE, ++ /* 43: OTxr */ FALSE, ++}; ++static NCURSES_INT2 screen_rxvt_number_data[] = { ++ /* 0: cols */ 80, ++ /* 1: it */ 8, ++ /* 2: lines */ 24, ++ /* 3: lm */ ABSENT_NUMERIC, ++ /* 4: xmc */ ABSENT_NUMERIC, ++ /* 5: pb */ ABSENT_NUMERIC, ++ /* 6: vt */ ABSENT_NUMERIC, ++ /* 7: wsl */ ABSENT_NUMERIC, ++ /* 8: nlab */ ABSENT_NUMERIC, ++ /* 9: lh */ ABSENT_NUMERIC, ++ /* 10: lw */ ABSENT_NUMERIC, ++ /* 11: ma */ ABSENT_NUMERIC, ++ /* 12: wnum */ ABSENT_NUMERIC, ++ /* 13: colors */ 8, ++ /* 14: pairs */ 64, ++ /* 15: ncv */ ABSENT_NUMERIC, ++ /* 16: bufsz */ ABSENT_NUMERIC, ++ /* 17: spinv */ ABSENT_NUMERIC, ++ /* 18: spinh */ ABSENT_NUMERIC, ++ /* 19: maddr */ ABSENT_NUMERIC, ++ /* 20: mjump */ ABSENT_NUMERIC, ++ /* 21: mcs */ ABSENT_NUMERIC, ++ /* 22: mls */ ABSENT_NUMERIC, ++ /* 23: npins */ ABSENT_NUMERIC, ++ /* 24: orc */ ABSENT_NUMERIC, ++ /* 25: orl */ ABSENT_NUMERIC, ++ /* 26: orhi */ ABSENT_NUMERIC, ++ /* 27: orvi */ ABSENT_NUMERIC, ++ /* 28: cps */ ABSENT_NUMERIC, ++ /* 29: widcs */ ABSENT_NUMERIC, ++ /* 30: btns */ ABSENT_NUMERIC, ++ /* 31: bitwin */ ABSENT_NUMERIC, ++ /* 32: bitype */ ABSENT_NUMERIC, ++ /* 33: OTug */ ABSENT_NUMERIC, ++ /* 34: OTdC */ ABSENT_NUMERIC, ++ /* 35: OTdN */ ABSENT_NUMERIC, ++ /* 36: OTdB */ ABSENT_NUMERIC, ++ /* 37: OTdT */ ABSENT_NUMERIC, ++ /* 38: OTkn */ ABSENT_NUMERIC, ++}; ++static char * screen_rxvt_string_data[] = { ++ /* 0: cbt */ screen_rxvt_s_cbt, ++ /* 1: bel */ screen_rxvt_s_bel, ++ /* 2: cr */ screen_rxvt_s_cr, ++ /* 3: csr */ screen_rxvt_s_csr, ++ /* 4: tbc */ screen_rxvt_s_tbc, ++ /* 5: clear */ screen_rxvt_s_clear, ++ /* 6: el */ screen_rxvt_s_el, ++ /* 7: ed */ screen_rxvt_s_ed, ++ /* 8: hpa */ screen_rxvt_s_hpa, ++ /* 9: cmdch */ ABSENT_STRING, ++ /* 10: cup */ screen_rxvt_s_cup, ++ /* 11: cud1 */ screen_rxvt_s_cud1, ++ /* 12: home */ screen_rxvt_s_home, ++ /* 13: civis */ screen_rxvt_s_civis, ++ /* 14: cub1 */ screen_rxvt_s_cub1, ++ /* 15: mrcup */ ABSENT_STRING, ++ /* 16: cnorm */ screen_rxvt_s_cnorm, ++ /* 17: cuf1 */ screen_rxvt_s_cuf1, ++ /* 18: ll */ ABSENT_STRING, ++ /* 19: cuu1 */ screen_rxvt_s_cuu1, ++ /* 20: cvvis */ CANCELLED_STRING, ++ /* 21: dch1 */ screen_rxvt_s_dch1, ++ /* 22: dl1 */ screen_rxvt_s_dl1, ++ /* 23: dsl */ ABSENT_STRING, ++ /* 24: hd */ ABSENT_STRING, ++ /* 25: smacs */ screen_rxvt_s_smacs, ++ /* 26: blink */ screen_rxvt_s_blink, ++ /* 27: bold */ screen_rxvt_s_bold, ++ /* 28: smcup */ screen_rxvt_s_smcup, ++ /* 29: smdc */ ABSENT_STRING, ++ /* 30: dim */ screen_rxvt_s_dim, ++ /* 31: smir */ screen_rxvt_s_smir, ++ /* 32: invis */ ABSENT_STRING, ++ /* 33: prot */ ABSENT_STRING, ++ /* 34: rev */ screen_rxvt_s_rev, ++ /* 35: smso */ screen_rxvt_s_smso, ++ /* 36: smul */ screen_rxvt_s_smul, ++ /* 37: ech */ ABSENT_STRING, ++ /* 38: rmacs */ screen_rxvt_s_rmacs, ++ /* 39: sgr0 */ screen_rxvt_s_sgr0, ++ /* 40: rmcup */ screen_rxvt_s_rmcup, ++ /* 41: rmdc */ ABSENT_STRING, ++ /* 42: rmir */ screen_rxvt_s_rmir, ++ /* 43: rmso */ screen_rxvt_s_rmso, ++ /* 44: rmul */ screen_rxvt_s_rmul, ++ /* 45: flash */ CANCELLED_STRING, ++ /* 46: ff */ ABSENT_STRING, ++ /* 47: fsl */ ABSENT_STRING, ++ /* 48: is1 */ ABSENT_STRING, ++ /* 49: is2 */ screen_rxvt_s_is2, ++ /* 50: is3 */ ABSENT_STRING, ++ /* 51: if */ ABSENT_STRING, ++ /* 52: ich1 */ ABSENT_STRING, ++ /* 53: il1 */ screen_rxvt_s_il1, ++ /* 54: ip */ ABSENT_STRING, ++ /* 55: kbs */ screen_rxvt_s_kbs, ++ /* 56: ktbc */ ABSENT_STRING, ++ /* 57: kclr */ ABSENT_STRING, ++ /* 58: kctab */ ABSENT_STRING, ++ /* 59: kdch1 */ screen_rxvt_s_kdch1, ++ /* 60: kdl1 */ ABSENT_STRING, ++ /* 61: kcud1 */ screen_rxvt_s_kcud1, ++ /* 62: krmir */ ABSENT_STRING, ++ /* 63: kel */ screen_rxvt_s_kel, ++ /* 64: ked */ ABSENT_STRING, ++ /* 65: kf0 */ ABSENT_STRING, ++ /* 66: kf1 */ screen_rxvt_s_kf1, ++ /* 67: kf10 */ screen_rxvt_s_kf10, ++ /* 68: kf2 */ screen_rxvt_s_kf2, ++ /* 69: kf3 */ screen_rxvt_s_kf3, ++ /* 70: kf4 */ screen_rxvt_s_kf4, ++ /* 71: kf5 */ screen_rxvt_s_kf5, ++ /* 72: kf6 */ screen_rxvt_s_kf6, ++ /* 73: kf7 */ screen_rxvt_s_kf7, ++ /* 74: kf8 */ screen_rxvt_s_kf8, ++ /* 75: kf9 */ screen_rxvt_s_kf9, ++ /* 76: khome */ screen_rxvt_s_khome, ++ /* 77: kich1 */ screen_rxvt_s_kich1, ++ /* 78: kil1 */ ABSENT_STRING, ++ /* 79: kcub1 */ screen_rxvt_s_kcub1, ++ /* 80: kll */ ABSENT_STRING, ++ /* 81: knp */ screen_rxvt_s_knp, ++ /* 82: kpp */ screen_rxvt_s_kpp, ++ /* 83: kcuf1 */ screen_rxvt_s_kcuf1, ++ /* 84: kind */ screen_rxvt_s_kind, ++ /* 85: kri */ screen_rxvt_s_kri, ++ /* 86: khts */ ABSENT_STRING, ++ /* 87: kcuu1 */ screen_rxvt_s_kcuu1, ++ /* 88: rmkx */ screen_rxvt_s_rmkx, ++ /* 89: smkx */ screen_rxvt_s_smkx, ++ /* 90: lf0 */ ABSENT_STRING, ++ /* 91: lf1 */ ABSENT_STRING, ++ /* 92: lf10 */ ABSENT_STRING, ++ /* 93: lf2 */ ABSENT_STRING, ++ /* 94: lf3 */ ABSENT_STRING, ++ /* 95: lf4 */ ABSENT_STRING, ++ /* 96: lf5 */ ABSENT_STRING, ++ /* 97: lf6 */ ABSENT_STRING, ++ /* 98: lf7 */ ABSENT_STRING, ++ /* 99: lf8 */ ABSENT_STRING, ++ /* 100: lf9 */ ABSENT_STRING, ++ /* 101: rmm */ ABSENT_STRING, ++ /* 102: smm */ ABSENT_STRING, ++ /* 103: nel */ screen_rxvt_s_nel, ++ /* 104: pad */ ABSENT_STRING, ++ /* 105: dch */ screen_rxvt_s_dch, ++ /* 106: dl */ screen_rxvt_s_dl, ++ /* 107: cud */ screen_rxvt_s_cud, ++ /* 108: ich */ screen_rxvt_s_ich, ++ /* 109: indn */ screen_rxvt_s_indn, ++ /* 110: il */ screen_rxvt_s_il, ++ /* 111: cub */ screen_rxvt_s_cub, ++ /* 112: cuf */ screen_rxvt_s_cuf, ++ /* 113: rin */ ABSENT_STRING, ++ /* 114: cuu */ screen_rxvt_s_cuu, ++ /* 115: pfkey */ ABSENT_STRING, ++ /* 116: pfloc */ ABSENT_STRING, ++ /* 117: pfx */ ABSENT_STRING, ++ /* 118: mc0 */ ABSENT_STRING, ++ /* 119: mc4 */ ABSENT_STRING, ++ /* 120: mc5 */ ABSENT_STRING, ++ /* 121: rep */ ABSENT_STRING, ++ /* 122: rs1 */ ABSENT_STRING, ++ /* 123: rs2 */ screen_rxvt_s_rs2, ++ /* 124: rs3 */ ABSENT_STRING, ++ /* 125: rf */ ABSENT_STRING, ++ /* 126: rc */ screen_rxvt_s_rc, ++ /* 127: vpa */ screen_rxvt_s_vpa, ++ /* 128: sc */ screen_rxvt_s_sc, ++ /* 129: ind */ screen_rxvt_s_ind, ++ /* 130: ri */ screen_rxvt_s_ri, ++ /* 131: sgr */ screen_rxvt_s_sgr, ++ /* 132: hts */ screen_rxvt_s_hts, ++ /* 133: wind */ ABSENT_STRING, ++ /* 134: ht */ screen_rxvt_s_ht, ++ /* 135: tsl */ ABSENT_STRING, ++ /* 136: uc */ ABSENT_STRING, ++ /* 137: hu */ ABSENT_STRING, ++ /* 138: iprog */ ABSENT_STRING, ++ /* 139: ka1 */ screen_rxvt_s_ka1, ++ /* 140: ka3 */ screen_rxvt_s_ka3, ++ /* 141: kb2 */ screen_rxvt_s_kb2, ++ /* 142: kc1 */ screen_rxvt_s_kc1, ++ /* 143: kc3 */ screen_rxvt_s_kc3, ++ /* 144: mc5p */ ABSENT_STRING, ++ /* 145: rmp */ ABSENT_STRING, ++ /* 146: acsc */ screen_rxvt_s_acsc, ++ /* 147: pln */ ABSENT_STRING, ++ /* 148: kcbt */ screen_rxvt_s_kcbt, ++ /* 149: smxon */ ABSENT_STRING, ++ /* 150: rmxon */ ABSENT_STRING, ++ /* 151: smam */ ABSENT_STRING, ++ /* 152: rmam */ ABSENT_STRING, ++ /* 153: xonc */ ABSENT_STRING, ++ /* 154: xoffc */ ABSENT_STRING, ++ /* 155: enacs */ screen_rxvt_s_enacs, ++ /* 156: smln */ ABSENT_STRING, ++ /* 157: rmln */ ABSENT_STRING, ++ /* 158: kbeg */ ABSENT_STRING, ++ /* 159: kcan */ ABSENT_STRING, ++ /* 160: kclo */ ABSENT_STRING, ++ /* 161: kcmd */ ABSENT_STRING, ++ /* 162: kcpy */ ABSENT_STRING, ++ /* 163: kcrt */ ABSENT_STRING, ++ /* 164: kend */ screen_rxvt_s_kend, ++ /* 165: kent */ screen_rxvt_s_kent, ++ /* 166: kext */ ABSENT_STRING, ++ /* 167: kfnd */ ABSENT_STRING, ++ /* 168: khlp */ ABSENT_STRING, ++ /* 169: kmrk */ ABSENT_STRING, ++ /* 170: kmsg */ ABSENT_STRING, ++ /* 171: kmov */ ABSENT_STRING, ++ /* 172: knxt */ ABSENT_STRING, ++ /* 173: kopn */ ABSENT_STRING, ++ /* 174: kopt */ ABSENT_STRING, ++ /* 175: kprv */ ABSENT_STRING, ++ /* 176: kprt */ ABSENT_STRING, ++ /* 177: krdo */ ABSENT_STRING, ++ /* 178: kref */ ABSENT_STRING, ++ /* 179: krfr */ ABSENT_STRING, ++ /* 180: krpl */ ABSENT_STRING, ++ /* 181: krst */ ABSENT_STRING, ++ /* 182: kres */ ABSENT_STRING, ++ /* 183: ksav */ ABSENT_STRING, ++ /* 184: kspd */ ABSENT_STRING, ++ /* 185: kund */ ABSENT_STRING, ++ /* 186: kBEG */ ABSENT_STRING, ++ /* 187: kCAN */ ABSENT_STRING, ++ /* 188: kCMD */ ABSENT_STRING, ++ /* 189: kCPY */ ABSENT_STRING, ++ /* 190: kCRT */ ABSENT_STRING, ++ /* 191: kDC */ screen_rxvt_s_kDC, ++ /* 192: kDL */ ABSENT_STRING, ++ /* 193: kslt */ ABSENT_STRING, ++ /* 194: kEND */ screen_rxvt_s_kEND, ++ /* 195: kEOL */ ABSENT_STRING, ++ /* 196: kEXT */ ABSENT_STRING, ++ /* 197: kFND */ ABSENT_STRING, ++ /* 198: kHLP */ ABSENT_STRING, ++ /* 199: kHOM */ screen_rxvt_s_kHOM, ++ /* 200: kIC */ screen_rxvt_s_kIC, ++ /* 201: kLFT */ screen_rxvt_s_kLFT, ++ /* 202: kMSG */ ABSENT_STRING, ++ /* 203: kMOV */ ABSENT_STRING, ++ /* 204: kNXT */ screen_rxvt_s_kNXT, ++ /* 205: kOPT */ ABSENT_STRING, ++ /* 206: kPRV */ screen_rxvt_s_kPRV, ++ /* 207: kPRT */ ABSENT_STRING, ++ /* 208: kRDO */ ABSENT_STRING, ++ /* 209: kRPL */ ABSENT_STRING, ++ /* 210: kRIT */ screen_rxvt_s_kRIT, ++ /* 211: kRES */ ABSENT_STRING, ++ /* 212: kSAV */ ABSENT_STRING, ++ /* 213: kSPD */ ABSENT_STRING, ++ /* 214: kUND */ ABSENT_STRING, ++ /* 215: rfi */ ABSENT_STRING, ++ /* 216: kf11 */ screen_rxvt_s_kf11, ++ /* 217: kf12 */ screen_rxvt_s_kf12, ++ /* 218: kf13 */ screen_rxvt_s_kf13, ++ /* 219: kf14 */ screen_rxvt_s_kf14, ++ /* 220: kf15 */ screen_rxvt_s_kf15, ++ /* 221: kf16 */ screen_rxvt_s_kf16, ++ /* 222: kf17 */ screen_rxvt_s_kf17, ++ /* 223: kf18 */ screen_rxvt_s_kf18, ++ /* 224: kf19 */ screen_rxvt_s_kf19, ++ /* 225: kf20 */ screen_rxvt_s_kf20, ++ /* 226: kf21 */ screen_rxvt_s_kf21, ++ /* 227: kf22 */ screen_rxvt_s_kf22, ++ /* 228: kf23 */ screen_rxvt_s_kf23, ++ /* 229: kf24 */ screen_rxvt_s_kf24, ++ /* 230: kf25 */ screen_rxvt_s_kf25, ++ /* 231: kf26 */ screen_rxvt_s_kf26, ++ /* 232: kf27 */ screen_rxvt_s_kf27, ++ /* 233: kf28 */ screen_rxvt_s_kf28, ++ /* 234: kf29 */ screen_rxvt_s_kf29, ++ /* 235: kf30 */ screen_rxvt_s_kf30, ++ /* 236: kf31 */ screen_rxvt_s_kf31, ++ /* 237: kf32 */ screen_rxvt_s_kf32, ++ /* 238: kf33 */ screen_rxvt_s_kf33, ++ /* 239: kf34 */ screen_rxvt_s_kf34, ++ /* 240: kf35 */ screen_rxvt_s_kf35, ++ /* 241: kf36 */ screen_rxvt_s_kf36, ++ /* 242: kf37 */ screen_rxvt_s_kf37, ++ /* 243: kf38 */ screen_rxvt_s_kf38, ++ /* 244: kf39 */ screen_rxvt_s_kf39, ++ /* 245: kf40 */ screen_rxvt_s_kf40, ++ /* 246: kf41 */ screen_rxvt_s_kf41, ++ /* 247: kf42 */ screen_rxvt_s_kf42, ++ /* 248: kf43 */ screen_rxvt_s_kf43, ++ /* 249: kf44 */ screen_rxvt_s_kf44, ++ /* 250: kf45 */ ABSENT_STRING, ++ /* 251: kf46 */ ABSENT_STRING, ++ /* 252: kf47 */ ABSENT_STRING, ++ /* 253: kf48 */ ABSENT_STRING, ++ /* 254: kf49 */ ABSENT_STRING, ++ /* 255: kf50 */ ABSENT_STRING, ++ /* 256: kf51 */ ABSENT_STRING, ++ /* 257: kf52 */ ABSENT_STRING, ++ /* 258: kf53 */ ABSENT_STRING, ++ /* 259: kf54 */ ABSENT_STRING, ++ /* 260: kf55 */ ABSENT_STRING, ++ /* 261: kf56 */ ABSENT_STRING, ++ /* 262: kf57 */ ABSENT_STRING, ++ /* 263: kf58 */ ABSENT_STRING, ++ /* 264: kf59 */ ABSENT_STRING, ++ /* 265: kf60 */ ABSENT_STRING, ++ /* 266: kf61 */ ABSENT_STRING, ++ /* 267: kf62 */ ABSENT_STRING, ++ /* 268: kf63 */ ABSENT_STRING, ++ /* 269: el1 */ screen_rxvt_s_el1, ++ /* 270: mgc */ ABSENT_STRING, ++ /* 271: smgl */ ABSENT_STRING, ++ /* 272: smgr */ ABSENT_STRING, ++ /* 273: fln */ ABSENT_STRING, ++ /* 274: sclk */ ABSENT_STRING, ++ /* 275: dclk */ ABSENT_STRING, ++ /* 276: rmclk */ ABSENT_STRING, ++ /* 277: cwin */ ABSENT_STRING, ++ /* 278: wingo */ ABSENT_STRING, ++ /* 279: hup */ ABSENT_STRING, ++ /* 280: dial */ ABSENT_STRING, ++ /* 281: qdial */ ABSENT_STRING, ++ /* 282: tone */ ABSENT_STRING, ++ /* 283: pulse */ ABSENT_STRING, ++ /* 284: hook */ ABSENT_STRING, ++ /* 285: pause */ ABSENT_STRING, ++ /* 286: wait */ ABSENT_STRING, ++ /* 287: u0 */ ABSENT_STRING, ++ /* 288: u1 */ ABSENT_STRING, ++ /* 289: u2 */ ABSENT_STRING, ++ /* 290: u3 */ ABSENT_STRING, ++ /* 291: u4 */ ABSENT_STRING, ++ /* 292: u5 */ ABSENT_STRING, ++ /* 293: u6 */ screen_rxvt_s_u6, ++ /* 294: u7 */ screen_rxvt_s_u7, ++ /* 295: u8 */ screen_rxvt_s_u8, ++ /* 296: u9 */ screen_rxvt_s_u9, ++ /* 297: op */ screen_rxvt_s_op, ++ /* 298: oc */ ABSENT_STRING, ++ /* 299: initc */ ABSENT_STRING, ++ /* 300: initp */ ABSENT_STRING, ++ /* 301: scp */ ABSENT_STRING, ++ /* 302: setf */ ABSENT_STRING, ++ /* 303: setb */ ABSENT_STRING, ++ /* 304: cpi */ ABSENT_STRING, ++ /* 305: lpi */ ABSENT_STRING, ++ /* 306: chr */ ABSENT_STRING, ++ /* 307: cvr */ ABSENT_STRING, ++ /* 308: defc */ ABSENT_STRING, ++ /* 309: swidm */ ABSENT_STRING, ++ /* 310: sdrfq */ ABSENT_STRING, ++ /* 311: sitm */ ABSENT_STRING, ++ /* 312: slm */ ABSENT_STRING, ++ /* 313: smicm */ ABSENT_STRING, ++ /* 314: snlq */ ABSENT_STRING, ++ /* 315: snrmq */ ABSENT_STRING, ++ /* 316: sshm */ ABSENT_STRING, ++ /* 317: ssubm */ ABSENT_STRING, ++ /* 318: ssupm */ ABSENT_STRING, ++ /* 319: sum */ ABSENT_STRING, ++ /* 320: rwidm */ ABSENT_STRING, ++ /* 321: ritm */ ABSENT_STRING, ++ /* 322: rlm */ ABSENT_STRING, ++ /* 323: rmicm */ ABSENT_STRING, ++ /* 324: rshm */ ABSENT_STRING, ++ /* 325: rsubm */ ABSENT_STRING, ++ /* 326: rsupm */ ABSENT_STRING, ++ /* 327: rum */ ABSENT_STRING, ++ /* 328: mhpa */ ABSENT_STRING, ++ /* 329: mcud1 */ ABSENT_STRING, ++ /* 330: mcub1 */ ABSENT_STRING, ++ /* 331: mcuf1 */ ABSENT_STRING, ++ /* 332: mvpa */ ABSENT_STRING, ++ /* 333: mcuu1 */ ABSENT_STRING, ++ /* 334: porder */ ABSENT_STRING, ++ /* 335: mcud */ ABSENT_STRING, ++ /* 336: mcub */ ABSENT_STRING, ++ /* 337: mcuf */ ABSENT_STRING, ++ /* 338: mcuu */ ABSENT_STRING, ++ /* 339: scs */ ABSENT_STRING, ++ /* 340: smgb */ ABSENT_STRING, ++ /* 341: smgbp */ ABSENT_STRING, ++ /* 342: smglp */ ABSENT_STRING, ++ /* 343: smgrp */ ABSENT_STRING, ++ /* 344: smgt */ ABSENT_STRING, ++ /* 345: smgtp */ ABSENT_STRING, ++ /* 346: sbim */ ABSENT_STRING, ++ /* 347: scsd */ ABSENT_STRING, ++ /* 348: rbim */ ABSENT_STRING, ++ /* 349: rcsd */ ABSENT_STRING, ++ /* 350: subcs */ ABSENT_STRING, ++ /* 351: supcs */ ABSENT_STRING, ++ /* 352: docr */ ABSENT_STRING, ++ /* 353: zerom */ ABSENT_STRING, ++ /* 354: csnm */ ABSENT_STRING, ++ /* 355: kmous */ screen_rxvt_s_kmous, ++ /* 356: minfo */ ABSENT_STRING, ++ /* 357: reqmp */ ABSENT_STRING, ++ /* 358: getm */ ABSENT_STRING, ++ /* 359: setaf */ screen_rxvt_s_setaf, ++ /* 360: setab */ screen_rxvt_s_setab, ++ /* 361: pfxl */ ABSENT_STRING, ++ /* 362: devt */ ABSENT_STRING, ++ /* 363: csin */ ABSENT_STRING, ++ /* 364: s0ds */ ABSENT_STRING, ++ /* 365: s1ds */ ABSENT_STRING, ++ /* 366: s2ds */ ABSENT_STRING, ++ /* 367: s3ds */ ABSENT_STRING, ++ /* 368: smglr */ ABSENT_STRING, ++ /* 369: smgtb */ ABSENT_STRING, ++ /* 370: birep */ ABSENT_STRING, ++ /* 371: binel */ ABSENT_STRING, ++ /* 372: bicr */ ABSENT_STRING, ++ /* 373: colornm */ ABSENT_STRING, ++ /* 374: defbi */ ABSENT_STRING, ++ /* 375: endbi */ ABSENT_STRING, ++ /* 376: setcolor */ ABSENT_STRING, ++ /* 377: slines */ ABSENT_STRING, ++ /* 378: dispc */ ABSENT_STRING, ++ /* 379: smpch */ ABSENT_STRING, ++ /* 380: rmpch */ ABSENT_STRING, ++ /* 381: smsc */ ABSENT_STRING, ++ /* 382: rmsc */ ABSENT_STRING, ++ /* 383: pctrm */ ABSENT_STRING, ++ /* 384: scesc */ ABSENT_STRING, ++ /* 385: scesa */ ABSENT_STRING, ++ /* 386: ehhlm */ ABSENT_STRING, ++ /* 387: elhlm */ ABSENT_STRING, ++ /* 388: elohlm */ ABSENT_STRING, ++ /* 389: erhlm */ ABSENT_STRING, ++ /* 390: ethlm */ ABSENT_STRING, ++ /* 391: evhlm */ ABSENT_STRING, ++ /* 392: sgr1 */ ABSENT_STRING, ++ /* 393: slength */ ABSENT_STRING, ++ /* 394: OTi2 */ ABSENT_STRING, ++ /* 395: OTrs */ ABSENT_STRING, ++ /* 396: OTnl */ ABSENT_STRING, ++ /* 397: OTbc */ ABSENT_STRING, ++ /* 398: OTko */ ABSENT_STRING, ++ /* 399: OTma */ ABSENT_STRING, ++ /* 400: OTG2 */ ABSENT_STRING, ++ /* 401: OTG3 */ ABSENT_STRING, ++ /* 402: OTG1 */ ABSENT_STRING, ++ /* 403: OTG4 */ ABSENT_STRING, ++ /* 404: OTGR */ ABSENT_STRING, ++ /* 405: OTGL */ ABSENT_STRING, ++ /* 406: OTGU */ ABSENT_STRING, ++ /* 407: OTGD */ ABSENT_STRING, ++ /* 408: OTGH */ ABSENT_STRING, ++ /* 409: OTGV */ ABSENT_STRING, ++ /* 410: OTGC */ ABSENT_STRING, ++ /* 411: meml */ ABSENT_STRING, ++ /* 412: memu */ ABSENT_STRING, ++ /* 413: box1 */ ABSENT_STRING, ++}; ++/* screen.xterm-new */ ++ ++static char screen_xterm_xfree86_alias_data[] = "screen.xterm-xfree86|screen.xterm-new|screen customized for modern xterm"; ++ ++static char screen_xterm_xfree86_s_cbt[] = "\033[Z"; ++static char screen_xterm_xfree86_s_bel[] = "\007"; ++static char screen_xterm_xfree86_s_cr[] = "\015"; ++static char screen_xterm_xfree86_s_csr[] = "\033[%i%p1%d;%p2%dr"; ++static char screen_xterm_xfree86_s_tbc[] = "\033[3g"; ++static char screen_xterm_xfree86_s_clear[] = "\033[H\033[2J"; ++static char screen_xterm_xfree86_s_el[] = "\033[K"; ++static char screen_xterm_xfree86_s_ed[] = "\033[J"; ++static char screen_xterm_xfree86_s_hpa[] = "\033[%i%p1%dG"; ++static char screen_xterm_xfree86_s_cup[] = "\033[%i%p1%d;%p2%dH"; ++static char screen_xterm_xfree86_s_cud1[] = "\012"; ++static char screen_xterm_xfree86_s_home[] = "\033[H"; ++static char screen_xterm_xfree86_s_civis[] = "\033[?25l"; ++static char screen_xterm_xfree86_s_cub1[] = "\010"; ++static char screen_xterm_xfree86_s_cnorm[] = "\033[?12l\033[?25h"; ++static char screen_xterm_xfree86_s_cuf1[] = "\033[C"; ++static char screen_xterm_xfree86_s_cuu1[] = "\033[A"; ++static char screen_xterm_xfree86_s_cvvis[] = "\033[?12;25h"; ++static char screen_xterm_xfree86_s_dch1[] = "\033[P"; ++static char screen_xterm_xfree86_s_dl1[] = "\033[M"; ++static char screen_xterm_xfree86_s_smacs[] = "\033(0"; ++static char screen_xterm_xfree86_s_blink[] = "\033[5m"; ++static char screen_xterm_xfree86_s_bold[] = "\033[1m"; ++static char screen_xterm_xfree86_s_smcup[] = "\033[?1049h\033[22;0;0t"; ++static char screen_xterm_xfree86_s_dim[] = "\033[2m"; ++static char screen_xterm_xfree86_s_smir[] = "\033[4h"; ++static char screen_xterm_xfree86_s_rev[] = "\033[7m"; ++static char screen_xterm_xfree86_s_smso[] = "\033[7m"; ++static char screen_xterm_xfree86_s_smul[] = "\033[4m"; ++static char screen_xterm_xfree86_s_ech[] = "\033[%p1%dX"; ++static char screen_xterm_xfree86_s_rmacs[] = "\033(B"; ++static char screen_xterm_xfree86_s_sgr0[] = "\033(B\033[m"; ++static char screen_xterm_xfree86_s_rmcup[] = "\033[?1049l\033[23;0;0t"; ++static char screen_xterm_xfree86_s_rmir[] = "\033[4l"; ++static char screen_xterm_xfree86_s_rmso[] = "\033[27m"; ++static char screen_xterm_xfree86_s_rmul[] = "\033[24m"; ++static char screen_xterm_xfree86_s_flash[] = "\033[?5h$<100/>\033[?5l"; ++static char screen_xterm_xfree86_s_is2[] = "\033[!p\033[?3;4l\033[4l\033>"; ++static char screen_xterm_xfree86_s_il1[] = "\033[L"; ++static char screen_xterm_xfree86_s_kbs[] = "\010"; ++static char screen_xterm_xfree86_s_kdch1[] = "\033[3~"; ++static char screen_xterm_xfree86_s_kcud1[] = "\033OB"; ++static char screen_xterm_xfree86_s_kf1[] = "\033OP"; ++static char screen_xterm_xfree86_s_kf10[] = "\033[21~"; ++static char screen_xterm_xfree86_s_kf2[] = "\033OQ"; ++static char screen_xterm_xfree86_s_kf3[] = "\033OR"; ++static char screen_xterm_xfree86_s_kf4[] = "\033OS"; ++static char screen_xterm_xfree86_s_kf5[] = "\033[15~"; ++static char screen_xterm_xfree86_s_kf6[] = "\033[17~"; ++static char screen_xterm_xfree86_s_kf7[] = "\033[18~"; ++static char screen_xterm_xfree86_s_kf8[] = "\033[19~"; ++static char screen_xterm_xfree86_s_kf9[] = "\033[20~"; ++static char screen_xterm_xfree86_s_khome[] = "\033[1~"; ++static char screen_xterm_xfree86_s_kich1[] = "\033[2~"; ++static char screen_xterm_xfree86_s_kcub1[] = "\033OD"; ++static char screen_xterm_xfree86_s_knp[] = "\033[6~"; ++static char screen_xterm_xfree86_s_kpp[] = "\033[5~"; ++static char screen_xterm_xfree86_s_kcuf1[] = "\033OC"; ++static char screen_xterm_xfree86_s_kind[] = "\033[1;2B"; ++static char screen_xterm_xfree86_s_kri[] = "\033[1;2A"; ++static char screen_xterm_xfree86_s_kcuu1[] = "\033OA"; ++static char screen_xterm_xfree86_s_rmkx[] = "\033[?1l\033>"; ++static char screen_xterm_xfree86_s_smkx[] = "\033[?1h\033="; ++static char screen_xterm_xfree86_s_rmm[] = "\033[?1034l"; ++static char screen_xterm_xfree86_s_smm[] = "\033[?1034h"; ++static char screen_xterm_xfree86_s_dch[] = "\033[%p1%dP"; ++static char screen_xterm_xfree86_s_dl[] = "\033[%p1%dM"; ++static char screen_xterm_xfree86_s_cud[] = "\033[%p1%dB"; ++static char screen_xterm_xfree86_s_ich[] = "\033[%p1%d@"; ++static char screen_xterm_xfree86_s_indn[] = "\033[%p1%dS"; ++static char screen_xterm_xfree86_s_il[] = "\033[%p1%dL"; ++static char screen_xterm_xfree86_s_cub[] = "\033[%p1%dD"; ++static char screen_xterm_xfree86_s_cuf[] = "\033[%p1%dC"; ++static char screen_xterm_xfree86_s_rin[] = "\033[%p1%dT"; ++static char screen_xterm_xfree86_s_cuu[] = "\033[%p1%dA"; ++static char screen_xterm_xfree86_s_mc0[] = "\033[i"; ++static char screen_xterm_xfree86_s_mc4[] = "\033[4i"; ++static char screen_xterm_xfree86_s_mc5[] = "\033[5i"; ++static char screen_xterm_xfree86_s_rs1[] = "\033c"; ++static char screen_xterm_xfree86_s_rs2[] = "\033[!p\033[?3;4l\033[4l\033>"; ++static char screen_xterm_xfree86_s_rc[] = "\0338"; ++static char screen_xterm_xfree86_s_vpa[] = "\033[%i%p1%dd"; ++static char screen_xterm_xfree86_s_sc[] = "\0337"; ++static char screen_xterm_xfree86_s_ind[] = "\012"; ++static char screen_xterm_xfree86_s_ri[] = "\033M"; ++static char screen_xterm_xfree86_s_sgr[] = "%?%p9%t\033(0%e\033(B%;\033[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p5%t;2%;m"; ++static char screen_xterm_xfree86_s_hts[] = "\033H"; ++static char screen_xterm_xfree86_s_ht[] = "\011"; ++static char screen_xterm_xfree86_s_kb2[] = "\033OE"; ++static char screen_xterm_xfree86_s_acsc[] = "``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~"; ++static char screen_xterm_xfree86_s_kcbt[] = "\033[Z"; ++static char screen_xterm_xfree86_s_smam[] = "\033[?7h"; ++static char screen_xterm_xfree86_s_rmam[] = "\033[?7l"; ++static char screen_xterm_xfree86_s_kend[] = "\033[4~"; ++static char screen_xterm_xfree86_s_kent[] = "\033OM"; ++static char screen_xterm_xfree86_s_kDC[] = "\033[3;2~"; ++static char screen_xterm_xfree86_s_kEND[] = "\033[1;2F"; ++static char screen_xterm_xfree86_s_kHOM[] = "\033[1;2H"; ++static char screen_xterm_xfree86_s_kLFT[] = "\033[1;2D"; ++static char screen_xterm_xfree86_s_kRIT[] = "\033[1;2C"; ++static char screen_xterm_xfree86_s_kf11[] = "\033[23~"; ++static char screen_xterm_xfree86_s_kf12[] = "\033[24~"; ++static char screen_xterm_xfree86_s_kf13[] = "\033[1;2P"; ++static char screen_xterm_xfree86_s_kf14[] = "\033[1;2Q"; ++static char screen_xterm_xfree86_s_kf15[] = "\033[1;2R"; ++static char screen_xterm_xfree86_s_kf16[] = "\033[1;2S"; ++static char screen_xterm_xfree86_s_kf17[] = "\033[15;2~"; ++static char screen_xterm_xfree86_s_kf18[] = "\033[17;2~"; ++static char screen_xterm_xfree86_s_kf19[] = "\033[18;2~"; ++static char screen_xterm_xfree86_s_kf20[] = "\033[19;2~"; ++static char screen_xterm_xfree86_s_kf21[] = "\033[20;2~"; ++static char screen_xterm_xfree86_s_kf22[] = "\033[21;2~"; ++static char screen_xterm_xfree86_s_kf23[] = "\033[23;2~"; ++static char screen_xterm_xfree86_s_kf24[] = "\033[24;2~"; ++static char screen_xterm_xfree86_s_kf25[] = "\033[1;5P"; ++static char screen_xterm_xfree86_s_kf26[] = "\033[1;5Q"; ++static char screen_xterm_xfree86_s_kf27[] = "\033[1;5R"; ++static char screen_xterm_xfree86_s_kf28[] = "\033[1;5S"; ++static char screen_xterm_xfree86_s_kf29[] = "\033[15;5~"; ++static char screen_xterm_xfree86_s_kf30[] = "\033[17;5~"; ++static char screen_xterm_xfree86_s_kf31[] = "\033[18;5~"; ++static char screen_xterm_xfree86_s_kf32[] = "\033[19;5~"; ++static char screen_xterm_xfree86_s_kf33[] = "\033[20;5~"; ++static char screen_xterm_xfree86_s_kf34[] = "\033[21;5~"; ++static char screen_xterm_xfree86_s_kf35[] = "\033[23;5~"; ++static char screen_xterm_xfree86_s_kf36[] = "\033[24;5~"; ++static char screen_xterm_xfree86_s_kf37[] = "\033[1;6P"; ++static char screen_xterm_xfree86_s_kf38[] = "\033[1;6Q"; ++static char screen_xterm_xfree86_s_kf39[] = "\033[1;6R"; ++static char screen_xterm_xfree86_s_kf40[] = "\033[1;6S"; ++static char screen_xterm_xfree86_s_kf41[] = "\033[15;6~"; ++static char screen_xterm_xfree86_s_kf42[] = "\033[17;6~"; ++static char screen_xterm_xfree86_s_kf43[] = "\033[18;6~"; ++static char screen_xterm_xfree86_s_kf44[] = "\033[19;6~"; ++static char screen_xterm_xfree86_s_kf45[] = "\033[20;6~"; ++static char screen_xterm_xfree86_s_kf46[] = "\033[21;6~"; ++static char screen_xterm_xfree86_s_kf47[] = "\033[23;6~"; ++static char screen_xterm_xfree86_s_kf48[] = "\033[24;6~"; ++static char screen_xterm_xfree86_s_kf49[] = "\033[1;3P"; ++static char screen_xterm_xfree86_s_kf50[] = "\033[1;3Q"; ++static char screen_xterm_xfree86_s_kf51[] = "\033[1;3R"; ++static char screen_xterm_xfree86_s_kf52[] = "\033[1;3S"; ++static char screen_xterm_xfree86_s_kf53[] = "\033[15;3~"; ++static char screen_xterm_xfree86_s_kf54[] = "\033[17;3~"; ++static char screen_xterm_xfree86_s_kf55[] = "\033[18;3~"; ++static char screen_xterm_xfree86_s_kf56[] = "\033[19;3~"; ++static char screen_xterm_xfree86_s_kf57[] = "\033[20;3~"; ++static char screen_xterm_xfree86_s_kf58[] = "\033[21;3~"; ++static char screen_xterm_xfree86_s_kf59[] = "\033[23;3~"; ++static char screen_xterm_xfree86_s_kf60[] = "\033[24;3~"; ++static char screen_xterm_xfree86_s_kf61[] = "\033[1;4P"; ++static char screen_xterm_xfree86_s_kf62[] = "\033[1;4Q"; ++static char screen_xterm_xfree86_s_kf63[] = "\033[1;4R"; ++static char screen_xterm_xfree86_s_el1[] = "\033[1K"; ++static char screen_xterm_xfree86_s_u6[] = "\033[%i%d;%dR"; ++static char screen_xterm_xfree86_s_u7[] = "\033[6n"; ++static char screen_xterm_xfree86_s_u8[] = "\033[?%[;0123456789]c"; ++static char screen_xterm_xfree86_s_u9[] = "\033[c"; ++static char screen_xterm_xfree86_s_op[] = "\033[39;49m"; ++static char screen_xterm_xfree86_s_setf[] = "\033[3%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m"; ++static char screen_xterm_xfree86_s_setb[] = "\033[4%?%p1%{1}%=%t4%e%p1%{3}%=%t6%e%p1%{4}%=%t1%e%p1%{6}%=%t3%e%p1%d%;m"; ++static char screen_xterm_xfree86_s_kmous[] = "\033[M"; ++static char screen_xterm_xfree86_s_setaf[] = "\033[3%p1%dm"; ++static char screen_xterm_xfree86_s_setab[] = "\033[4%p1%dm"; ++ ++static char screen_xterm_xfree86_bool_data[] = { ++ /* 0: bw */ TRUE, ++ /* 1: am */ TRUE, ++ /* 2: xsb */ FALSE, ++ /* 3: xhp */ FALSE, ++ /* 4: xenl */ TRUE, ++ /* 5: eo */ FALSE, ++ /* 6: gn */ FALSE, ++ /* 7: hc */ FALSE, ++ /* 8: km */ TRUE, ++ /* 9: hs */ FALSE, ++ /* 10: in */ FALSE, ++ /* 11: da */ FALSE, ++ /* 12: db */ FALSE, ++ /* 13: mir */ TRUE, ++ /* 14: msgr */ TRUE, ++ /* 15: os */ FALSE, ++ /* 16: eslok */ FALSE, ++ /* 17: xt */ FALSE, ++ /* 18: hz */ FALSE, ++ /* 19: ul */ FALSE, ++ /* 20: xon */ FALSE, ++ /* 21: nxon */ FALSE, ++ /* 22: mc5i */ TRUE, ++ /* 23: chts */ FALSE, ++ /* 24: nrrmc */ FALSE, ++ /* 25: npc */ TRUE, ++ /* 26: ndscr */ FALSE, ++ /* 27: ccc */ FALSE, ++ /* 28: bce */ FALSE, ++ /* 29: hls */ FALSE, ++ /* 30: xhpa */ FALSE, ++ /* 31: crxm */ FALSE, ++ /* 32: daisy */ FALSE, ++ /* 33: xvpa */ FALSE, ++ /* 34: sam */ FALSE, ++ /* 35: cpix */ FALSE, ++ /* 36: lpix */ FALSE, ++ /* 37: OTbs */ TRUE, ++ /* 38: OTns */ FALSE, ++ /* 39: OTnc */ FALSE, ++ /* 40: OTMT */ FALSE, ++ /* 41: OTNL */ FALSE, ++ /* 42: OTpt */ FALSE, ++ /* 43: OTxr */ FALSE, ++}; ++static NCURSES_INT2 screen_xterm_xfree86_number_data[] = { ++ /* 0: cols */ 80, ++ /* 1: it */ 8, ++ /* 2: lines */ 24, ++ /* 3: lm */ ABSENT_NUMERIC, ++ /* 4: xmc */ ABSENT_NUMERIC, ++ /* 5: pb */ ABSENT_NUMERIC, ++ /* 6: vt */ ABSENT_NUMERIC, ++ /* 7: wsl */ ABSENT_NUMERIC, ++ /* 8: nlab */ ABSENT_NUMERIC, ++ /* 9: lh */ ABSENT_NUMERIC, ++ /* 10: lw */ ABSENT_NUMERIC, ++ /* 11: ma */ ABSENT_NUMERIC, ++ /* 12: wnum */ ABSENT_NUMERIC, ++ /* 13: colors */ 8, ++ /* 14: pairs */ 64, ++ /* 15: ncv */ ABSENT_NUMERIC, ++ /* 16: bufsz */ ABSENT_NUMERIC, ++ /* 17: spinv */ ABSENT_NUMERIC, ++ /* 18: spinh */ ABSENT_NUMERIC, ++ /* 19: maddr */ ABSENT_NUMERIC, ++ /* 20: mjump */ ABSENT_NUMERIC, ++ /* 21: mcs */ ABSENT_NUMERIC, ++ /* 22: mls */ ABSENT_NUMERIC, ++ /* 23: npins */ ABSENT_NUMERIC, ++ /* 24: orc */ ABSENT_NUMERIC, ++ /* 25: orl */ ABSENT_NUMERIC, ++ /* 26: orhi */ ABSENT_NUMERIC, ++ /* 27: orvi */ ABSENT_NUMERIC, ++ /* 28: cps */ ABSENT_NUMERIC, ++ /* 29: widcs */ ABSENT_NUMERIC, ++ /* 30: btns */ ABSENT_NUMERIC, ++ /* 31: bitwin */ ABSENT_NUMERIC, ++ /* 32: bitype */ ABSENT_NUMERIC, ++ /* 33: OTug */ ABSENT_NUMERIC, ++ /* 34: OTdC */ ABSENT_NUMERIC, ++ /* 35: OTdN */ ABSENT_NUMERIC, ++ /* 36: OTdB */ ABSENT_NUMERIC, ++ /* 37: OTdT */ ABSENT_NUMERIC, ++ /* 38: OTkn */ ABSENT_NUMERIC, ++}; ++static char * screen_xterm_xfree86_string_data[] = { ++ /* 0: cbt */ screen_xterm_xfree86_s_cbt, ++ /* 1: bel */ screen_xterm_xfree86_s_bel, ++ /* 2: cr */ screen_xterm_xfree86_s_cr, ++ /* 3: csr */ screen_xterm_xfree86_s_csr, ++ /* 4: tbc */ screen_xterm_xfree86_s_tbc, ++ /* 5: clear */ screen_xterm_xfree86_s_clear, ++ /* 6: el */ screen_xterm_xfree86_s_el, ++ /* 7: ed */ screen_xterm_xfree86_s_ed, ++ /* 8: hpa */ screen_xterm_xfree86_s_hpa, ++ /* 9: cmdch */ ABSENT_STRING, ++ /* 10: cup */ screen_xterm_xfree86_s_cup, ++ /* 11: cud1 */ screen_xterm_xfree86_s_cud1, ++ /* 12: home */ screen_xterm_xfree86_s_home, ++ /* 13: civis */ screen_xterm_xfree86_s_civis, ++ /* 14: cub1 */ screen_xterm_xfree86_s_cub1, ++ /* 15: mrcup */ ABSENT_STRING, ++ /* 16: cnorm */ screen_xterm_xfree86_s_cnorm, ++ /* 17: cuf1 */ screen_xterm_xfree86_s_cuf1, ++ /* 18: ll */ ABSENT_STRING, ++ /* 19: cuu1 */ screen_xterm_xfree86_s_cuu1, ++ /* 20: cvvis */ screen_xterm_xfree86_s_cvvis, ++ /* 21: dch1 */ screen_xterm_xfree86_s_dch1, ++ /* 22: dl1 */ screen_xterm_xfree86_s_dl1, ++ /* 23: dsl */ ABSENT_STRING, ++ /* 24: hd */ ABSENT_STRING, ++ /* 25: smacs */ screen_xterm_xfree86_s_smacs, ++ /* 26: blink */ screen_xterm_xfree86_s_blink, ++ /* 27: bold */ screen_xterm_xfree86_s_bold, ++ /* 28: smcup */ screen_xterm_xfree86_s_smcup, ++ /* 29: smdc */ ABSENT_STRING, ++ /* 30: dim */ screen_xterm_xfree86_s_dim, ++ /* 31: smir */ screen_xterm_xfree86_s_smir, ++ /* 32: invis */ CANCELLED_STRING, ++ /* 33: prot */ ABSENT_STRING, ++ /* 34: rev */ screen_xterm_xfree86_s_rev, ++ /* 35: smso */ screen_xterm_xfree86_s_smso, ++ /* 36: smul */ screen_xterm_xfree86_s_smul, ++ /* 37: ech */ screen_xterm_xfree86_s_ech, ++ /* 38: rmacs */ screen_xterm_xfree86_s_rmacs, ++ /* 39: sgr0 */ screen_xterm_xfree86_s_sgr0, ++ /* 40: rmcup */ screen_xterm_xfree86_s_rmcup, ++ /* 41: rmdc */ ABSENT_STRING, ++ /* 42: rmir */ screen_xterm_xfree86_s_rmir, ++ /* 43: rmso */ screen_xterm_xfree86_s_rmso, ++ /* 44: rmul */ screen_xterm_xfree86_s_rmul, ++ /* 45: flash */ screen_xterm_xfree86_s_flash, ++ /* 46: ff */ ABSENT_STRING, ++ /* 47: fsl */ ABSENT_STRING, ++ /* 48: is1 */ ABSENT_STRING, ++ /* 49: is2 */ screen_xterm_xfree86_s_is2, ++ /* 50: is3 */ ABSENT_STRING, ++ /* 51: if */ ABSENT_STRING, ++ /* 52: ich1 */ ABSENT_STRING, ++ /* 53: il1 */ screen_xterm_xfree86_s_il1, ++ /* 54: ip */ ABSENT_STRING, ++ /* 55: kbs */ screen_xterm_xfree86_s_kbs, ++ /* 56: ktbc */ ABSENT_STRING, ++ /* 57: kclr */ ABSENT_STRING, ++ /* 58: kctab */ ABSENT_STRING, ++ /* 59: kdch1 */ screen_xterm_xfree86_s_kdch1, ++ /* 60: kdl1 */ ABSENT_STRING, ++ /* 61: kcud1 */ screen_xterm_xfree86_s_kcud1, ++ /* 62: krmir */ ABSENT_STRING, ++ /* 63: kel */ ABSENT_STRING, ++ /* 64: ked */ ABSENT_STRING, ++ /* 65: kf0 */ ABSENT_STRING, ++ /* 66: kf1 */ screen_xterm_xfree86_s_kf1, ++ /* 67: kf10 */ screen_xterm_xfree86_s_kf10, ++ /* 68: kf2 */ screen_xterm_xfree86_s_kf2, ++ /* 69: kf3 */ screen_xterm_xfree86_s_kf3, ++ /* 70: kf4 */ screen_xterm_xfree86_s_kf4, ++ /* 71: kf5 */ screen_xterm_xfree86_s_kf5, ++ /* 72: kf6 */ screen_xterm_xfree86_s_kf6, ++ /* 73: kf7 */ screen_xterm_xfree86_s_kf7, ++ /* 74: kf8 */ screen_xterm_xfree86_s_kf8, ++ /* 75: kf9 */ screen_xterm_xfree86_s_kf9, ++ /* 76: khome */ screen_xterm_xfree86_s_khome, ++ /* 77: kich1 */ screen_xterm_xfree86_s_kich1, ++ /* 78: kil1 */ ABSENT_STRING, ++ /* 79: kcub1 */ screen_xterm_xfree86_s_kcub1, ++ /* 80: kll */ ABSENT_STRING, ++ /* 81: knp */ screen_xterm_xfree86_s_knp, ++ /* 82: kpp */ screen_xterm_xfree86_s_kpp, ++ /* 83: kcuf1 */ screen_xterm_xfree86_s_kcuf1, ++ /* 84: kind */ screen_xterm_xfree86_s_kind, ++ /* 85: kri */ screen_xterm_xfree86_s_kri, ++ /* 86: khts */ ABSENT_STRING, ++ /* 87: kcuu1 */ screen_xterm_xfree86_s_kcuu1, ++ /* 88: rmkx */ screen_xterm_xfree86_s_rmkx, ++ /* 89: smkx */ screen_xterm_xfree86_s_smkx, ++ /* 90: lf0 */ ABSENT_STRING, ++ /* 91: lf1 */ ABSENT_STRING, ++ /* 92: lf10 */ ABSENT_STRING, ++ /* 93: lf2 */ ABSENT_STRING, ++ /* 94: lf3 */ ABSENT_STRING, ++ /* 95: lf4 */ ABSENT_STRING, ++ /* 96: lf5 */ ABSENT_STRING, ++ /* 97: lf6 */ ABSENT_STRING, ++ /* 98: lf7 */ ABSENT_STRING, ++ /* 99: lf8 */ ABSENT_STRING, ++ /* 100: lf9 */ ABSENT_STRING, ++ /* 101: rmm */ screen_xterm_xfree86_s_rmm, ++ /* 102: smm */ screen_xterm_xfree86_s_smm, ++ /* 103: nel */ ABSENT_STRING, ++ /* 104: pad */ ABSENT_STRING, ++ /* 105: dch */ screen_xterm_xfree86_s_dch, ++ /* 106: dl */ screen_xterm_xfree86_s_dl, ++ /* 107: cud */ screen_xterm_xfree86_s_cud, ++ /* 108: ich */ screen_xterm_xfree86_s_ich, ++ /* 109: indn */ screen_xterm_xfree86_s_indn, ++ /* 110: il */ screen_xterm_xfree86_s_il, ++ /* 111: cub */ screen_xterm_xfree86_s_cub, ++ /* 112: cuf */ screen_xterm_xfree86_s_cuf, ++ /* 113: rin */ screen_xterm_xfree86_s_rin, ++ /* 114: cuu */ screen_xterm_xfree86_s_cuu, ++ /* 115: pfkey */ ABSENT_STRING, ++ /* 116: pfloc */ ABSENT_STRING, ++ /* 117: pfx */ ABSENT_STRING, ++ /* 118: mc0 */ screen_xterm_xfree86_s_mc0, ++ /* 119: mc4 */ screen_xterm_xfree86_s_mc4, ++ /* 120: mc5 */ screen_xterm_xfree86_s_mc5, ++ /* 121: rep */ CANCELLED_STRING, ++ /* 122: rs1 */ screen_xterm_xfree86_s_rs1, ++ /* 123: rs2 */ screen_xterm_xfree86_s_rs2, ++ /* 124: rs3 */ ABSENT_STRING, ++ /* 125: rf */ ABSENT_STRING, ++ /* 126: rc */ screen_xterm_xfree86_s_rc, ++ /* 127: vpa */ screen_xterm_xfree86_s_vpa, ++ /* 128: sc */ screen_xterm_xfree86_s_sc, ++ /* 129: ind */ screen_xterm_xfree86_s_ind, ++ /* 130: ri */ screen_xterm_xfree86_s_ri, ++ /* 131: sgr */ screen_xterm_xfree86_s_sgr, ++ /* 132: hts */ screen_xterm_xfree86_s_hts, ++ /* 133: wind */ ABSENT_STRING, ++ /* 134: ht */ screen_xterm_xfree86_s_ht, ++ /* 135: tsl */ ABSENT_STRING, ++ /* 136: uc */ ABSENT_STRING, ++ /* 137: hu */ ABSENT_STRING, ++ /* 138: iprog */ ABSENT_STRING, ++ /* 139: ka1 */ ABSENT_STRING, ++ /* 140: ka3 */ ABSENT_STRING, ++ /* 141: kb2 */ screen_xterm_xfree86_s_kb2, ++ /* 142: kc1 */ ABSENT_STRING, ++ /* 143: kc3 */ ABSENT_STRING, ++ /* 144: mc5p */ ABSENT_STRING, ++ /* 145: rmp */ ABSENT_STRING, ++ /* 146: acsc */ screen_xterm_xfree86_s_acsc, ++ /* 147: pln */ ABSENT_STRING, ++ /* 148: kcbt */ screen_xterm_xfree86_s_kcbt, ++ /* 149: smxon */ ABSENT_STRING, ++ /* 150: rmxon */ ABSENT_STRING, ++ /* 151: smam */ screen_xterm_xfree86_s_smam, ++ /* 152: rmam */ screen_xterm_xfree86_s_rmam, ++ /* 153: xonc */ ABSENT_STRING, ++ /* 154: xoffc */ ABSENT_STRING, ++ /* 155: enacs */ ABSENT_STRING, ++ /* 156: smln */ ABSENT_STRING, ++ /* 157: rmln */ ABSENT_STRING, ++ /* 158: kbeg */ ABSENT_STRING, ++ /* 159: kcan */ ABSENT_STRING, ++ /* 160: kclo */ ABSENT_STRING, ++ /* 161: kcmd */ ABSENT_STRING, ++ /* 162: kcpy */ ABSENT_STRING, ++ /* 163: kcrt */ ABSENT_STRING, ++ /* 164: kend */ screen_xterm_xfree86_s_kend, ++ /* 165: kent */ screen_xterm_xfree86_s_kent, ++ /* 166: kext */ ABSENT_STRING, ++ /* 167: kfnd */ ABSENT_STRING, ++ /* 168: khlp */ ABSENT_STRING, ++ /* 169: kmrk */ ABSENT_STRING, ++ /* 170: kmsg */ ABSENT_STRING, ++ /* 171: kmov */ ABSENT_STRING, ++ /* 172: knxt */ ABSENT_STRING, ++ /* 173: kopn */ ABSENT_STRING, ++ /* 174: kopt */ ABSENT_STRING, ++ /* 175: kprv */ ABSENT_STRING, ++ /* 176: kprt */ ABSENT_STRING, ++ /* 177: krdo */ ABSENT_STRING, ++ /* 178: kref */ ABSENT_STRING, ++ /* 179: krfr */ ABSENT_STRING, ++ /* 180: krpl */ ABSENT_STRING, ++ /* 181: krst */ ABSENT_STRING, ++ /* 182: kres */ ABSENT_STRING, ++ /* 183: ksav */ ABSENT_STRING, ++ /* 184: kspd */ ABSENT_STRING, ++ /* 185: kund */ ABSENT_STRING, ++ /* 186: kBEG */ ABSENT_STRING, ++ /* 187: kCAN */ ABSENT_STRING, ++ /* 188: kCMD */ ABSENT_STRING, ++ /* 189: kCPY */ ABSENT_STRING, ++ /* 190: kCRT */ ABSENT_STRING, ++ /* 191: kDC */ screen_xterm_xfree86_s_kDC, ++ /* 192: kDL */ ABSENT_STRING, ++ /* 193: kslt */ ABSENT_STRING, ++ /* 194: kEND */ screen_xterm_xfree86_s_kEND, ++ /* 195: kEOL */ ABSENT_STRING, ++ /* 196: kEXT */ ABSENT_STRING, ++ /* 197: kFND */ ABSENT_STRING, ++ /* 198: kHLP */ ABSENT_STRING, ++ /* 199: kHOM */ screen_xterm_xfree86_s_kHOM, ++ /* 200: kIC */ CANCELLED_STRING, ++ /* 201: kLFT */ screen_xterm_xfree86_s_kLFT, ++ /* 202: kMSG */ ABSENT_STRING, ++ /* 203: kMOV */ ABSENT_STRING, ++ /* 204: kNXT */ CANCELLED_STRING, ++ /* 205: kOPT */ ABSENT_STRING, ++ /* 206: kPRV */ CANCELLED_STRING, ++ /* 207: kPRT */ ABSENT_STRING, ++ /* 208: kRDO */ ABSENT_STRING, ++ /* 209: kRPL */ ABSENT_STRING, ++ /* 210: kRIT */ screen_xterm_xfree86_s_kRIT, ++ /* 211: kRES */ ABSENT_STRING, ++ /* 212: kSAV */ ABSENT_STRING, ++ /* 213: kSPD */ ABSENT_STRING, ++ /* 214: kUND */ ABSENT_STRING, ++ /* 215: rfi */ ABSENT_STRING, ++ /* 216: kf11 */ screen_xterm_xfree86_s_kf11, ++ /* 217: kf12 */ screen_xterm_xfree86_s_kf12, ++ /* 218: kf13 */ screen_xterm_xfree86_s_kf13, ++ /* 219: kf14 */ screen_xterm_xfree86_s_kf14, ++ /* 220: kf15 */ screen_xterm_xfree86_s_kf15, ++ /* 221: kf16 */ screen_xterm_xfree86_s_kf16, ++ /* 222: kf17 */ screen_xterm_xfree86_s_kf17, ++ /* 223: kf18 */ screen_xterm_xfree86_s_kf18, ++ /* 224: kf19 */ screen_xterm_xfree86_s_kf19, ++ /* 225: kf20 */ screen_xterm_xfree86_s_kf20, ++ /* 226: kf21 */ screen_xterm_xfree86_s_kf21, ++ /* 227: kf22 */ screen_xterm_xfree86_s_kf22, ++ /* 228: kf23 */ screen_xterm_xfree86_s_kf23, ++ /* 229: kf24 */ screen_xterm_xfree86_s_kf24, ++ /* 230: kf25 */ screen_xterm_xfree86_s_kf25, ++ /* 231: kf26 */ screen_xterm_xfree86_s_kf26, ++ /* 232: kf27 */ screen_xterm_xfree86_s_kf27, ++ /* 233: kf28 */ screen_xterm_xfree86_s_kf28, ++ /* 234: kf29 */ screen_xterm_xfree86_s_kf29, ++ /* 235: kf30 */ screen_xterm_xfree86_s_kf30, ++ /* 236: kf31 */ screen_xterm_xfree86_s_kf31, ++ /* 237: kf32 */ screen_xterm_xfree86_s_kf32, ++ /* 238: kf33 */ screen_xterm_xfree86_s_kf33, ++ /* 239: kf34 */ screen_xterm_xfree86_s_kf34, ++ /* 240: kf35 */ screen_xterm_xfree86_s_kf35, ++ /* 241: kf36 */ screen_xterm_xfree86_s_kf36, ++ /* 242: kf37 */ screen_xterm_xfree86_s_kf37, ++ /* 243: kf38 */ screen_xterm_xfree86_s_kf38, ++ /* 244: kf39 */ screen_xterm_xfree86_s_kf39, ++ /* 245: kf40 */ screen_xterm_xfree86_s_kf40, ++ /* 246: kf41 */ screen_xterm_xfree86_s_kf41, ++ /* 247: kf42 */ screen_xterm_xfree86_s_kf42, ++ /* 248: kf43 */ screen_xterm_xfree86_s_kf43, ++ /* 249: kf44 */ screen_xterm_xfree86_s_kf44, ++ /* 250: kf45 */ screen_xterm_xfree86_s_kf45, ++ /* 251: kf46 */ screen_xterm_xfree86_s_kf46, ++ /* 252: kf47 */ screen_xterm_xfree86_s_kf47, ++ /* 253: kf48 */ screen_xterm_xfree86_s_kf48, ++ /* 254: kf49 */ screen_xterm_xfree86_s_kf49, ++ /* 255: kf50 */ screen_xterm_xfree86_s_kf50, ++ /* 256: kf51 */ screen_xterm_xfree86_s_kf51, ++ /* 257: kf52 */ screen_xterm_xfree86_s_kf52, ++ /* 258: kf53 */ screen_xterm_xfree86_s_kf53, ++ /* 259: kf54 */ screen_xterm_xfree86_s_kf54, ++ /* 260: kf55 */ screen_xterm_xfree86_s_kf55, ++ /* 261: kf56 */ screen_xterm_xfree86_s_kf56, ++ /* 262: kf57 */ screen_xterm_xfree86_s_kf57, ++ /* 263: kf58 */ screen_xterm_xfree86_s_kf58, ++ /* 264: kf59 */ screen_xterm_xfree86_s_kf59, ++ /* 265: kf60 */ screen_xterm_xfree86_s_kf60, ++ /* 266: kf61 */ screen_xterm_xfree86_s_kf61, ++ /* 267: kf62 */ screen_xterm_xfree86_s_kf62, ++ /* 268: kf63 */ screen_xterm_xfree86_s_kf63, ++ /* 269: el1 */ screen_xterm_xfree86_s_el1, ++ /* 270: mgc */ ABSENT_STRING, ++ /* 271: smgl */ ABSENT_STRING, ++ /* 272: smgr */ ABSENT_STRING, ++ /* 273: fln */ ABSENT_STRING, ++ /* 274: sclk */ ABSENT_STRING, ++ /* 275: dclk */ ABSENT_STRING, ++ /* 276: rmclk */ ABSENT_STRING, ++ /* 277: cwin */ ABSENT_STRING, ++ /* 278: wingo */ ABSENT_STRING, ++ /* 279: hup */ ABSENT_STRING, ++ /* 280: dial */ ABSENT_STRING, ++ /* 281: qdial */ ABSENT_STRING, ++ /* 282: tone */ ABSENT_STRING, ++ /* 283: pulse */ ABSENT_STRING, ++ /* 284: hook */ ABSENT_STRING, ++ /* 285: pause */ ABSENT_STRING, ++ /* 286: wait */ ABSENT_STRING, ++ /* 287: u0 */ ABSENT_STRING, ++ /* 288: u1 */ ABSENT_STRING, ++ /* 289: u2 */ ABSENT_STRING, ++ /* 290: u3 */ ABSENT_STRING, ++ /* 291: u4 */ ABSENT_STRING, ++ /* 292: u5 */ ABSENT_STRING, ++ /* 293: u6 */ screen_xterm_xfree86_s_u6, ++ /* 294: u7 */ screen_xterm_xfree86_s_u7, ++ /* 295: u8 */ screen_xterm_xfree86_s_u8, ++ /* 296: u9 */ screen_xterm_xfree86_s_u9, ++ /* 297: op */ screen_xterm_xfree86_s_op, ++ /* 298: oc */ ABSENT_STRING, ++ /* 299: initc */ ABSENT_STRING, ++ /* 300: initp */ ABSENT_STRING, ++ /* 301: scp */ ABSENT_STRING, ++ /* 302: setf */ screen_xterm_xfree86_s_setf, ++ /* 303: setb */ screen_xterm_xfree86_s_setb, ++ /* 304: cpi */ ABSENT_STRING, ++ /* 305: lpi */ ABSENT_STRING, ++ /* 306: chr */ ABSENT_STRING, ++ /* 307: cvr */ ABSENT_STRING, ++ /* 308: defc */ ABSENT_STRING, ++ /* 309: swidm */ ABSENT_STRING, ++ /* 310: sdrfq */ ABSENT_STRING, ++ /* 311: sitm */ ABSENT_STRING, ++ /* 312: slm */ ABSENT_STRING, ++ /* 313: smicm */ ABSENT_STRING, ++ /* 314: snlq */ ABSENT_STRING, ++ /* 315: snrmq */ ABSENT_STRING, ++ /* 316: sshm */ ABSENT_STRING, ++ /* 317: ssubm */ ABSENT_STRING, ++ /* 318: ssupm */ ABSENT_STRING, ++ /* 319: sum */ ABSENT_STRING, ++ /* 320: rwidm */ ABSENT_STRING, ++ /* 321: ritm */ ABSENT_STRING, ++ /* 322: rlm */ ABSENT_STRING, ++ /* 323: rmicm */ ABSENT_STRING, ++ /* 324: rshm */ ABSENT_STRING, ++ /* 325: rsubm */ ABSENT_STRING, ++ /* 326: rsupm */ ABSENT_STRING, ++ /* 327: rum */ ABSENT_STRING, ++ /* 328: mhpa */ ABSENT_STRING, ++ /* 329: mcud1 */ ABSENT_STRING, ++ /* 330: mcub1 */ ABSENT_STRING, ++ /* 331: mcuf1 */ ABSENT_STRING, ++ /* 332: mvpa */ ABSENT_STRING, ++ /* 333: mcuu1 */ ABSENT_STRING, ++ /* 334: porder */ ABSENT_STRING, ++ /* 335: mcud */ ABSENT_STRING, ++ /* 336: mcub */ ABSENT_STRING, ++ /* 337: mcuf */ ABSENT_STRING, ++ /* 338: mcuu */ ABSENT_STRING, ++ /* 339: scs */ ABSENT_STRING, ++ /* 340: smgb */ ABSENT_STRING, ++ /* 341: smgbp */ ABSENT_STRING, ++ /* 342: smglp */ ABSENT_STRING, ++ /* 343: smgrp */ ABSENT_STRING, ++ /* 344: smgt */ ABSENT_STRING, ++ /* 345: smgtp */ ABSENT_STRING, ++ /* 346: sbim */ ABSENT_STRING, ++ /* 347: scsd */ ABSENT_STRING, ++ /* 348: rbim */ ABSENT_STRING, ++ /* 349: rcsd */ ABSENT_STRING, ++ /* 350: subcs */ ABSENT_STRING, ++ /* 351: supcs */ ABSENT_STRING, ++ /* 352: docr */ ABSENT_STRING, ++ /* 353: zerom */ ABSENT_STRING, ++ /* 354: csnm */ ABSENT_STRING, ++ /* 355: kmous */ screen_xterm_xfree86_s_kmous, ++ /* 356: minfo */ ABSENT_STRING, ++ /* 357: reqmp */ ABSENT_STRING, ++ /* 358: getm */ ABSENT_STRING, ++ /* 359: setaf */ screen_xterm_xfree86_s_setaf, ++ /* 360: setab */ screen_xterm_xfree86_s_setab, ++ /* 361: pfxl */ ABSENT_STRING, ++ /* 362: devt */ ABSENT_STRING, ++ /* 363: csin */ ABSENT_STRING, ++ /* 364: s0ds */ ABSENT_STRING, ++ /* 365: s1ds */ ABSENT_STRING, ++ /* 366: s2ds */ ABSENT_STRING, ++ /* 367: s3ds */ ABSENT_STRING, ++ /* 368: smglr */ ABSENT_STRING, ++ /* 369: smgtb */ ABSENT_STRING, ++ /* 370: birep */ ABSENT_STRING, ++ /* 371: binel */ ABSENT_STRING, ++ /* 372: bicr */ ABSENT_STRING, ++ /* 373: colornm */ ABSENT_STRING, ++ /* 374: defbi */ ABSENT_STRING, ++ /* 375: endbi */ ABSENT_STRING, ++ /* 376: setcolor */ ABSENT_STRING, ++ /* 377: slines */ ABSENT_STRING, ++ /* 378: dispc */ ABSENT_STRING, ++ /* 379: smpch */ ABSENT_STRING, ++ /* 380: rmpch */ ABSENT_STRING, ++ /* 381: smsc */ ABSENT_STRING, ++ /* 382: rmsc */ ABSENT_STRING, ++ /* 383: pctrm */ ABSENT_STRING, ++ /* 384: scesc */ ABSENT_STRING, ++ /* 385: scesa */ ABSENT_STRING, ++ /* 386: ehhlm */ ABSENT_STRING, ++ /* 387: elhlm */ ABSENT_STRING, ++ /* 388: elohlm */ ABSENT_STRING, ++ /* 389: erhlm */ ABSENT_STRING, ++ /* 390: ethlm */ ABSENT_STRING, ++ /* 391: evhlm */ ABSENT_STRING, ++ /* 392: sgr1 */ ABSENT_STRING, ++ /* 393: slength */ ABSENT_STRING, ++ /* 394: OTi2 */ ABSENT_STRING, ++ /* 395: OTrs */ ABSENT_STRING, ++ /* 396: OTnl */ ABSENT_STRING, ++ /* 397: OTbc */ ABSENT_STRING, ++ /* 398: OTko */ ABSENT_STRING, ++ /* 399: OTma */ ABSENT_STRING, ++ /* 400: OTG2 */ ABSENT_STRING, ++ /* 401: OTG3 */ ABSENT_STRING, ++ /* 402: OTG1 */ ABSENT_STRING, ++ /* 403: OTG4 */ ABSENT_STRING, ++ /* 404: OTGR */ ABSENT_STRING, ++ /* 405: OTGL */ ABSENT_STRING, ++ /* 406: OTGU */ ABSENT_STRING, ++ /* 407: OTGD */ ABSENT_STRING, ++ /* 408: OTGH */ ABSENT_STRING, ++ /* 409: OTGV */ ABSENT_STRING, ++ /* 410: OTGC */ ABSENT_STRING, ++ /* 411: meml */ CANCELLED_STRING, ++ /* 412: memu */ CANCELLED_STRING, ++ /* 413: box1 */ ABSENT_STRING, ++}; ++/* screen.xterm-256color */ ++ ++static char screen_xterm_256color_alias_data[] = "screen.xterm-256color|GNU Screen with xterm using 256 colors"; ++ ++static char screen_xterm_256color_s_cbt[] = "\033[Z"; ++static char screen_xterm_256color_s_bel[] = "\007"; ++static char screen_xterm_256color_s_cr[] = "\015"; ++static char screen_xterm_256color_s_csr[] = "\033[%i%p1%d;%p2%dr"; ++static char screen_xterm_256color_s_tbc[] = "\033[3g"; ++static char screen_xterm_256color_s_clear[] = "\033[H\033[2J"; ++static char screen_xterm_256color_s_el[] = "\033[K"; ++static char screen_xterm_256color_s_ed[] = "\033[J"; ++static char screen_xterm_256color_s_hpa[] = "\033[%i%p1%dG"; ++static char screen_xterm_256color_s_cup[] = "\033[%i%p1%d;%p2%dH"; ++static char screen_xterm_256color_s_cud1[] = "\012"; ++static char screen_xterm_256color_s_home[] = "\033[H"; ++static char screen_xterm_256color_s_civis[] = "\033[?25l"; ++static char screen_xterm_256color_s_cub1[] = "\010"; ++static char screen_xterm_256color_s_cnorm[] = "\033[?12l\033[?25h"; ++static char screen_xterm_256color_s_cuf1[] = "\033[C"; ++static char screen_xterm_256color_s_cuu1[] = "\033[A"; ++static char screen_xterm_256color_s_cvvis[] = "\033[?12;25h"; ++static char screen_xterm_256color_s_dch1[] = "\033[P"; ++static char screen_xterm_256color_s_dl1[] = "\033[M"; ++static char screen_xterm_256color_s_smacs[] = "\033(0"; ++static char screen_xterm_256color_s_blink[] = "\033[5m"; ++static char screen_xterm_256color_s_bold[] = "\033[1m"; ++static char screen_xterm_256color_s_smcup[] = "\033[?1049h\033[22;0;0t"; ++static char screen_xterm_256color_s_dim[] = "\033[2m"; ++static char screen_xterm_256color_s_smir[] = "\033[4h"; ++static char screen_xterm_256color_s_rev[] = "\033[7m"; ++static char screen_xterm_256color_s_smso[] = "\033[7m"; ++static char screen_xterm_256color_s_smul[] = "\033[4m"; ++static char screen_xterm_256color_s_ech[] = "\033[%p1%dX"; ++static char screen_xterm_256color_s_rmacs[] = "\033(B"; ++static char screen_xterm_256color_s_sgr0[] = "\033(B\033[m"; ++static char screen_xterm_256color_s_rmcup[] = "\033[?1049l\033[23;0;0t"; ++static char screen_xterm_256color_s_rmir[] = "\033[4l"; ++static char screen_xterm_256color_s_rmso[] = "\033[27m"; ++static char screen_xterm_256color_s_rmul[] = "\033[24m"; ++static char screen_xterm_256color_s_flash[] = "\033[?5h$<100/>\033[?5l"; ++static char screen_xterm_256color_s_is2[] = "\033[!p\033[?3;4l\033[4l\033>"; ++static char screen_xterm_256color_s_il1[] = "\033[L"; ++static char screen_xterm_256color_s_kbs[] = "\010"; ++static char screen_xterm_256color_s_kdch1[] = "\033[3~"; ++static char screen_xterm_256color_s_kcud1[] = "\033OB"; ++static char screen_xterm_256color_s_kf1[] = "\033OP"; ++static char screen_xterm_256color_s_kf10[] = "\033[21~"; ++static char screen_xterm_256color_s_kf2[] = "\033OQ"; ++static char screen_xterm_256color_s_kf3[] = "\033OR"; ++static char screen_xterm_256color_s_kf4[] = "\033OS"; ++static char screen_xterm_256color_s_kf5[] = "\033[15~"; ++static char screen_xterm_256color_s_kf6[] = "\033[17~"; ++static char screen_xterm_256color_s_kf7[] = "\033[18~"; ++static char screen_xterm_256color_s_kf8[] = "\033[19~"; ++static char screen_xterm_256color_s_kf9[] = "\033[20~"; ++static char screen_xterm_256color_s_khome[] = "\033[1~"; ++static char screen_xterm_256color_s_kich1[] = "\033[2~"; ++static char screen_xterm_256color_s_kcub1[] = "\033OD"; ++static char screen_xterm_256color_s_knp[] = "\033[6~"; ++static char screen_xterm_256color_s_kpp[] = "\033[5~"; ++static char screen_xterm_256color_s_kcuf1[] = "\033OC"; ++static char screen_xterm_256color_s_kind[] = "\033[1;2B"; ++static char screen_xterm_256color_s_kri[] = "\033[1;2A"; ++static char screen_xterm_256color_s_kcuu1[] = "\033OA"; ++static char screen_xterm_256color_s_rmkx[] = "\033[?1l\033>"; ++static char screen_xterm_256color_s_smkx[] = "\033[?1h\033="; ++static char screen_xterm_256color_s_rmm[] = "\033[?1034l"; ++static char screen_xterm_256color_s_smm[] = "\033[?1034h"; ++static char screen_xterm_256color_s_dch[] = "\033[%p1%dP"; ++static char screen_xterm_256color_s_dl[] = "\033[%p1%dM"; ++static char screen_xterm_256color_s_cud[] = "\033[%p1%dB"; ++static char screen_xterm_256color_s_ich[] = "\033[%p1%d@"; ++static char screen_xterm_256color_s_indn[] = "\033[%p1%dS"; ++static char screen_xterm_256color_s_il[] = "\033[%p1%dL"; ++static char screen_xterm_256color_s_cub[] = "\033[%p1%dD"; ++static char screen_xterm_256color_s_cuf[] = "\033[%p1%dC"; ++static char screen_xterm_256color_s_rin[] = "\033[%p1%dT"; ++static char screen_xterm_256color_s_cuu[] = "\033[%p1%dA"; ++static char screen_xterm_256color_s_mc0[] = "\033[i"; ++static char screen_xterm_256color_s_mc4[] = "\033[4i"; ++static char screen_xterm_256color_s_mc5[] = "\033[5i"; ++static char screen_xterm_256color_s_rs1[] = "\033c"; ++static char screen_xterm_256color_s_rs2[] = "\033[!p\033[?3;4l\033[4l\033>"; ++static char screen_xterm_256color_s_rc[] = "\0338"; ++static char screen_xterm_256color_s_vpa[] = "\033[%i%p1%dd"; ++static char screen_xterm_256color_s_sc[] = "\0337"; ++static char screen_xterm_256color_s_ind[] = "\012"; ++static char screen_xterm_256color_s_ri[] = "\033M"; ++static char screen_xterm_256color_s_sgr[] = "%?%p9%t\033(0%e\033(B%;\033[0%?%p6%t;1%;%?%p2%t;4%;%?%p1%p3%|%t;7%;%?%p4%t;5%;%?%p5%t;2%;m"; ++static char screen_xterm_256color_s_hts[] = "\033H"; ++static char screen_xterm_256color_s_ht[] = "\011"; ++static char screen_xterm_256color_s_kb2[] = "\033OE"; ++static char screen_xterm_256color_s_acsc[] = "``aaffggiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz{{||}}~~"; ++static char screen_xterm_256color_s_kcbt[] = "\033[Z"; ++static char screen_xterm_256color_s_smam[] = "\033[?7h"; ++static char screen_xterm_256color_s_rmam[] = "\033[?7l"; ++static char screen_xterm_256color_s_kend[] = "\033[4~"; ++static char screen_xterm_256color_s_kent[] = "\033OM"; ++static char screen_xterm_256color_s_kDC[] = "\033[3;2~"; ++static char screen_xterm_256color_s_kEND[] = "\033[1;2F"; ++static char screen_xterm_256color_s_kHOM[] = "\033[1;2H"; ++static char screen_xterm_256color_s_kLFT[] = "\033[1;2D"; ++static char screen_xterm_256color_s_kRIT[] = "\033[1;2C"; ++static char screen_xterm_256color_s_kf11[] = "\033[23~"; ++static char screen_xterm_256color_s_kf12[] = "\033[24~"; ++static char screen_xterm_256color_s_kf13[] = "\033[1;2P"; ++static char screen_xterm_256color_s_kf14[] = "\033[1;2Q"; ++static char screen_xterm_256color_s_kf15[] = "\033[1;2R"; ++static char screen_xterm_256color_s_kf16[] = "\033[1;2S"; ++static char screen_xterm_256color_s_kf17[] = "\033[15;2~"; ++static char screen_xterm_256color_s_kf18[] = "\033[17;2~"; ++static char screen_xterm_256color_s_kf19[] = "\033[18;2~"; ++static char screen_xterm_256color_s_kf20[] = "\033[19;2~"; ++static char screen_xterm_256color_s_kf21[] = "\033[20;2~"; ++static char screen_xterm_256color_s_kf22[] = "\033[21;2~"; ++static char screen_xterm_256color_s_kf23[] = "\033[23;2~"; ++static char screen_xterm_256color_s_kf24[] = "\033[24;2~"; ++static char screen_xterm_256color_s_kf25[] = "\033[1;5P"; ++static char screen_xterm_256color_s_kf26[] = "\033[1;5Q"; ++static char screen_xterm_256color_s_kf27[] = "\033[1;5R"; ++static char screen_xterm_256color_s_kf28[] = "\033[1;5S"; ++static char screen_xterm_256color_s_kf29[] = "\033[15;5~"; ++static char screen_xterm_256color_s_kf30[] = "\033[17;5~"; ++static char screen_xterm_256color_s_kf31[] = "\033[18;5~"; ++static char screen_xterm_256color_s_kf32[] = "\033[19;5~"; ++static char screen_xterm_256color_s_kf33[] = "\033[20;5~"; ++static char screen_xterm_256color_s_kf34[] = "\033[21;5~"; ++static char screen_xterm_256color_s_kf35[] = "\033[23;5~"; ++static char screen_xterm_256color_s_kf36[] = "\033[24;5~"; ++static char screen_xterm_256color_s_kf37[] = "\033[1;6P"; ++static char screen_xterm_256color_s_kf38[] = "\033[1;6Q"; ++static char screen_xterm_256color_s_kf39[] = "\033[1;6R"; ++static char screen_xterm_256color_s_kf40[] = "\033[1;6S"; ++static char screen_xterm_256color_s_kf41[] = "\033[15;6~"; ++static char screen_xterm_256color_s_kf42[] = "\033[17;6~"; ++static char screen_xterm_256color_s_kf43[] = "\033[18;6~"; ++static char screen_xterm_256color_s_kf44[] = "\033[19;6~"; ++static char screen_xterm_256color_s_kf45[] = "\033[20;6~"; ++static char screen_xterm_256color_s_kf46[] = "\033[21;6~"; ++static char screen_xterm_256color_s_kf47[] = "\033[23;6~"; ++static char screen_xterm_256color_s_kf48[] = "\033[24;6~"; ++static char screen_xterm_256color_s_kf49[] = "\033[1;3P"; ++static char screen_xterm_256color_s_kf50[] = "\033[1;3Q"; ++static char screen_xterm_256color_s_kf51[] = "\033[1;3R"; ++static char screen_xterm_256color_s_kf52[] = "\033[1;3S"; ++static char screen_xterm_256color_s_kf53[] = "\033[15;3~"; ++static char screen_xterm_256color_s_kf54[] = "\033[17;3~"; ++static char screen_xterm_256color_s_kf55[] = "\033[18;3~"; ++static char screen_xterm_256color_s_kf56[] = "\033[19;3~"; ++static char screen_xterm_256color_s_kf57[] = "\033[20;3~"; ++static char screen_xterm_256color_s_kf58[] = "\033[21;3~"; ++static char screen_xterm_256color_s_kf59[] = "\033[23;3~"; ++static char screen_xterm_256color_s_kf60[] = "\033[24;3~"; ++static char screen_xterm_256color_s_kf61[] = "\033[1;4P"; ++static char screen_xterm_256color_s_kf62[] = "\033[1;4Q"; ++static char screen_xterm_256color_s_kf63[] = "\033[1;4R"; ++static char screen_xterm_256color_s_el1[] = "\033[1K"; ++static char screen_xterm_256color_s_u6[] = "\033[%i%d;%dR"; ++static char screen_xterm_256color_s_u7[] = "\033[6n"; ++static char screen_xterm_256color_s_u8[] = "\033[?%[;0123456789]c"; ++static char screen_xterm_256color_s_u9[] = "\033[c"; ++static char screen_xterm_256color_s_op[] = "\033[39;49m"; ++static char screen_xterm_256color_s_kmous[] = "\033[M"; ++static char screen_xterm_256color_s_setaf[] = "\033[%?%p1%{8}%<%t3%p1%d%e%p1%{16}%<%t9%p1%{8}%-%d%e38;5;%p1%d%;m"; ++static char screen_xterm_256color_s_setab[] = "\033[%?%p1%{8}%<%t4%p1%d%e%p1%{16}%<%t10%p1%{8}%-%d%e48;5;%p1%d%;m"; ++ ++static char screen_xterm_256color_bool_data[] = { ++ /* 0: bw */ TRUE, ++ /* 1: am */ TRUE, ++ /* 2: xsb */ FALSE, ++ /* 3: xhp */ FALSE, ++ /* 4: xenl */ TRUE, ++ /* 5: eo */ FALSE, ++ /* 6: gn */ FALSE, ++ /* 7: hc */ FALSE, ++ /* 8: km */ TRUE, ++ /* 9: hs */ FALSE, ++ /* 10: in */ FALSE, ++ /* 11: da */ FALSE, ++ /* 12: db */ FALSE, ++ /* 13: mir */ TRUE, ++ /* 14: msgr */ TRUE, ++ /* 15: os */ FALSE, ++ /* 16: eslok */ FALSE, ++ /* 17: xt */ FALSE, ++ /* 18: hz */ FALSE, ++ /* 19: ul */ FALSE, ++ /* 20: xon */ FALSE, ++ /* 21: nxon */ FALSE, ++ /* 22: mc5i */ TRUE, ++ /* 23: chts */ FALSE, ++ /* 24: nrrmc */ FALSE, ++ /* 25: npc */ TRUE, ++ /* 26: ndscr */ FALSE, ++ /* 27: ccc */ FALSE, ++ /* 28: bce */ FALSE, ++ /* 29: hls */ FALSE, ++ /* 30: xhpa */ FALSE, ++ /* 31: crxm */ FALSE, ++ /* 32: daisy */ FALSE, ++ /* 33: xvpa */ FALSE, ++ /* 34: sam */ FALSE, ++ /* 35: cpix */ FALSE, ++ /* 36: lpix */ FALSE, ++ /* 37: OTbs */ TRUE, ++ /* 38: OTns */ FALSE, ++ /* 39: OTnc */ FALSE, ++ /* 40: OTMT */ FALSE, ++ /* 41: OTNL */ FALSE, ++ /* 42: OTpt */ FALSE, ++ /* 43: OTxr */ FALSE, ++}; ++static NCURSES_INT2 screen_xterm_256color_number_data[] = { ++ /* 0: cols */ 80, ++ /* 1: it */ 8, ++ /* 2: lines */ 24, ++ /* 3: lm */ ABSENT_NUMERIC, ++ /* 4: xmc */ ABSENT_NUMERIC, ++ /* 5: pb */ ABSENT_NUMERIC, ++ /* 6: vt */ ABSENT_NUMERIC, ++ /* 7: wsl */ ABSENT_NUMERIC, ++ /* 8: nlab */ ABSENT_NUMERIC, ++ /* 9: lh */ ABSENT_NUMERIC, ++ /* 10: lw */ ABSENT_NUMERIC, ++ /* 11: ma */ ABSENT_NUMERIC, ++ /* 12: wnum */ ABSENT_NUMERIC, ++ /* 13: colors */ 256, ++ /* 14: pairs */ 32767, ++ /* 15: ncv */ ABSENT_NUMERIC, ++ /* 16: bufsz */ ABSENT_NUMERIC, ++ /* 17: spinv */ ABSENT_NUMERIC, ++ /* 18: spinh */ ABSENT_NUMERIC, ++ /* 19: maddr */ ABSENT_NUMERIC, ++ /* 20: mjump */ ABSENT_NUMERIC, ++ /* 21: mcs */ ABSENT_NUMERIC, ++ /* 22: mls */ ABSENT_NUMERIC, ++ /* 23: npins */ ABSENT_NUMERIC, ++ /* 24: orc */ ABSENT_NUMERIC, ++ /* 25: orl */ ABSENT_NUMERIC, ++ /* 26: orhi */ ABSENT_NUMERIC, ++ /* 27: orvi */ ABSENT_NUMERIC, ++ /* 28: cps */ ABSENT_NUMERIC, ++ /* 29: widcs */ ABSENT_NUMERIC, ++ /* 30: btns */ ABSENT_NUMERIC, ++ /* 31: bitwin */ ABSENT_NUMERIC, ++ /* 32: bitype */ ABSENT_NUMERIC, ++ /* 33: OTug */ ABSENT_NUMERIC, ++ /* 34: OTdC */ ABSENT_NUMERIC, ++ /* 35: OTdN */ ABSENT_NUMERIC, ++ /* 36: OTdB */ ABSENT_NUMERIC, ++ /* 37: OTdT */ ABSENT_NUMERIC, ++ /* 38: OTkn */ ABSENT_NUMERIC, ++}; ++static char * screen_xterm_256color_string_data[] = { ++ /* 0: cbt */ screen_xterm_256color_s_cbt, ++ /* 1: bel */ screen_xterm_256color_s_bel, ++ /* 2: cr */ screen_xterm_256color_s_cr, ++ /* 3: csr */ screen_xterm_256color_s_csr, ++ /* 4: tbc */ screen_xterm_256color_s_tbc, ++ /* 5: clear */ screen_xterm_256color_s_clear, ++ /* 6: el */ screen_xterm_256color_s_el, ++ /* 7: ed */ screen_xterm_256color_s_ed, ++ /* 8: hpa */ screen_xterm_256color_s_hpa, ++ /* 9: cmdch */ ABSENT_STRING, ++ /* 10: cup */ screen_xterm_256color_s_cup, ++ /* 11: cud1 */ screen_xterm_256color_s_cud1, ++ /* 12: home */ screen_xterm_256color_s_home, ++ /* 13: civis */ screen_xterm_256color_s_civis, ++ /* 14: cub1 */ screen_xterm_256color_s_cub1, ++ /* 15: mrcup */ ABSENT_STRING, ++ /* 16: cnorm */ screen_xterm_256color_s_cnorm, ++ /* 17: cuf1 */ screen_xterm_256color_s_cuf1, ++ /* 18: ll */ ABSENT_STRING, ++ /* 19: cuu1 */ screen_xterm_256color_s_cuu1, ++ /* 20: cvvis */ screen_xterm_256color_s_cvvis, ++ /* 21: dch1 */ screen_xterm_256color_s_dch1, ++ /* 22: dl1 */ screen_xterm_256color_s_dl1, ++ /* 23: dsl */ ABSENT_STRING, ++ /* 24: hd */ ABSENT_STRING, ++ /* 25: smacs */ screen_xterm_256color_s_smacs, ++ /* 26: blink */ screen_xterm_256color_s_blink, ++ /* 27: bold */ screen_xterm_256color_s_bold, ++ /* 28: smcup */ screen_xterm_256color_s_smcup, ++ /* 29: smdc */ ABSENT_STRING, ++ /* 30: dim */ screen_xterm_256color_s_dim, ++ /* 31: smir */ screen_xterm_256color_s_smir, ++ /* 32: invis */ ABSENT_STRING, ++ /* 33: prot */ ABSENT_STRING, ++ /* 34: rev */ screen_xterm_256color_s_rev, ++ /* 35: smso */ screen_xterm_256color_s_smso, ++ /* 36: smul */ screen_xterm_256color_s_smul, ++ /* 37: ech */ screen_xterm_256color_s_ech, ++ /* 38: rmacs */ screen_xterm_256color_s_rmacs, ++ /* 39: sgr0 */ screen_xterm_256color_s_sgr0, ++ /* 40: rmcup */ screen_xterm_256color_s_rmcup, ++ /* 41: rmdc */ ABSENT_STRING, ++ /* 42: rmir */ screen_xterm_256color_s_rmir, ++ /* 43: rmso */ screen_xterm_256color_s_rmso, ++ /* 44: rmul */ screen_xterm_256color_s_rmul, ++ /* 45: flash */ screen_xterm_256color_s_flash, ++ /* 46: ff */ ABSENT_STRING, ++ /* 47: fsl */ ABSENT_STRING, ++ /* 48: is1 */ ABSENT_STRING, ++ /* 49: is2 */ screen_xterm_256color_s_is2, ++ /* 50: is3 */ ABSENT_STRING, ++ /* 51: if */ ABSENT_STRING, ++ /* 52: ich1 */ ABSENT_STRING, ++ /* 53: il1 */ screen_xterm_256color_s_il1, ++ /* 54: ip */ ABSENT_STRING, ++ /* 55: kbs */ screen_xterm_256color_s_kbs, ++ /* 56: ktbc */ ABSENT_STRING, ++ /* 57: kclr */ ABSENT_STRING, ++ /* 58: kctab */ ABSENT_STRING, ++ /* 59: kdch1 */ screen_xterm_256color_s_kdch1, ++ /* 60: kdl1 */ ABSENT_STRING, ++ /* 61: kcud1 */ screen_xterm_256color_s_kcud1, ++ /* 62: krmir */ ABSENT_STRING, ++ /* 63: kel */ ABSENT_STRING, ++ /* 64: ked */ ABSENT_STRING, ++ /* 65: kf0 */ ABSENT_STRING, ++ /* 66: kf1 */ screen_xterm_256color_s_kf1, ++ /* 67: kf10 */ screen_xterm_256color_s_kf10, ++ /* 68: kf2 */ screen_xterm_256color_s_kf2, ++ /* 69: kf3 */ screen_xterm_256color_s_kf3, ++ /* 70: kf4 */ screen_xterm_256color_s_kf4, ++ /* 71: kf5 */ screen_xterm_256color_s_kf5, ++ /* 72: kf6 */ screen_xterm_256color_s_kf6, ++ /* 73: kf7 */ screen_xterm_256color_s_kf7, ++ /* 74: kf8 */ screen_xterm_256color_s_kf8, ++ /* 75: kf9 */ screen_xterm_256color_s_kf9, ++ /* 76: khome */ screen_xterm_256color_s_khome, ++ /* 77: kich1 */ screen_xterm_256color_s_kich1, ++ /* 78: kil1 */ ABSENT_STRING, ++ /* 79: kcub1 */ screen_xterm_256color_s_kcub1, ++ /* 80: kll */ ABSENT_STRING, ++ /* 81: knp */ screen_xterm_256color_s_knp, ++ /* 82: kpp */ screen_xterm_256color_s_kpp, ++ /* 83: kcuf1 */ screen_xterm_256color_s_kcuf1, ++ /* 84: kind */ screen_xterm_256color_s_kind, ++ /* 85: kri */ screen_xterm_256color_s_kri, ++ /* 86: khts */ ABSENT_STRING, ++ /* 87: kcuu1 */ screen_xterm_256color_s_kcuu1, ++ /* 88: rmkx */ screen_xterm_256color_s_rmkx, ++ /* 89: smkx */ screen_xterm_256color_s_smkx, ++ /* 90: lf0 */ ABSENT_STRING, ++ /* 91: lf1 */ ABSENT_STRING, ++ /* 92: lf10 */ ABSENT_STRING, ++ /* 93: lf2 */ ABSENT_STRING, ++ /* 94: lf3 */ ABSENT_STRING, ++ /* 95: lf4 */ ABSENT_STRING, ++ /* 96: lf5 */ ABSENT_STRING, ++ /* 97: lf6 */ ABSENT_STRING, ++ /* 98: lf7 */ ABSENT_STRING, ++ /* 99: lf8 */ ABSENT_STRING, ++ /* 100: lf9 */ ABSENT_STRING, ++ /* 101: rmm */ screen_xterm_256color_s_rmm, ++ /* 102: smm */ screen_xterm_256color_s_smm, ++ /* 103: nel */ ABSENT_STRING, ++ /* 104: pad */ ABSENT_STRING, ++ /* 105: dch */ screen_xterm_256color_s_dch, ++ /* 106: dl */ screen_xterm_256color_s_dl, ++ /* 107: cud */ screen_xterm_256color_s_cud, ++ /* 108: ich */ screen_xterm_256color_s_ich, ++ /* 109: indn */ screen_xterm_256color_s_indn, ++ /* 110: il */ screen_xterm_256color_s_il, ++ /* 111: cub */ screen_xterm_256color_s_cub, ++ /* 112: cuf */ screen_xterm_256color_s_cuf, ++ /* 113: rin */ screen_xterm_256color_s_rin, ++ /* 114: cuu */ screen_xterm_256color_s_cuu, ++ /* 115: pfkey */ ABSENT_STRING, ++ /* 116: pfloc */ ABSENT_STRING, ++ /* 117: pfx */ ABSENT_STRING, ++ /* 118: mc0 */ screen_xterm_256color_s_mc0, ++ /* 119: mc4 */ screen_xterm_256color_s_mc4, ++ /* 120: mc5 */ screen_xterm_256color_s_mc5, ++ /* 121: rep */ ABSENT_STRING, ++ /* 122: rs1 */ screen_xterm_256color_s_rs1, ++ /* 123: rs2 */ screen_xterm_256color_s_rs2, ++ /* 124: rs3 */ ABSENT_STRING, ++ /* 125: rf */ ABSENT_STRING, ++ /* 126: rc */ screen_xterm_256color_s_rc, ++ /* 127: vpa */ screen_xterm_256color_s_vpa, ++ /* 128: sc */ screen_xterm_256color_s_sc, ++ /* 129: ind */ screen_xterm_256color_s_ind, ++ /* 130: ri */ screen_xterm_256color_s_ri, ++ /* 131: sgr */ screen_xterm_256color_s_sgr, ++ /* 132: hts */ screen_xterm_256color_s_hts, ++ /* 133: wind */ ABSENT_STRING, ++ /* 134: ht */ screen_xterm_256color_s_ht, ++ /* 135: tsl */ ABSENT_STRING, ++ /* 136: uc */ ABSENT_STRING, ++ /* 137: hu */ ABSENT_STRING, ++ /* 138: iprog */ ABSENT_STRING, ++ /* 139: ka1 */ ABSENT_STRING, ++ /* 140: ka3 */ ABSENT_STRING, ++ /* 141: kb2 */ screen_xterm_256color_s_kb2, ++ /* 142: kc1 */ ABSENT_STRING, ++ /* 143: kc3 */ ABSENT_STRING, ++ /* 144: mc5p */ ABSENT_STRING, ++ /* 145: rmp */ ABSENT_STRING, ++ /* 146: acsc */ screen_xterm_256color_s_acsc, ++ /* 147: pln */ ABSENT_STRING, ++ /* 148: kcbt */ screen_xterm_256color_s_kcbt, ++ /* 149: smxon */ ABSENT_STRING, ++ /* 150: rmxon */ ABSENT_STRING, ++ /* 151: smam */ screen_xterm_256color_s_smam, ++ /* 152: rmam */ screen_xterm_256color_s_rmam, ++ /* 153: xonc */ ABSENT_STRING, ++ /* 154: xoffc */ ABSENT_STRING, ++ /* 155: enacs */ ABSENT_STRING, ++ /* 156: smln */ ABSENT_STRING, ++ /* 157: rmln */ ABSENT_STRING, ++ /* 158: kbeg */ ABSENT_STRING, ++ /* 159: kcan */ ABSENT_STRING, ++ /* 160: kclo */ ABSENT_STRING, ++ /* 161: kcmd */ ABSENT_STRING, ++ /* 162: kcpy */ ABSENT_STRING, ++ /* 163: kcrt */ ABSENT_STRING, ++ /* 164: kend */ screen_xterm_256color_s_kend, ++ /* 165: kent */ screen_xterm_256color_s_kent, ++ /* 166: kext */ ABSENT_STRING, ++ /* 167: kfnd */ ABSENT_STRING, ++ /* 168: khlp */ ABSENT_STRING, ++ /* 169: kmrk */ ABSENT_STRING, ++ /* 170: kmsg */ ABSENT_STRING, ++ /* 171: kmov */ ABSENT_STRING, ++ /* 172: knxt */ ABSENT_STRING, ++ /* 173: kopn */ ABSENT_STRING, ++ /* 174: kopt */ ABSENT_STRING, ++ /* 175: kprv */ ABSENT_STRING, ++ /* 176: kprt */ ABSENT_STRING, ++ /* 177: krdo */ ABSENT_STRING, ++ /* 178: kref */ ABSENT_STRING, ++ /* 179: krfr */ ABSENT_STRING, ++ /* 180: krpl */ ABSENT_STRING, ++ /* 181: krst */ ABSENT_STRING, ++ /* 182: kres */ ABSENT_STRING, ++ /* 183: ksav */ ABSENT_STRING, ++ /* 184: kspd */ ABSENT_STRING, ++ /* 185: kund */ ABSENT_STRING, ++ /* 186: kBEG */ ABSENT_STRING, ++ /* 187: kCAN */ ABSENT_STRING, ++ /* 188: kCMD */ ABSENT_STRING, ++ /* 189: kCPY */ ABSENT_STRING, ++ /* 190: kCRT */ ABSENT_STRING, ++ /* 191: kDC */ screen_xterm_256color_s_kDC, ++ /* 192: kDL */ ABSENT_STRING, ++ /* 193: kslt */ ABSENT_STRING, ++ /* 194: kEND */ screen_xterm_256color_s_kEND, ++ /* 195: kEOL */ ABSENT_STRING, ++ /* 196: kEXT */ ABSENT_STRING, ++ /* 197: kFND */ ABSENT_STRING, ++ /* 198: kHLP */ ABSENT_STRING, ++ /* 199: kHOM */ screen_xterm_256color_s_kHOM, ++ /* 200: kIC */ ABSENT_STRING, ++ /* 201: kLFT */ screen_xterm_256color_s_kLFT, ++ /* 202: kMSG */ ABSENT_STRING, ++ /* 203: kMOV */ ABSENT_STRING, ++ /* 204: kNXT */ ABSENT_STRING, ++ /* 205: kOPT */ ABSENT_STRING, ++ /* 206: kPRV */ ABSENT_STRING, ++ /* 207: kPRT */ ABSENT_STRING, ++ /* 208: kRDO */ ABSENT_STRING, ++ /* 209: kRPL */ ABSENT_STRING, ++ /* 210: kRIT */ screen_xterm_256color_s_kRIT, ++ /* 211: kRES */ ABSENT_STRING, ++ /* 212: kSAV */ ABSENT_STRING, ++ /* 213: kSPD */ ABSENT_STRING, ++ /* 214: kUND */ ABSENT_STRING, ++ /* 215: rfi */ ABSENT_STRING, ++ /* 216: kf11 */ screen_xterm_256color_s_kf11, ++ /* 217: kf12 */ screen_xterm_256color_s_kf12, ++ /* 218: kf13 */ screen_xterm_256color_s_kf13, ++ /* 219: kf14 */ screen_xterm_256color_s_kf14, ++ /* 220: kf15 */ screen_xterm_256color_s_kf15, ++ /* 221: kf16 */ screen_xterm_256color_s_kf16, ++ /* 222: kf17 */ screen_xterm_256color_s_kf17, ++ /* 223: kf18 */ screen_xterm_256color_s_kf18, ++ /* 224: kf19 */ screen_xterm_256color_s_kf19, ++ /* 225: kf20 */ screen_xterm_256color_s_kf20, ++ /* 226: kf21 */ screen_xterm_256color_s_kf21, ++ /* 227: kf22 */ screen_xterm_256color_s_kf22, ++ /* 228: kf23 */ screen_xterm_256color_s_kf23, ++ /* 229: kf24 */ screen_xterm_256color_s_kf24, ++ /* 230: kf25 */ screen_xterm_256color_s_kf25, ++ /* 231: kf26 */ screen_xterm_256color_s_kf26, ++ /* 232: kf27 */ screen_xterm_256color_s_kf27, ++ /* 233: kf28 */ screen_xterm_256color_s_kf28, ++ /* 234: kf29 */ screen_xterm_256color_s_kf29, ++ /* 235: kf30 */ screen_xterm_256color_s_kf30, ++ /* 236: kf31 */ screen_xterm_256color_s_kf31, ++ /* 237: kf32 */ screen_xterm_256color_s_kf32, ++ /* 238: kf33 */ screen_xterm_256color_s_kf33, ++ /* 239: kf34 */ screen_xterm_256color_s_kf34, ++ /* 240: kf35 */ screen_xterm_256color_s_kf35, ++ /* 241: kf36 */ screen_xterm_256color_s_kf36, ++ /* 242: kf37 */ screen_xterm_256color_s_kf37, ++ /* 243: kf38 */ screen_xterm_256color_s_kf38, ++ /* 244: kf39 */ screen_xterm_256color_s_kf39, ++ /* 245: kf40 */ screen_xterm_256color_s_kf40, ++ /* 246: kf41 */ screen_xterm_256color_s_kf41, ++ /* 247: kf42 */ screen_xterm_256color_s_kf42, ++ /* 248: kf43 */ screen_xterm_256color_s_kf43, ++ /* 249: kf44 */ screen_xterm_256color_s_kf44, ++ /* 250: kf45 */ screen_xterm_256color_s_kf45, ++ /* 251: kf46 */ screen_xterm_256color_s_kf46, ++ /* 252: kf47 */ screen_xterm_256color_s_kf47, ++ /* 253: kf48 */ screen_xterm_256color_s_kf48, ++ /* 254: kf49 */ screen_xterm_256color_s_kf49, ++ /* 255: kf50 */ screen_xterm_256color_s_kf50, ++ /* 256: kf51 */ screen_xterm_256color_s_kf51, ++ /* 257: kf52 */ screen_xterm_256color_s_kf52, ++ /* 258: kf53 */ screen_xterm_256color_s_kf53, ++ /* 259: kf54 */ screen_xterm_256color_s_kf54, ++ /* 260: kf55 */ screen_xterm_256color_s_kf55, ++ /* 261: kf56 */ screen_xterm_256color_s_kf56, ++ /* 262: kf57 */ screen_xterm_256color_s_kf57, ++ /* 263: kf58 */ screen_xterm_256color_s_kf58, ++ /* 264: kf59 */ screen_xterm_256color_s_kf59, ++ /* 265: kf60 */ screen_xterm_256color_s_kf60, ++ /* 266: kf61 */ screen_xterm_256color_s_kf61, ++ /* 267: kf62 */ screen_xterm_256color_s_kf62, ++ /* 268: kf63 */ screen_xterm_256color_s_kf63, ++ /* 269: el1 */ screen_xterm_256color_s_el1, ++ /* 270: mgc */ ABSENT_STRING, ++ /* 271: smgl */ ABSENT_STRING, ++ /* 272: smgr */ ABSENT_STRING, ++ /* 273: fln */ ABSENT_STRING, ++ /* 274: sclk */ ABSENT_STRING, ++ /* 275: dclk */ ABSENT_STRING, ++ /* 276: rmclk */ ABSENT_STRING, ++ /* 277: cwin */ ABSENT_STRING, ++ /* 278: wingo */ ABSENT_STRING, ++ /* 279: hup */ ABSENT_STRING, ++ /* 280: dial */ ABSENT_STRING, ++ /* 281: qdial */ ABSENT_STRING, ++ /* 282: tone */ ABSENT_STRING, ++ /* 283: pulse */ ABSENT_STRING, ++ /* 284: hook */ ABSENT_STRING, ++ /* 285: pause */ ABSENT_STRING, ++ /* 286: wait */ ABSENT_STRING, ++ /* 287: u0 */ ABSENT_STRING, ++ /* 288: u1 */ ABSENT_STRING, ++ /* 289: u2 */ ABSENT_STRING, ++ /* 290: u3 */ ABSENT_STRING, ++ /* 291: u4 */ ABSENT_STRING, ++ /* 292: u5 */ ABSENT_STRING, ++ /* 293: u6 */ screen_xterm_256color_s_u6, ++ /* 294: u7 */ screen_xterm_256color_s_u7, ++ /* 295: u8 */ screen_xterm_256color_s_u8, ++ /* 296: u9 */ screen_xterm_256color_s_u9, ++ /* 297: op */ screen_xterm_256color_s_op, ++ /* 298: oc */ ABSENT_STRING, ++ /* 299: initc */ ABSENT_STRING, ++ /* 300: initp */ ABSENT_STRING, ++ /* 301: scp */ ABSENT_STRING, ++ /* 302: setf */ ABSENT_STRING, ++ /* 303: setb */ ABSENT_STRING, ++ /* 304: cpi */ ABSENT_STRING, ++ /* 305: lpi */ ABSENT_STRING, ++ /* 306: chr */ ABSENT_STRING, ++ /* 307: cvr */ ABSENT_STRING, ++ /* 308: defc */ ABSENT_STRING, ++ /* 309: swidm */ ABSENT_STRING, ++ /* 310: sdrfq */ ABSENT_STRING, ++ /* 311: sitm */ ABSENT_STRING, ++ /* 312: slm */ ABSENT_STRING, ++ /* 313: smicm */ ABSENT_STRING, ++ /* 314: snlq */ ABSENT_STRING, ++ /* 315: snrmq */ ABSENT_STRING, ++ /* 316: sshm */ ABSENT_STRING, ++ /* 317: ssubm */ ABSENT_STRING, ++ /* 318: ssupm */ ABSENT_STRING, ++ /* 319: sum */ ABSENT_STRING, ++ /* 320: rwidm */ ABSENT_STRING, ++ /* 321: ritm */ ABSENT_STRING, ++ /* 322: rlm */ ABSENT_STRING, ++ /* 323: rmicm */ ABSENT_STRING, ++ /* 324: rshm */ ABSENT_STRING, ++ /* 325: rsubm */ ABSENT_STRING, ++ /* 326: rsupm */ ABSENT_STRING, ++ /* 327: rum */ ABSENT_STRING, ++ /* 328: mhpa */ ABSENT_STRING, ++ /* 329: mcud1 */ ABSENT_STRING, ++ /* 330: mcub1 */ ABSENT_STRING, ++ /* 331: mcuf1 */ ABSENT_STRING, ++ /* 332: mvpa */ ABSENT_STRING, ++ /* 333: mcuu1 */ ABSENT_STRING, ++ /* 334: porder */ ABSENT_STRING, ++ /* 335: mcud */ ABSENT_STRING, ++ /* 336: mcub */ ABSENT_STRING, ++ /* 337: mcuf */ ABSENT_STRING, ++ /* 338: mcuu */ ABSENT_STRING, ++ /* 339: scs */ ABSENT_STRING, ++ /* 340: smgb */ ABSENT_STRING, ++ /* 341: smgbp */ ABSENT_STRING, ++ /* 342: smglp */ ABSENT_STRING, ++ /* 343: smgrp */ ABSENT_STRING, ++ /* 344: smgt */ ABSENT_STRING, ++ /* 345: smgtp */ ABSENT_STRING, ++ /* 346: sbim */ ABSENT_STRING, ++ /* 347: scsd */ ABSENT_STRING, ++ /* 348: rbim */ ABSENT_STRING, ++ /* 349: rcsd */ ABSENT_STRING, ++ /* 350: subcs */ ABSENT_STRING, ++ /* 351: supcs */ ABSENT_STRING, ++ /* 352: docr */ ABSENT_STRING, ++ /* 353: zerom */ ABSENT_STRING, ++ /* 354: csnm */ ABSENT_STRING, ++ /* 355: kmous */ screen_xterm_256color_s_kmous, ++ /* 356: minfo */ ABSENT_STRING, ++ /* 357: reqmp */ ABSENT_STRING, ++ /* 358: getm */ ABSENT_STRING, ++ /* 359: setaf */ screen_xterm_256color_s_setaf, ++ /* 360: setab */ screen_xterm_256color_s_setab, ++ /* 361: pfxl */ ABSENT_STRING, ++ /* 362: devt */ ABSENT_STRING, ++ /* 363: csin */ ABSENT_STRING, ++ /* 364: s0ds */ ABSENT_STRING, ++ /* 365: s1ds */ ABSENT_STRING, ++ /* 366: s2ds */ ABSENT_STRING, ++ /* 367: s3ds */ ABSENT_STRING, ++ /* 368: smglr */ ABSENT_STRING, ++ /* 369: smgtb */ ABSENT_STRING, ++ /* 370: birep */ ABSENT_STRING, ++ /* 371: binel */ ABSENT_STRING, ++ /* 372: bicr */ ABSENT_STRING, ++ /* 373: colornm */ ABSENT_STRING, ++ /* 374: defbi */ ABSENT_STRING, ++ /* 375: endbi */ ABSENT_STRING, ++ /* 376: setcolor */ ABSENT_STRING, ++ /* 377: slines */ ABSENT_STRING, ++ /* 378: dispc */ ABSENT_STRING, ++ /* 379: smpch */ ABSENT_STRING, ++ /* 380: rmpch */ ABSENT_STRING, ++ /* 381: smsc */ ABSENT_STRING, ++ /* 382: rmsc */ ABSENT_STRING, ++ /* 383: pctrm */ ABSENT_STRING, ++ /* 384: scesc */ ABSENT_STRING, ++ /* 385: scesa */ ABSENT_STRING, ++ /* 386: ehhlm */ ABSENT_STRING, ++ /* 387: elhlm */ ABSENT_STRING, ++ /* 388: elohlm */ ABSENT_STRING, ++ /* 389: erhlm */ ABSENT_STRING, ++ /* 390: ethlm */ ABSENT_STRING, ++ /* 391: evhlm */ ABSENT_STRING, ++ /* 392: sgr1 */ ABSENT_STRING, ++ /* 393: slength */ ABSENT_STRING, ++ /* 394: OTi2 */ ABSENT_STRING, ++ /* 395: OTrs */ ABSENT_STRING, ++ /* 396: OTnl */ ABSENT_STRING, ++ /* 397: OTbc */ ABSENT_STRING, ++ /* 398: OTko */ ABSENT_STRING, ++ /* 399: OTma */ ABSENT_STRING, ++ /* 400: OTG2 */ ABSENT_STRING, ++ /* 401: OTG3 */ ABSENT_STRING, ++ /* 402: OTG1 */ ABSENT_STRING, ++ /* 403: OTG4 */ ABSENT_STRING, ++ /* 404: OTGR */ ABSENT_STRING, ++ /* 405: OTGL */ ABSENT_STRING, ++ /* 406: OTGU */ ABSENT_STRING, ++ /* 407: OTGD */ ABSENT_STRING, ++ /* 408: OTGH */ ABSENT_STRING, ++ /* 409: OTGV */ ABSENT_STRING, ++ /* 410: OTGC */ ABSENT_STRING, ++ /* 411: meml */ ABSENT_STRING, ++ /* 412: memu */ ABSENT_STRING, ++ /* 413: box1 */ ABSENT_STRING, ++}; ++static const TERMTYPE2 fallbacks[10] = ++{ ++ /* linux */ ++ { ++ linux_alias_data, ++ (char *)0, /* pointer to string table */ ++ linux_bool_data, ++ linux_number_data, ++ linux_string_data, ++#if NCURSES_XNAMES ++ (char *)0, /* pointer to extended string table */ ++ (char **)0, /* ...corresponding names */ ++ 44, /* count total Booleans */ ++ 39, /* count total Numbers */ ++ 414, /* count total Strings */ ++ 0, /* count extensions to Booleans */ ++ 0, /* count extensions to Numbers */ ++ 0, /* count extensions to Strings */ ++#endif /* NCURSES_XNAMES */ ++ } ++, /* rxvt */ ++ { ++ rxvt_alias_data, ++ (char *)0, /* pointer to string table */ ++ rxvt_bool_data, ++ rxvt_number_data, ++ rxvt_string_data, ++#if NCURSES_XNAMES ++ (char *)0, /* pointer to extended string table */ ++ (char **)0, /* ...corresponding names */ ++ 44, /* count total Booleans */ ++ 39, /* count total Numbers */ ++ 414, /* count total Strings */ ++ 0, /* count extensions to Booleans */ ++ 0, /* count extensions to Numbers */ ++ 0, /* count extensions to Strings */ ++#endif /* NCURSES_XNAMES */ ++ } ++, /* vt100 */ ++ { ++ vt100_alias_data, ++ (char *)0, /* pointer to string table */ ++ vt100_bool_data, ++ vt100_number_data, ++ vt100_string_data, ++#if NCURSES_XNAMES ++ (char *)0, /* pointer to extended string table */ ++ (char **)0, /* ...corresponding names */ ++ 44, /* count total Booleans */ ++ 39, /* count total Numbers */ ++ 414, /* count total Strings */ ++ 0, /* count extensions to Booleans */ ++ 0, /* count extensions to Numbers */ ++ 0, /* count extensions to Strings */ ++#endif /* NCURSES_XNAMES */ ++ } ++, /* xterm */ ++ { ++ xterm_alias_data, ++ (char *)0, /* pointer to string table */ ++ xterm_bool_data, ++ xterm_number_data, ++ xterm_string_data, ++#if NCURSES_XNAMES ++ (char *)0, /* pointer to extended string table */ ++ (char **)0, /* ...corresponding names */ ++ 44, /* count total Booleans */ ++ 39, /* count total Numbers */ ++ 414, /* count total Strings */ ++ 0, /* count extensions to Booleans */ ++ 0, /* count extensions to Numbers */ ++ 0, /* count extensions to Strings */ ++#endif /* NCURSES_XNAMES */ ++ } ++, /* xterm-256color */ ++ { ++ xterm_256color_alias_data, ++ (char *)0, /* pointer to string table */ ++ xterm_256color_bool_data, ++ xterm_256color_number_data, ++ xterm_256color_string_data, ++#if NCURSES_XNAMES ++ (char *)0, /* pointer to extended string table */ ++ (char **)0, /* ...corresponding names */ ++ 44, /* count total Booleans */ ++ 39, /* count total Numbers */ ++ 414, /* count total Strings */ ++ 0, /* count extensions to Booleans */ ++ 0, /* count extensions to Numbers */ ++ 0, /* count extensions to Strings */ ++#endif /* NCURSES_XNAMES */ ++ } ++, /* screen */ ++ { ++ screen_alias_data, ++ (char *)0, /* pointer to string table */ ++ screen_bool_data, ++ screen_number_data, ++ screen_string_data, ++#if NCURSES_XNAMES ++ (char *)0, /* pointer to extended string table */ ++ (char **)0, /* ...corresponding names */ ++ 44, /* count total Booleans */ ++ 39, /* count total Numbers */ ++ 414, /* count total Strings */ ++ 0, /* count extensions to Booleans */ ++ 0, /* count extensions to Numbers */ ++ 0, /* count extensions to Strings */ ++#endif /* NCURSES_XNAMES */ ++ } ++, /* screen.linux */ ++ { ++ screen_linux_alias_data, ++ (char *)0, /* pointer to string table */ ++ screen_linux_bool_data, ++ screen_linux_number_data, ++ screen_linux_string_data, ++#if NCURSES_XNAMES ++ (char *)0, /* pointer to extended string table */ ++ (char **)0, /* ...corresponding names */ ++ 44, /* count total Booleans */ ++ 39, /* count total Numbers */ ++ 414, /* count total Strings */ ++ 0, /* count extensions to Booleans */ ++ 0, /* count extensions to Numbers */ ++ 0, /* count extensions to Strings */ ++#endif /* NCURSES_XNAMES */ ++ } ++, /* screen.rxvt */ ++ { ++ screen_rxvt_alias_data, ++ (char *)0, /* pointer to string table */ ++ screen_rxvt_bool_data, ++ screen_rxvt_number_data, ++ screen_rxvt_string_data, ++#if NCURSES_XNAMES ++ (char *)0, /* pointer to extended string table */ ++ (char **)0, /* ...corresponding names */ ++ 44, /* count total Booleans */ ++ 39, /* count total Numbers */ ++ 414, /* count total Strings */ ++ 0, /* count extensions to Booleans */ ++ 0, /* count extensions to Numbers */ ++ 0, /* count extensions to Strings */ ++#endif /* NCURSES_XNAMES */ ++ } ++, /* screen.xterm-new */ ++ { ++ screen_xterm_xfree86_alias_data, ++ (char *)0, /* pointer to string table */ ++ screen_xterm_xfree86_bool_data, ++ screen_xterm_xfree86_number_data, ++ screen_xterm_xfree86_string_data, ++#if NCURSES_XNAMES ++ (char *)0, /* pointer to extended string table */ ++ (char **)0, /* ...corresponding names */ ++ 44, /* count total Booleans */ ++ 39, /* count total Numbers */ ++ 414, /* count total Strings */ ++ 0, /* count extensions to Booleans */ ++ 0, /* count extensions to Numbers */ ++ 0, /* count extensions to Strings */ ++#endif /* NCURSES_XNAMES */ ++ } ++, /* screen.xterm-256color */ ++ { ++ screen_xterm_256color_alias_data, ++ (char *)0, /* pointer to string table */ ++ screen_xterm_256color_bool_data, ++ screen_xterm_256color_number_data, ++ screen_xterm_256color_string_data, ++#if NCURSES_XNAMES ++ (char *)0, /* pointer to extended string table */ ++ (char **)0, /* ...corresponding names */ ++ 44, /* count total Booleans */ ++ 39, /* count total Numbers */ ++ 414, /* count total Strings */ ++ 0, /* count extensions to Booleans */ ++ 0, /* count extensions to Numbers */ ++ 0, /* count extensions to Strings */ ++#endif /* NCURSES_XNAMES */ ++ } ++}; ++ ++NCURSES_EXPORT(const TERMTYPE2 *) ++_nc_fallback2 (const char *name GCC_UNUSED) ++{ ++ const TERMTYPE2 *tp; ++ ++ for (tp = fallbacks; ++ tp < fallbacks + sizeof(fallbacks)/sizeof(TERMTYPE2); ++ tp++) { ++ if (_nc_name_match(tp->term_names, name, "|")) { ++ return(tp); ++ } ++ } ++ return((const TERMTYPE2 *)0); ++} ++ ++#if NCURSES_EXT_NUMBERS ++#undef _nc_fallback ++ ++/* ++ * This entrypoint is used by tack. ++ */ ++NCURSES_EXPORT(const TERMTYPE *) ++_nc_fallback (const char *name) ++{ ++ const TERMTYPE2 *tp = _nc_fallback2(name); ++ const TERMTYPE *result = 0; ++ if (tp != 0) { ++ static TERMTYPE temp; ++ _nc_export_termtype2(&temp, tp); ++ result = &temp; ++ } ++ return result; ++} ++#endif +diff --git a/contrib/depends/patches/polyseed/0001-disable-soname.patch b/contrib/depends/patches/polyseed/0001-disable-soname.patch +new file mode 100644 +index 00000000..bd97dd39 +--- /dev/null ++++ b/contrib/depends/patches/polyseed/0001-disable-soname.patch +@@ -0,0 +1,48 @@ ++From aabafcfc0572651436d024a635483c49042fad7f Mon Sep 17 00:00:00 2001 ++From: Czarek Nakamoto <cyjan@mrcyjanek.net> ++Date: Thu, 28 Mar 2024 00:32:51 +0100 ++Subject: [PATCH] disable soname ++ ++--- ++ CMakeLists.txt | 16 +++++++++------- ++ 1 file changed, 9 insertions(+), 7 deletions(-) ++ ++diff --git a/CMakeLists.txt b/CMakeLists.txt ++index 8a8e7c2..5301353 100644 ++--- a/CMakeLists.txt +++++ b/CMakeLists.txt ++@@ -36,6 +36,7 @@ include_directories(polyseed ++ target_compile_definitions(polyseed PRIVATE POLYSEED_SHARED) ++ set_target_properties(polyseed PROPERTIES VERSION 2.0.0 ++ SOVERSION 2 +++ NO_SONAME 1 ++ C_STANDARD 11 ++ C_STANDARD_REQUIRED ON) ++ ++@@ -45,16 +46,17 @@ include_directories(polyseed_static ++ include/) ++ target_compile_definitions(polyseed_static PRIVATE POLYSEED_STATIC) ++ set_target_properties(polyseed_static PROPERTIES OUTPUT_NAME polyseed +++ NO_SONAME 1 ++ C_STANDARD 11 ++ C_STANDARD_REQUIRED ON) ++ ++-add_executable(polyseed-tests ++- tests/tests.c) ++-include_directories(polyseed-tests ++- include/) ++-target_compile_definitions(polyseed-tests PRIVATE POLYSEED_STATIC) ++-target_link_libraries(polyseed-tests ++- PRIVATE polyseed_static) +++# add_executable(polyseed-tests +++# tests/tests.c) +++# include_directories(polyseed-tests +++# include/) +++# target_compile_definitions(polyseed-tests PRIVATE POLYSEED_STATIC) +++# target_link_libraries(polyseed-tests +++# PRIVATE polyseed_static) ++ ++ include(GNUInstallDirs) ++ install(TARGETS polyseed polyseed_static ++-- ++2.39.2 +diff --git a/contrib/depends/patches/polyseed/force-static-mingw.patch b/contrib/depends/patches/polyseed/force-static-mingw.patch +new file mode 100644 +index 00000000..f05cb2b6 +--- /dev/null ++++ b/contrib/depends/patches/polyseed/force-static-mingw.patch +@@ -0,0 +1,23 @@ ++--- a/include/polyseed.h +++++ b/include/polyseed.h ++@@ -93,13 +93,13 @@ Shared/static library definitions ++ - define POLYSEED_STATIC when linking to the static library ++ */ ++ #if defined(_WIN32) || defined(__CYGWIN__) ++- #ifdef POLYSEED_SHARED ++- #define POLYSEED_API __declspec(dllexport) ++- #elif !defined(POLYSEED_STATIC) ++- #define POLYSEED_API __declspec(dllimport) ++- #else ++- #define POLYSEED_API ++- #endif +++// #ifdef POLYSEED_SHARED +++// #define POLYSEED_API __declspec(dllexport) +++// #elif !defined(POLYSEED_STATIC) +++// #define POLYSEED_API __declspec(dllimport) +++// #else +++ #define POLYSEED_API +++// #endif ++ #define POLYSEED_PRIVATE ++ #else ++ #ifdef POLYSEED_SHARED +diff --git a/contrib/depends/patches/protobuf/visibility.patch b/contrib/depends/patches/protobuf/visibility.patch +new file mode 100644 +index 00000000..e66d5961 +--- /dev/null ++++ b/contrib/depends/patches/protobuf/visibility.patch +@@ -0,0 +1,159 @@ ++--- src/google/protobuf/descriptor.cc.O 2018-07-30 22:16:10.000000000 +0000 +++++ src/google/protobuf/descriptor.cc 2022-05-06 13:38:14.827309092 +0000 ++@@ -32,6 +32,9 @@ ++ // Based on original Protocol Buffers design by ++ // Sanjay Ghemawat, Jeff Dean, and others. ++ +++#if defined(__APPLE__) && defined(__arm64__) +++#pragma GCC visibility push(hidden) +++#endif ++ #include <algorithm> ++ #include <functional> ++ #include <google/protobuf/stubs/hash.h> ++@@ -7274,3 +7277,6 @@ ++ ++ } // namespace protobuf ++ } // namespace google +++#if defined(__APPLE__) && defined(__arm64__) +++#pragma GCC visibility pop +++#endif ++--- src/google/protobuf/extension_set.cc.O 2018-07-23 20:56:42.000000000 +0000 +++++ src/google/protobuf/extension_set.cc 2022-05-06 14:48:55.369877050 +0000 ++@@ -32,6 +32,9 @@ ++ // Based on original Protocol Buffers design by ++ // Sanjay Ghemawat, Jeff Dean, and others. ++ +++#if defined(__APPLE__) && defined(__arm64__) +++#pragma GCC visibility push(hidden) +++#endif ++ #include <google/protobuf/stubs/hash.h> ++ #include <tuple> ++ #include <utility> ++@@ -1914,3 +1917,6 @@ ++ } // namespace internal ++ } // namespace protobuf ++ } // namespace google +++#if defined(__APPLE__) && defined(__arm64__) +++#pragma GCC visibility pop +++#endif ++--- src/google/protobuf/extension_set_heavy.cc.O 2018-07-30 22:16:10.000000000 +0000 +++++ src/google/protobuf/extension_set_heavy.cc 2022-05-06 14:14:27.847320946 +0000 ++@@ -35,6 +35,10 @@ ++ // Contains methods defined in extension_set.h which cannot be part of the ++ // lite library because they use descriptors or reflection. ++ +++#if defined(__APPLE__) && defined(__arm64__) +++#pragma GCC visibility push(hidden) +++#endif +++ ++ #include <google/protobuf/stubs/casts.h> ++ #include <google/protobuf/descriptor.pb.h> ++ #include <google/protobuf/io/coded_stream.h> ++@@ -814,3 +818,6 @@ ++ } // namespace internal ++ } // namespace protobuf ++ } // namespace google +++#if defined(__APPLE__) && defined(__arm64__) +++#pragma GCC visibility pop +++#endif ++--- src/google/protobuf/generated_message_reflection.cc.O 2018-07-23 20:56:42.000000000 +0000 +++++ src/google/protobuf/generated_message_reflection.cc 2022-05-06 13:38:49.655540772 +0000 ++@@ -32,6 +32,9 @@ ++ // Based on original Protocol Buffers design by ++ // Sanjay Ghemawat, Jeff Dean, and others. ++ +++#if defined(__APPLE__) && defined(__arm64__) +++#pragma GCC visibility push(hidden) +++#endif ++ #include <algorithm> ++ #include <set> ++ ++@@ -2420,3 +2423,6 @@ ++ } // namespace internal ++ } // namespace protobuf ++ } // namespace google +++#if defined(__APPLE__) && defined(__arm64__) +++#pragma GCC visibility pop +++#endif ++--- src/google/protobuf/map_field.cc.O 2018-07-23 20:56:42.000000000 +0000 +++++ src/google/protobuf/map_field.cc 2022-05-06 13:34:44.913905697 +0000 ++@@ -28,6 +28,10 @@ ++ // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE ++ // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ++ +++#if defined(__APPLE__) && defined(__arm64__) +++#pragma GCC visibility push(hidden) +++#endif +++ ++ #include <google/protobuf/map_field.h> ++ #include <google/protobuf/map_field_inl.h> ++ ++@@ -462,3 +466,6 @@ ++ } // namespace internal ++ } // namespace protobuf ++ } // namespace google +++#if defined(__APPLE__) && defined(__arm64__) +++#pragma GCC visibility pop +++#endif ++--- src/google/protobuf/text_format.cc.O 2018-07-30 22:16:11.000000000 +0000 +++++ src/google/protobuf/text_format.cc 2022-05-06 13:34:58.881999517 +0000 ++@@ -32,6 +32,10 @@ ++ // Based on original Protocol Buffers design by ++ // Sanjay Ghemawat, Jeff Dean, and others. ++ +++#if defined(__APPLE__) && defined(__arm64__) +++#pragma GCC visibility push(hidden) +++#endif +++ ++ #include <algorithm> ++ #include <float.h> ++ #include <math.h> ++@@ -2258,3 +2262,6 @@ ++ ++ } // namespace protobuf ++ } // namespace google +++#if defined(__APPLE__) && defined(__arm64__) +++#pragma GCC visibility pop +++#endif ++--- src/google/protobuf/wire_format.cc.O 2018-07-23 20:56:42.000000000 +0000 +++++ src/google/protobuf/wire_format.cc 2022-05-06 13:06:23.294219228 +0000 ++@@ -32,6 +32,10 @@ ++ // Based on original Protocol Buffers design by ++ // Sanjay Ghemawat, Jeff Dean, and others. ++ +++#if defined(__APPLE__) && defined(__arm64__) +++#pragma GCC visibility push(hidden) +++#endif +++ ++ #include <stack> ++ #include <string> ++ #include <vector> ++@@ -1445,3 +1449,7 @@ ++ } // namespace internal ++ } // namespace protobuf ++ } // namespace google +++ +++#if defined(__APPLE__) && defined(__arm64__) +++#pragma GCC visibility pop +++#endif ++--- src/google/protobuf/stubs/status.cc.O 2018-07-23 20:56:42.000000000 +0000 +++++ src/google/protobuf/stubs/status.cc 2022-05-06 15:18:53.393208814 +0000 ++@@ -27,6 +27,11 @@ ++ // THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT ++ // (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE ++ // OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +++ +++#if defined(__APPLE__) && defined(__arm64__) +++#pragma GCC visibility push(hidden) +++#endif +++ ++ #include <google/protobuf/stubs/status.h> ++ ++ #include <ostream> ++@@ -132,3 +137,6 @@ ++ } // namespace util ++ } // namespace protobuf ++ } // namespace google +++#if defined(__APPLE__) && defined(__arm64__) +++#pragma GCC visibility pop +++#endif +diff --git a/contrib/depends/patches/sodium/disable-glibc-getrandom-getentropy.patch b/contrib/depends/patches/sodium/disable-glibc-getrandom-getentropy.patch +new file mode 100644 +index 00000000..2f07c105 +--- /dev/null ++++ b/contrib/depends/patches/sodium/disable-glibc-getrandom-getentropy.patch +@@ -0,0 +1,25 @@ ++diff --git a/configure.ac b/configure.ac ++index 9e2de27c..0fa85c2d 100644 ++--- a/configure.ac +++++ b/configure.ac ++@@ -807,6 +807,10 @@ AS_IF([test "x$EMSCRIPTEN" = "x"],[ ++ # include <sys/random.h> ++ #endif ++ ]], [[ +++#ifdef __linux__ +++# error getrandom() is currently disabled on Linux to support glibc < 2.25 +++#endif +++ ++ unsigned char buf; ++ (void) getrandom((void *) &buf, 1U, 0U); ++ ]])], ++@@ -825,6 +829,9 @@ unsigned char buf; ++ # include <sys/random.h> ++ #endif ++ ]], [[ +++#ifdef __linux__ +++# error getentropy() is currently disabled on Linux to support glibc < 2.25 +++#endif ++ #ifdef __APPLE__ ++ # error getentropy() is currently disabled on Apple operating systems ++ #endif +diff --git a/contrib/depends/patches/sodium/fix-whitespace.patch b/contrib/depends/patches/sodium/fix-whitespace.patch +new file mode 100644 +index 00000000..c3d3af0b +--- /dev/null ++++ b/contrib/depends/patches/sodium/fix-whitespace.patch +@@ -0,0 +1,13 @@ ++diff --git a/configure b/configure ++index b29f769..ca008ae 100755 ++--- a/configure +++++ b/configure ++@@ -591,7 +591,7 @@ MAKEFLAGS= ++ PACKAGE_NAME='libsodium' ++ PACKAGE_TARNAME='libsodium' ++ PACKAGE_VERSION='1.0.18' ++-PACKAGE_STRING='libsodium 1.0.18' +++PACKAGE_STRING='libsodium' ++ PACKAGE_BUGREPORT='https://github.com/jedisct1/libsodium/issues' ++ PACKAGE_URL='https://github.com/jedisct1/libsodium' ++ +diff --git a/contrib/depends/patches/unbound/disable-glibc-reallocarray.patch b/contrib/depends/patches/unbound/disable-glibc-reallocarray.patch +new file mode 100644 +index 00000000..d66a821a +--- /dev/null ++++ b/contrib/depends/patches/unbound/disable-glibc-reallocarray.patch +@@ -0,0 +1,14 @@ ++diff --git a/configure.ac b/configure.ac ++index 5c7da197..e2b25288 100644 ++--- a/configure.ac +++++ b/configure.ac ++@@ -1702,6 +1702,9 @@ AC_LINK_IFELSE([AC_LANG_SOURCE(AC_INCLUDES_DEFAULT ++ #ifndef _OPENBSD_SOURCE ++ #define _OPENBSD_SOURCE 1 ++ #endif +++#ifdef __linux__ +++# error reallocarray() is currently disabled on Linux to support glibc < 2.26 +++#endif ++ #include <stdlib.h> ++ int main(void) { ++ void* p = reallocarray(NULL, 10, 100); +diff --git a/contrib/depends/patches/unwind/fix_obj_order.patch b/contrib/depends/patches/unwind/fix_obj_order.patch +new file mode 100644 +index 00000000..e764f0f3 +--- /dev/null ++++ b/contrib/depends/patches/unwind/fix_obj_order.patch +@@ -0,0 +1,11 @@ ++--- config/ltmain.sh.0 2020-11-10 17:25:26.000000000 +0100 +++++ config/ltmain.sh 2021-09-11 19:39:36.000000000 +0200 ++@@ -10768,6 +10768,8 @@ ++ fi ++ func_to_tool_file "$oldlib" func_convert_file_msys_to_w32 ++ tool_oldlib=$func_to_tool_file_result +++ oldobjs=`for obj in $oldobjs; do echo $obj; done | sort` +++ oldobjs=" `echo $oldobjs`" ++ eval cmds=\"$old_archive_cmds\" ++ ++ func_len " $cmds" +diff --git a/contrib/depends/patches/zeromq/06aba27b04c5822cb88a69677382a0f053367143.patch b/contrib/depends/patches/zeromq/06aba27b04c5822cb88a69677382a0f053367143.patch +new file mode 100644 +index 00000000..53e18a45 +--- /dev/null ++++ b/contrib/depends/patches/zeromq/06aba27b04c5822cb88a69677382a0f053367143.patch +@@ -0,0 +1,22 @@ ++From 06aba27b04c5822cb88a69677382a0f053367143 Mon Sep 17 00:00:00 2001 ++From: sabotagebeats <27985126+sabotagebeats@users.noreply.github.com> ++Date: Thu, 22 Jul 2021 21:53:19 -0700 ++Subject: [PATCH] fix: building libzmq fails with error src/clock.cpp:131:16: ++ error: unused variable 'nsecs_per_usec' ++ ++--- ++ src/clock.cpp | 1 + ++ 1 file changed, 1 insertion(+) ++ ++diff --git a/src/clock.cpp b/src/clock.cpp ++index 93da90a8e..63c0100a5 100644 ++--- a/src/clock.cpp +++++ b/src/clock.cpp ++@@ -195,6 +195,7 @@ uint64_t zmq::clock_t::now_us () ++ ++ #else ++ +++ LIBZMQ_UNUSED (nsecs_per_usec); ++ // Use POSIX gettimeofday function to get precise time. ++ struct timeval tv; ++ int rc = gettimeofday (&tv, NULL); +diff --git a/contrib/depends/protobuf.mk b/contrib/depends/protobuf.mk +new file mode 100644 +index 00000000..54d3fd92 +--- /dev/null ++++ b/contrib/depends/protobuf.mk +@@ -0,0 +1,29 @@ ++package=protobuf ++$(package)_version=$(native_$(package)_version) ++$(package)_download_path=$(native_$(package)_download_path) ++$(package)_file_name=$(native_$(package)_file_name) ++$(package)_sha256_hash=$(native_$(package)_sha256_hash) ++$(package)_dependencies=native_$(package) ++$(package)_cxxflags=-std=c++11 ++ ++define $(package)_set_vars ++ $(package)_config_opts=--disable-shared --with-protoc=$(build_prefix)/bin/protoc ++ $(package)_config_opts_linux=--with-pic ++endef ++ ++define $(package)_config_cmds ++ $($(package)_autoconf) ++endef ++ ++define $(package)_build_cmds ++ $(MAKE) -C src libprotobuf.la ++endef ++ ++define $(package)_stage_cmds ++ $(MAKE) DESTDIR=$($(package)_staging_dir) -C src install-libLTLIBRARIES install-nobase_includeHEADERS &&\ ++ $(MAKE) DESTDIR=$($(package)_staging_dir) install-pkgconfigDATA ++endef ++ ++define $(package)_postprocess_cmds ++ rm lib/libprotoc.a ++endef +diff --git a/contrib/depends/toolchain.cmake.in b/contrib/depends/toolchain.cmake.in +new file mode 100644 +index 00000000..f118c754 +--- /dev/null ++++ b/contrib/depends/toolchain.cmake.in +@@ -0,0 +1,176 @@ ++# Set the system name to one of Android, Darwin, FreeBSD, Linux, or Windows ++SET(CMAKE_SYSTEM_NAME @depends@) ++SET(CMAKE_SYSTEM_PROCESSOR @arch@) ++SET(CMAKE_BUILD_TYPE @release_type@) ++ ++OPTION(STATIC "Link libraries statically" ON) ++OPTION(TREZOR_DEBUG "Main trezor debugging switch" OFF) ++OPTION(BUILD_TESTS "Build tests." OFF) ++ ++SET(STATIC ON) ++SET(UNBOUND_STATIC ON) ++SET(ARCH "default") ++ ++SET(BUILD_TESTS @build_tests@) ++SET(TREZOR_DEBUG @build_tests@) ++ ++# where is the target environment ++SET(CMAKE_FIND_ROOT_PATH @prefix@ /usr) ++ ++SET(ENV{PKG_CONFIG_PATH} @prefix@/lib/pkgconfig) ++ ++SET(Readline_ROOT_DIR @prefix@) ++SET(Readline_INCLUDE_DIR @prefix@/include) ++SET(Readline_LIBRARY @prefix@/lib/libreadline.a) ++SET(Terminfo_LIBRARY @prefix@/lib/libtinfo.a) ++ ++SET(UNBOUND_INCLUDE_DIR @prefix@/include) ++SET(UNBOUND_LIBRARIES @prefix@/lib/libunbound.a) ++ ++if(NOT CMAKE_SYSTEM_NAME STREQUAL "Android") ++SET(LIBUNWIND_INCLUDE_DIR @prefix@/include) ++SET(LIBUNWIND_LIBRARIES @prefix@/lib/libunwind.a) ++SET(LIBUNWIND_LIBRARY_DIRS @prefix@/lib) ++ ++if(NOT CMAKE_SYSTEM_NAME STREQUAL "FreeBSD") ++SET(LIBUSB-1.0_LIBRARY @prefix@/lib/libusb-1.0.a) ++SET(LIBUDEV_LIBRARY @prefix@/lib/libudev.a) ++ ++SET(Protobuf_FOUND 1) ++SET(Protobuf_PROTOC_EXECUTABLE @prefix@/native/bin/protoc CACHE FILEPATH "Path to the native protoc") ++SET(Protobuf_INCLUDE_DIR @prefix@/include CACHE PATH "Protobuf include dir") ++SET(Protobuf_INCLUDE_DIRS @prefix@/include CACHE PATH "Protobuf include dir") ++SET(Protobuf_LIBRARY @prefix@/lib/libprotobuf.a CACHE FILEPATH "Protobuf library") ++endif() ++ ++endif() ++ ++SET(ZMQ_INCLUDE_PATH @prefix@/include) ++SET(ZMQ_LIB @prefix@/lib/libzmq.a) ++ ++SET(Boost_IGNORE_SYSTEM_PATH ON) ++SET(BOOST_ROOT @prefix@) ++SET(BOOST_INCLUDEDIR @prefix@/include) ++SET(BOOST_LIBRARYDIR @prefix@/lib) ++SET(Boost_IGNORE_SYSTEM_PATHS_DEFAULT OFF) ++SET(Boost_NO_SYSTEM_PATHS ON) ++SET(Boost_USE_STATIC_LIBS ON) ++SET(Boost_USE_STATIC_RUNTIME ON) ++ ++SET(OPENSSL_ROOT_DIR @prefix@) ++SET(ARCHITECTURE @arch@) ++ ++# for libraries and headers in the target directories ++set (CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER) # Find programs on host ++set (CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY) # Find libs in target ++set (CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY) # Find includes in target ++ ++# specify the cross compiler to be used. Darwin uses clang provided by the SDK. ++if(CMAKE_SYSTEM_NAME STREQUAL "Darwin") ++ if(ARCHITECTURE STREQUAL "aarch64") ++ SET(CLANG_TARGET "arm64-apple-darwin11") ++ SET(CONF_TRIPLE "aarch64-apple-darwin11") ++ SET(BUILD_TAG "mac-armv8") ++ SET(CMAKE_OSX_ARCHITECTURES "arm64") ++ set(ARM ON) ++ set(ARM_ID "armv8-a") ++ else() ++ SET(CLANG_TARGET "x86_64-apple-darwin11") ++ SET(CONF_TRIPLE "x86_64-apple-darwin11") ++ SET(BUILD_TAG "mac-x64") ++ SET(CMAKE_OSX_ARCHITECTURES "x86_64") ++ endif() ++ SET(_CMAKE_TOOLCHAIN_PREFIX @prefix@/native/bin/${CONF_TRIPLE}-) ++ SET(CMAKE_C_COMPILER @prefix@/native/bin/clang) ++ SET(CMAKE_C_COMPILER_TARGET ${CLANG_TARGET}) ++ SET(CMAKE_C_FLAGS_INIT -B${_CMAKE_TOOLCHAIN_PREFIX}) ++ SET(CMAKE_CXX_COMPILER @prefix@/native/bin/clang++ -stdlib=libc++) ++ SET(CMAKE_CXX_COMPILER_TARGET ${CLANG_TARGET}) ++ SET(CMAKE_CXX_FLAGS_INIT -B${_CMAKE_TOOLCHAIN_PREFIX}) ++ SET(CMAKE_ASM_COMPILER_TARGET ${CLANG_TARGET}) ++ SET(CMAKE_ASM-ATT_COMPILER_TARGET ${CLANG_TARGET}) ++ SET(APPLE True) ++ SET(BUILD_64 ON) ++ SET(BREW OFF) ++ SET(PORT OFF) ++ SET(CMAKE_OSX_SYSROOT "@prefix@/native/SDK/") ++ SET(CMAKE_OSX_DEPLOYMENT_TARGET "10.08") ++ SET(CMAKE_CXX_STANDARD 14) ++ SET(LLVM_ENABLE_PIC OFF) ++ SET(LLVM_ENABLE_PIE OFF) ++elseif(CMAKE_SYSTEM_NAME STREQUAL "Android") ++ SET(ANDROID TRUE) ++ if(ARCHITECTURE STREQUAL "arm") ++ SET(CMAKE_ANDROID_ARCH_ABI "armeabi-v7a") ++ SET(CMAKE_SYSTEM_PROCESSOR "armv7-a") ++ SET(CMAKE_ANDROID_ARM_MODE ON) ++ SET(CMAKE_C_COMPILER_TARGET arm-linux-androideabi) ++ SET(CMAKE_CXX_COMPILER_TARGET arm-linux-androideabi) ++ SET(_CMAKE_TOOLCHAIN_PREFIX arm-linux-androideabi-) ++ elseif(ARCHITECTURE STREQUAL "aarch64") ++ SET(CMAKE_ANDROID_ARCH_ABI "arm64-v8a") ++ SET(CMAKE_SYSTEM_PROCESSOR "aarch64") ++ endif() ++ SET(CMAKE_ANDROID_STANDALONE_TOOLCHAIN @prefix@/native) ++ SET(CMAKE_C_COMPILER "${_CMAKE_TOOLCHAIN_PREFIX}clang") ++ SET(CMAKE_CXX_COMPILER "${_CMAKE_TOOLCHAIN_PREFIX}clang++") ++else() ++ SET(CMAKE_C_COMPILER @CC@) ++ SET(CMAKE_CXX_COMPILER @CXX@) ++endif() ++ ++if(ARCHITECTURE STREQUAL "arm") ++ set(ARCH "armv7-a") ++ set(ARM ON) ++ set(ARM_ID "armv7-a") ++ set(BUILD_64 OFF) ++ set(CMAKE_BUILD_TYPE release) ++ if(ANDROID) ++ set(BUILD_TAG "android-armv7") ++ else() ++ set(BUILD_TAG "linux-armv7") ++ endif() ++ set(ARM7) ++elseif(ARCHITECTURE STREQUAL "aarch64") ++ set(ARCH "armv8-a") ++ set(ARM ON) ++ set(ARM_ID "armv8-a") ++ if(ANDROID) ++ set(BUILD_TAG "android-armv8") ++ elseif(CMAKE_SYSTEM_NAME STREQUAL "Linux") ++ set(BUILD_TAG "linux-armv8") ++ endif() ++ set(BUILD_64 ON) ++endif() ++ ++if(ARCHITECTURE STREQUAL "riscv64") ++ if(CMAKE_SYSTEM_NAME STREQUAL "Linux") ++ set(BUILD_TAG "linux-riscv64") ++ endif() ++ set(ARCH_ID "riscv64") ++ set(ARCH "rv64gc") ++endif() ++ ++if(ARCHITECTURE STREQUAL "i686") ++ SET(ARCH_ID "i386") ++ if(CMAKE_SYSTEM_NAME STREQUAL "Linux") ++ set(BUILD_TAG "linux-x86") ++ SET(LINUX_32 ON) ++ elseif(CMAKE_SYSTEM_NAME STREQUAL "Windows") ++ set(BUILD_TAG "win-x32") ++ endif() ++endif() ++ ++if(ARCHITECTURE STREQUAL "x86_64") ++ if(CMAKE_SYSTEM_NAME STREQUAL "Linux") ++ set(BUILD_TAG "linux-x64") ++ elseif(CMAKE_SYSTEM_NAME STREQUAL "FreeBSD") ++ set(BUILD_TAG "freebsd-x64") ++ elseif(CMAKE_SYSTEM_NAME STREQUAL "Windows") ++ set(BUILD_TAG "win-x64") ++ endif() ++ SET(ARCH_ID "x86_64") ++endif() ++ ++#Create a new global cmake flag that indicates building with depends ++set (DEPENDS true) +-- +2.43.0 + diff --git a/patches/zano/0002-add-missing-include.patch b/patches/zano/0002-add-missing-include.patch new file mode 100644 index 0000000..4b1c885 --- /dev/null +++ b/patches/zano/0002-add-missing-include.patch @@ -0,0 +1,64 @@ +From eba98d075a29b0c3b07484cea6b706f024063396 Mon Sep 17 00:00:00 2001 +From: Czarek Nakamoto <cyjan@mrcyjanek.net> +Date: Thu, 31 Oct 2024 13:07:20 +0000 +Subject: [PATCH 2/2] add missing #include + +--- + src/currency_core/genesis.cpp | 1 + + src/currency_core/genesis.h | 2 +- + src/wallet/plain_wallet_api.cpp | 1 + + src/wallet/plain_wallet_api.h | 1 + + 4 files changed, 4 insertions(+), 1 deletion(-) + +diff --git a/src/currency_core/genesis.cpp b/src/currency_core/genesis.cpp +index a58dcb4e..c34b0285 100644 +--- a/src/currency_core/genesis.cpp ++++ b/src/currency_core/genesis.cpp +@@ -4,6 +4,7 @@ + // file COPYING or http://www.opensource.org/licenses/mit-license.php. + + #include "genesis.h" ++#include <cstdint> + + namespace currency + { +diff --git a/src/currency_core/genesis.h b/src/currency_core/genesis.h +index 8ea77d89..d78cec97 100644 +--- a/src/currency_core/genesis.h ++++ b/src/currency_core/genesis.h +@@ -3,7 +3,7 @@ + // Copyright (c) 2014-2018 The Louisdor Project + // Distributed under the MIT/X11 software license, see the accompanying + // file COPYING or http://www.opensource.org/licenses/mit-license.php. +- ++#include <cstdint> + #pragma once + #include <string> + namespace currency +diff --git a/src/wallet/plain_wallet_api.cpp b/src/wallet/plain_wallet_api.cpp +index 3a9a1552..a211acdb 100644 +--- a/src/wallet/plain_wallet_api.cpp ++++ b/src/wallet/plain_wallet_api.cpp +@@ -6,6 +6,7 @@ + #ifdef ANDROID_BUILD + #include <android/log.h> + #endif ++#include <cstdint> + #include "plain_wallet_api.h" + #include "plain_wallet_api_defs.h" + #include "currency_core/currency_config.h" +diff --git a/src/wallet/plain_wallet_api.h b/src/wallet/plain_wallet_api.h +index f12eba03..177b8173 100644 +--- a/src/wallet/plain_wallet_api.h ++++ b/src/wallet/plain_wallet_api.h +@@ -6,6 +6,7 @@ + #pragma once + + #include <string> ++#include <cstdint> + #include "../common/error_codes.h" + + namespace plain_wallet +-- +2.43.0 + |
