walnux/libs/libc/misc/Make.defs
chao an 59da455fea libs/libc/crc16: Separate implementation of crc16xmodem from crc16
keep default crc16 catalogue for CRC-16/XMODEM

Mapping crc16 implement to crc16xmodem

crc16     -> crc16xmodem
crc16part -> crc16xmodempart

- CRC-16/ACORN, CRC-16/LTE, CRC-16/V-41-MSB, XMODEM, ZMODEM
poly: 0x1021 initial seed: 0x0000, xor output: 0x0000

: width=16
: poly=0x1021
: init=0x0000
: refin=false
: refout=false
: xorout=0x0000
: check=0x31c3
: residue=0x0000
: name="CRC-16/XMODEM"

https://reveng.sourceforge.io/crc-catalogue/16.htm#crc.cat.crc-16-xmodem

Signed-off-by: chao an <anchao.archer@bytedance.com>
2025-04-10 16:47:28 +08:00

93 lines
2.8 KiB
Text

############################################################################
# libs/libc/misc/Make.defs
#
# SPDX-License-Identifier: Apache-2.0
#
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership. The
# ASF licenses this file to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance with the
# License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
############################################################################
# Add the internal C files to the build
CSRCS += lib_bitmap.c lib_circbuf.c lib_mknod.c lib_umask.c lib_utsname.c
CSRCS += lib_getrandom.c lib_xorshift128.c lib_tea_encrypt.c lib_tea_decrypt.c
CSRCS += lib_cxx_initialize.c lib_impure.c lib_memfd.c lib_mutex.c
CSRCS += lib_fchmodat.c lib_fstatat.c lib_getfullpath.c lib_openat.c
CSRCS += lib_mkdirat.c lib_utimensat.c lib_mallopt.c
CSRCS += lib_idr.c lib_getnprocs.c
ifeq ($(CONFIG_LIBC_TEMPBUFFER),y)
CSRCS += lib_tempbuffer.c
endif
# Support for platforms that do not have long long types
CSRCS += lib_umul32.c lib_umul64.c lib_umul32x64.c
CSRCS += lib_uadd32x64.c lib_uadd64.c lib_usub64x32.c lib_usub64.c
ifeq ($(CONFIG_PIPES),y)
CSRCS += lib_mkfifo.c
endif
# Add the miscellaneous C files to the build
CSRCS += lib_dumpbuffer.c lib_dumpvbuffer.c lib_fnmatch.c lib_debug.c
CSRCS += lib_crc64.c lib_crc32.c lib_crc16.c lib_crc16ccitt.c lib_crc8.c
CSRCS += lib_crc8ccitt.c lib_crc8table.c lib_crc8rohc.c lib_glob.c
CSRCS += lib_backtrace.c lib_ftok.c lib_err.c lib_instrument.c
CSRCS += lib_crc16ibm.c lib_crc16xmodem.c
# Keyboard driver encoder/decoder
ifeq ($(CONFIG_LIBC_KBDCODEC),y)
CSRCS += lib_kbdencode.c lib_kbddecode.c
endif
# SLCD driver encoder/decoder
ifeq ($(CONFIG_LIBC_SLCDCODEC),y)
CSRCS += lib_slcdencode.c lib_slcddecode.c
endif
# Environment search path support
ifeq ($(CONFIG_LIBC_ENVPATH),y)
CSRCS += lib_envpath.c
endif
# Fdsan support
ifeq ($(CONFIG_FDSAN),y)
CSRCS += lib_fdsan.c
endif
# Fdcheck support
ifeq ($(CONFIG_FDCHECK),y)
CSRCS += lib_fdcheck.c
endif
# To ensure uname information is newest,
# add lib_utsname.o to phony target for force rebuild
#if !defined(CONFIG_LIBC_UNAME_DISABLE_TIMESTAMP)
.PHONY: bin$(DELIM)lib_utsname$(OBJEXT) kbin$(DELIM)lib_utsname$(OBJEXT)
#endif
# Add the misc directory to the build
DEPPATH += --dep-path misc
VPATH += :misc