亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? byteorder.m4

?? USB Host 開發中支持數碼相機的源碼。即Picture To Picture協議的完整實現
?? M4
字號:
dnl AC_NEED_BYTEORDER_H ( HEADER-TO-GENERATE )dnl $Id: byteorder.m4,v 1.3 2004/07/16 15:31:20 kil3r Exp $dnl Copyright 2001-2002 by Dan Fandrich <dan@coneharvesters.com>dnl This file may be copied and used freely without restrictions.  No warrantydnl is expressed or implied.dnldnl Create a header file that guarantees that byte swapping macros of thednl ntohl variety as well as the extended types included in OpenBSD anddnl NetBSD such as le32toh are defined.  If possible, the standard ntohldnl are overloaded as they are optimized for the given platform, but whendnl this is not possible (e.g. on a big-endian machine) they are defineddnl in this file.dnl Look for a symbol in a header filednl AC_HAVE_SYMBOL ( IDENTIFIER, HEADER-FILE, ACTION-IF-FOUND, ACTION-IF-NOT-FOUND )AC_DEFUN([AC_HAVE_SYMBOL],[AC_MSG_CHECKING(for $1 in $2)AC_EGREP_CPP([symbol is present|\<$1\>],[#include <$2>#ifdef $1 	symbol is present#endif	], [AC_MSG_RESULT(yes)$3],[AC_MSG_RESULT(no)$4])])dnl Create a header file that defines extended byte swapping macrosAC_DEFUN([AC_NEED_BYTEORDER_H],[changequote(, )dnlac_dir=`echo $1|sed 's%/[^/][^/]*$%%'`changequote([, ])dnlif test "$ac_dir" != "$1" && test "$ac_dir" != .; then  # The file is in a subdirectory.  test ! -d "$ac_dir" && mkdir "$ac_dir"fi# We're only interested in the target CPU, but it's not always seteffective_target="$target"if test "x$effective_target" = xNONE -o "x$effective_target" = x ; then	effective_target="$host"fiAC_SUBST(effective_target)cat > "$1" << EOF/* This file is generated automatically by configure *//* It is valid only for the system type ${effective_target} */#ifndef __BYTEORDER_H#define __BYTEORDER_HEOFdnl First, do an endian checkAC_C_BIGENDIANdnl Look for NetBSD-style extended byte swapping macrosAC_HAVE_SYMBOL(le32toh,machine/endian.h, [HAVE_LE32TOH=1 cat >> "$1" << EOF/* extended byte swapping macros are already available */#include <machine/endian.h>EOF],[dnl Look for standard byte swapping macrosAC_HAVE_SYMBOL(ntohl,arpa/inet.h, [cat >> "$1" << EOF/* ntohl and relatives live here */#include <arpa/inet.h>EOF], [AC_HAVE_SYMBOL(ntohl,netinet/in.h,  [cat >> "$1" << EOF/* ntohl and relatives live here */#include <netinet/in.h>EOF],true)])])dnl Look for generic byte swapping macrosdnl OpenBSDAC_HAVE_SYMBOL(swap32,machine/endian.h, [cat >> "$1" << EOF/* swap32 and swap16 are defined in machine/endian.h */EOF], [dnl Linux GLIBC  AC_HAVE_SYMBOL(bswap_32,byteswap.h,   [cat >> "$1" << EOF/* Define generic byte swapping functions */#include <byteswap.h>#define swap16(x) bswap_16(x)#define swap32(x) bswap_32(x)#define swap64(x) bswap_64(x)EOF],   [dnl NetBSD  	AC_HAVE_SYMBOL(bswap32,machine/endian.h,    dnl We're already including machine/endian.h if this test succeeds  	 [cat >> "$1" << EOF/* Define generic byte swapping functions */EOF	if test "$HAVE_LE32TOH" != "1"; then		echo '#include <machine/endian.h>'>> "$1"	ficat >> "$1" << EOF#define swap16(x) bswap16(x)#define swap32(x) bswap32(x)#define swap64(x) bswap64(x)EOF],   [dnl FreeBSD  	AC_HAVE_SYMBOL(__byte_swap_long,sys/types.h,  	 [cat >> "$1" << EOF/* Define generic byte swapping functions */#include <sys/types.h>#define swap16(x) __byte_swap_word(x)#define swap32(x) __byte_swap_long(x)/* No optimized 64 bit byte swapping macro is available */#define swap64(x) ((uint64_t)(((uint64_t)(x) << 56) & 0xff00000000000000ULL | \\			      ((uint64_t)(x) << 40) & 0x00ff000000000000ULL | \\			      ((uint64_t)(x) << 24) & 0x0000ff0000000000ULL | \\			      ((uint64_t)(x) << 8)  & 0x000000ff00000000ULL | \\			      ((x) >> 8)  & 0x00000000ff000000ULL | \\			      ((x) >> 24) & 0x0000000000ff0000ULL | \\			      ((x) >> 40) & 0x000000000000ff00ULL | \\			      ((x) >> 56) & 0x00000000000000ffULL))EOF],  	 [dnl OS X  	AC_HAVE_SYMBOL(NXSwapLong,machine/byte_order.h,  	 [cat >> "$1" << EOF/* Define generic byte swapping functions */#include <machine/byte_order.h>#define swap16(x) NXSwapShort(x)#define swap32(x) NXSwapLong(x)#define swap64(x) NXSwapLongLong(x)EOF],         [	if test $ac_cv_c_bigendian = yes; then		cat >> "$1" << EOF/* No other byte swapping functions are available on this big-endian system */#define swap16(x)	((uint16_t)(((x) << 8) | ((uint16_t)(x) >> 8)))#define swap32(x)	((uint32_t)(((uint32_t)(x) << 24) & 0xff000000UL | \\				    ((uint32_t)(x) << 8)  & 0x00ff0000UL | \\				    ((x) >> 8)  & 0x0000ff00UL | \\				    ((x) >> 24) & 0x000000ffUL))#define swap64(x) ((uint64_t)(((uint64_t)(x) << 56) & 0xff00000000000000ULL | \\			      ((uint64_t)(x) << 40) & 0x00ff000000000000ULL | \\			      ((uint64_t)(x) << 24) & 0x0000ff0000000000ULL | \\			      ((uint64_t)(x) << 8)  & 0x000000ff00000000ULL | \\			      ((x) >> 8)  & 0x00000000ff000000ULL | \\			      ((x) >> 24) & 0x0000000000ff0000ULL | \\			      ((x) >> 40) & 0x000000000000ff00ULL | \\			      ((x) >> 56) & 0x00000000000000ffULL))EOF	else cat >> "$1" << EOF/* Use these as generic byteswapping macros on this little endian system */#define swap16(x)		ntohs(x)#define swap32(x)		ntohl(x)/* No optimized 64 bit byte swapping macro is available */#define swap64(x) ((uint64_t)(((uint64_t)(x) << 56) & 0xff00000000000000ULL | \\			      ((uint64_t)(x) << 40) & 0x00ff000000000000ULL | \\			      ((uint64_t)(x) << 24) & 0x0000ff0000000000ULL | \\			      ((uint64_t)(x) << 8)  & 0x000000ff00000000ULL | \\			      ((x) >> 8)  & 0x00000000ff000000ULL | \\			      ((x) >> 24) & 0x0000000000ff0000ULL | \\			      ((x) >> 40) & 0x000000000000ff00ULL | \\			      ((x) >> 56) & 0x00000000000000ffULL))EOF	fi])  	  ])    ])  ])])[if test "$HAVE_LE32TOH" != "1"; then cat >> "$1" << EOF/* The byte swapping macros have the form: *//*   EENN[a]toh or htoEENN[a] where EE is be (big endian) or *//* le (little-endian), NN is 16 or 32 (number of bits) and a, *//* if present, indicates that the endian side is a pointer to an *//* array of uint8_t bytes instead of an integer of the specified length. *//* h refers to the host's ordering method. *//* So, to convert a 32-bit integer stored in a buffer in little-endian *//* format into a uint32_t usable on this machine, you could use: *//*   uint32_t value = le32atoh(&buf[3]); *//* To put that value back into the buffer, you could use: *//*   htole32a(&buf[3], value); *//* Define aliases for the standard byte swapping macros *//* Arguments to these macros must be properly aligned on natural word *//* boundaries in order to work properly on all architectures */#define htobe16(x) htons(x)#define htobe32(x) htonl(x)#define be16toh(x) ntohs(x)#define be32toh(x) ntohl(x)#define HTOBE16(x) (x) = htobe16(x)#define HTOBE32(x) (x) = htobe32(x)#define BE32TOH(x) (x) = be32toh(x)#define BE16TOH(x) (x) = be16toh(x)EOF if test $ac_cv_c_bigendian = yes; then  cat >> "$1" << EOF/* Define our own extended byte swapping macros for big-endian machines */#define htole16(x)      swap16(x)#define htole32(x)      swap32(x)#define le16toh(x)      swap16(x)#define le32toh(x)      swap32(x)#define htobe64(x)      (x)#define be64toh(x)      (x)#define HTOLE16(x)      (x) = htole16(x)#define HTOLE32(x)      (x) = htole32(x)#define LE16TOH(x)      (x) = le16toh(x)#define LE32TOH(x)      (x) = le32toh(x)#define HTOBE64(x)      (void) (x)#define BE64TOH(x)      (void) (x)EOF else  cat >> "$1" << EOF/* On little endian machines, these macros are null */#define htole16(x)      (x)#define htole32(x)      (x)#define htole64(x)      (x)#define le16toh(x)      (x)#define le32toh(x)      (x)#define le64toh(x)      (x)#define HTOLE16(x)      (void) (x)#define HTOLE32(x)      (void) (x)#define HTOLE64(x)      (void) (x)#define LE16TOH(x)      (void) (x)#define LE32TOH(x)      (void) (x)#define LE64TOH(x)      (void) (x)/* These don't have standard aliases */#define htobe64(x)      swap64(x)#define be64toh(x)      swap64(x)#define HTOBE64(x)      (x) = htobe64(x)#define BE64TOH(x)      (x) = be64toh(x)EOF fificat >> "$1" << EOF/* Define the C99 standard length-specific integer types */#include "_stdint.h"EOFcase "${effective_target}" in i[3456]86-*)  cat >> "$1" << EOF/* Here are some macros to create integers from a byte array *//* These are used to get and put integers from/into a uint8_t array *//* with a specific endianness.  This is the most portable way to generate *//* and read messages to a network or serial device.  Each member of a *//* packet structure must be handled separately. *//* The i386 and compatibles can handle unaligned memory access, *//* so use the optimized macros above to do this job */#define be16atoh(x)     be16toh(*(uint16_t*)(x))#define be32atoh(x)     be32toh(*(uint32_t*)(x))#define be64atoh(x)     be64toh(*(uint64_t*)(x))#define le16atoh(x)     le16toh(*(uint16_t*)(x))#define le32atoh(x)     le32toh(*(uint32_t*)(x))#define le64atoh(x)     le64toh(*(uint64_t*)(x))#define htobe16a(a,x)   *(uint16_t*)(a) = htobe16(x)#define htobe32a(a,x)   *(uint32_t*)(a) = htobe32(x)#define htobe64a(a,x)   *(uint64_t*)(a) = htobe64(x)#define htole16a(a,x)   *(uint16_t*)(a) = htole16(x)#define htole32a(a,x)   *(uint32_t*)(a) = htole32(x)#define htole64a(a,x)   *(uint64_t*)(a) = htole64(x)EOF  ;; *)  cat >> "$1" << EOF/* Here are some macros to create integers from a byte array *//* These are used to get and put integers from/into a uint8_t array *//* with a specific endianness.  This is the most portable way to generate *//* and read messages to a network or serial device.  Each member of a *//* packet structure must be handled separately. *//* Non-optimized but portable macros */#define be16atoh(x)     ((uint16_t)(((x)[0]<<8)|(x)[1]))#define be32atoh(x)     ((uint32_t)(((x)[0]<<24)|((x)[1]<<16)|((x)[2]<<8)|(x)[3]))#define be64atoh(x)     ((uint64_t)(((x)[0]<<56)|((x)[1]<<48)|((x)[2]<<40)| \\        ((x)[3]<<32)|((x)[4]<<24)|((x)[5]<<16)|((x)[6]<<8)|(x)[7]))#define le16atoh(x)     ((uint16_t)(((x)[1]<<8)|(x)[0]))#define le32atoh(x)     ((uint32_t)(((x)[3]<<24)|((x)[2]<<16)|((x)[1]<<8)|(x)[0]))#define le64atoh(x)     ((uint64_t)(((x)[7]<<56)|((x)[6]<<48)|((x)[5]<<40)| \\        ((x)[4]<<32)|((x)[3]<<24)|((x)[2]<<16)|((x)[1]<<8)|(x)[0]))#define htobe16a(a,x)   (a)[0]=(uint8_t)((x)>>8), (a)[1]=(uint8_t)(x)#define htobe32a(a,x)   (a)[0]=(uint8_t)((x)>>24), (a)[1]=(uint8_t)((x)>>16), \\        (a)[2]=(uint8_t)((x)>>8), (a)[3]=(uint8_t)(x)#define htobe64a(a,x)   (a)[0]=(uint8_t)((x)>>56), (a)[1]=(uint8_t)((x)>>48), \\        (a)[2]=(uint8_t)((x)>>40), (a)[3]=(uint8_t)((x)>>32), \\        (a)[4]=(uint8_t)((x)>>24), (a)[5]=(uint8_t)((x)>>16), \\        (a)[6]=(uint8_t)((x)>>8), (a)[7]=(uint8_t)(x)#define htole16a(a,x)   (a)[1]=(uint8_t)((x)>>8), (a)[0]=(uint8_t)(x)#define htole32a(a,x)   (a)[3]=(uint8_t)((x)>>24), (a)[2]=(uint8_t)((x)>>16), \\        (a)[1]=(uint8_t)((x)>>8), (a)[0]=(uint8_t)(x)#define htole64a(a,x)   (a)[7]=(uint8_t)((x)>>56), (a)[6]=(uint8_t)((x)>>48), \\        (a)[5]=(uint8_t)((x)>>40), (a)[4]=(uint8_t)((x)>>32), \\        (a)[3]=(uint8_t)((x)>>24), (a)[2]=(uint8_t)((x)>>16), \\        (a)[1]=(uint8_t)((x)>>8), (a)[0]=(uint8_t)(x)EOF  ;;esac]cat >> "$1" << EOF#endif /*__BYTEORDER_H*/EOF])

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品福利av导航| 色域天天综合网| 天涯成人国产亚洲精品一区av| 中文一区在线播放| 亚洲国产精品黑人久久久| 亚洲精品一区二区三区影院| 欧美老年两性高潮| 欧美日韩免费在线视频| 制服丝袜在线91| 日韩欧美高清一区| 精品剧情v国产在线观看在线| 久久色在线观看| 久久久久久毛片| 国产精品麻豆99久久久久久| 亚洲人成在线观看一区二区| 亚洲午夜精品一区二区三区他趣| 婷婷国产v国产偷v亚洲高清| 日韩成人免费电影| 国产乱国产乱300精品| 国产一区二区电影| 91视频国产资源| 欧美日韩aaaaaa| 久久久噜噜噜久噜久久综合| 日本一区二区三区国色天香| 亚洲欧洲成人自拍| 亚洲精品免费在线| 亚洲国产精品久久久久婷婷884| 一区二区三区**美女毛片| 偷拍一区二区三区四区| 美腿丝袜在线亚洲一区| 久久国产生活片100| 国产精品99精品久久免费| 99精品热视频| 日韩欧美国产成人一区二区| 日韩理论在线观看| 麻豆国产精品视频| 99re视频精品| 欧美成人一区二区三区在线观看| 国产亚洲一区二区三区四区| 亚洲综合免费观看高清完整版 | 亚洲视频图片小说| 亚洲高清免费视频| 国产精品18久久久久久久久 | 欧美精品三级日韩久久| 国产欧美日韩中文久久| 亚洲午夜久久久久久久久电影网| 国产精品一色哟哟哟| 欧美日韩一级黄| 亚洲欧洲日韩av| 国内精品视频一区二区三区八戒| 欧美色精品在线视频| 中文字幕 久热精品 视频在线| 日本不卡不码高清免费观看| 94色蜜桃网一区二区三区| 26uuu精品一区二区| 亚洲成人免费视频| 色婷婷国产精品综合在线观看| 国产亚洲成av人在线观看导航 | 久久免费电影网| 国产乱码精品一区二区三区忘忧草| 欧美综合欧美视频| 国产精品入口麻豆原神| 精品一二三四区| 91.xcao| 亚洲午夜国产一区99re久久| 99久久国产免费看| 中文字幕一区二区三区在线观看| 国产一区91精品张津瑜| 日韩欧美一二三| 婷婷激情综合网| 91精品国产欧美一区二区| 亚洲一区二区不卡免费| 在线观看欧美黄色| 亚洲欧美另类久久久精品| 97精品国产97久久久久久久久久久久| 久久嫩草精品久久久久| 国产福利视频一区二区三区| 久久久久成人黄色影片| 国产iv一区二区三区| 久久久不卡网国产精品一区| 国产精品综合久久| 国产婷婷色一区二区三区四区| 国产一区二区不卡| 欧美激情一区三区| www.色精品| 一区二区三区自拍| 欧美日韩高清一区二区三区| 亚洲成精国产精品女| 欧美一区二区视频网站| 蜜臀久久久99精品久久久久久| 精品国产一区二区三区av性色 | 欧美午夜视频网站| 午夜欧美视频在线观看| 欧美一二三区精品| 国产高清无密码一区二区三区| 欧美国产日韩a欧美在线观看| 97久久超碰国产精品电影| 精品一区二区影视| 国产调教视频一区| 在线一区二区三区做爰视频网站| 亚洲国产毛片aaaaa无费看| 91精品午夜视频| 国产成人自拍网| 夜夜夜精品看看| 26uuu亚洲| 色婷婷综合五月| 黄页视频在线91| 一区二区久久久久| 欧美本精品男人aⅴ天堂| 波多野结衣中文字幕一区 | 精品剧情v国产在线观看在线| 成人性生交大片免费看中文网站| 亚洲码国产岛国毛片在线| 欧美一区二区在线看| www.亚洲色图.com| 美女精品一区二区| 一区二区三区中文字幕在线观看| 日韩精品一区二区三区三区免费| av电影在线观看完整版一区二区| 亚洲成av人片在线观看| 国产精品乱子久久久久| 欧美网站大全在线观看| 国产成人免费网站| 美洲天堂一区二卡三卡四卡视频| 综合网在线视频| 欧美v国产在线一区二区三区| 99精品视频一区| 成人做爰69片免费看网站| 日韩和欧美一区二区三区| 自拍偷自拍亚洲精品播放| 久久久久久免费网| 欧美成人综合网站| 91精品国产欧美一区二区18| 91蝌蚪porny| 国产激情一区二区三区桃花岛亚洲| 亚洲一二三专区| 一区二区在线电影| 国产精品护士白丝一区av| 2021国产精品久久精品| 亚洲精品一区二区三区影院| 欧美日韩夫妻久久| 欧美少妇bbb| 欧美在线视频不卡| 欧美亚洲精品一区| 欧美中文字幕不卡| 欧美在线观看一区二区| 一本大道久久a久久综合婷婷| 国产成人8x视频一区二区| 国产电影一区二区三区| 国产精品亚洲人在线观看| 九九九精品视频| 激情图区综合网| 国产乱码精品一区二区三| 激情小说欧美图片| 国产麻豆视频一区| 国产麻豆精品视频| 风间由美一区二区av101| 国产乱码精品一区二区三区五月婷| 黄页网站大全一区二区| 国产乱子伦一区二区三区国色天香| 韩国成人在线视频| 国产精品一区2区| 成人国产亚洲欧美成人综合网| 国产精品综合视频| 成人av午夜电影| 91丨porny丨最新| 欧美在线高清视频| 在线播放/欧美激情| 精品久久一区二区| 亚洲国产精品激情在线观看| 国产精品国产三级国产aⅴ无密码| 亚洲视频精选在线| 午夜久久久影院| 国产一区二区不卡在线 | 天堂av在线一区| 久久99精品国产.久久久久| 国产成人精品综合在线观看| 成人av一区二区三区| 欧美视频一区二区三区在线观看 | 亚洲免费av网站| 日韩电影一区二区三区四区| 国产在线精品一区二区| 99精品视频在线观看免费| 欧美美女bb生活片| 欧美国产精品一区二区| 亚洲第一福利一区| 国产精品一品二品| 欧美日韩精品一区二区三区 | 国产精品天美传媒沈樵| 亚洲综合另类小说| 国产不卡免费视频| 欧美男人的天堂一二区| 中文字幕精品一区| 日韩综合一区二区| 本田岬高潮一区二区三区| 欧美日本在线观看| 综合婷婷亚洲小说| 久久99国产精品免费网站| 日本国产一区二区| 国产三级精品视频|