日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

rtthread_scons简介

發(fā)布時(shí)間:2024/3/26 编程问答 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 rtthread_scons简介 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

env工具基本構(gòu)成

  • 命令行環(huán)境Cmder: Cmder是一款免費(fèi)的DOS系統(tǒng)仿真器,體積小巧,界面清爽,支持多標(biāo)簽操作,兼容dos原有的指令。
  • 系統(tǒng)配置工具menuconfig: 即linux menuconfig的python實(shí)現(xiàn)版本,使用方法與linux menuconfig基本一致。遵循兼容LINUX的Kconfig語法,用戶可以方便的沿用以前的kconfig配置文件對代碼進(jìn)行宏管理。
  • 開源軟件scons: scons是一個(gè)Python寫的自動(dòng)化構(gòu)建工具,從構(gòu)建這個(gè)角度說,它跟GNU make是同一類的工具,是一種改進(jìn),并跨平臺(tái)的gnu make替代工具,其集成功能類似于autoconf/automake。scons是一個(gè)更簡便,更可靠,更高效的編譯軟件。
  • Python環(huán)境與.py文件: 主要目的是將scons, menuconfig, MinGW等有機(jī)的整合到Cmder中,以及添加scons的擴(kuò)展選項(xiàng),支持生成KEIL等可直接使用的項(xiàng)目文件。
  • 交叉編譯工具鏈MinGW: MinGW是Minimalist GNUfor Windows的縮寫。它是一個(gè)可自由使用和自由發(fā)布的Windows特定頭文件和使用GNU工具集導(dǎo)入庫的集合,允許你在GNU/Linux和Windows平臺(tái)生成本地的Windows程序而不需要第三方C運(yùn)行時(shí)(C Runtime)庫。
  • 打開ENV工具進(jìn)入具體工程目錄
    C:\Users\Admin\Desktop\data\rt-thread\bsp\stm32\stm32f407-atk-explorer

    scons //使用默認(rèn)的 ARM_GCC 工具鏈編譯 bsp, scons 命令會(huì)根據(jù) rtconfig.h文件編譯工程 scons -c //清除編譯目標(biāo)。這個(gè)命令會(huì)清除執(zhí)行 scons 時(shí)生成的臨時(shí)文件和目標(biāo)文件 scons --target=iar //重新生成工程 scons --target=mdk5 scons --verbose //默認(rèn)情況下,使用 scons 命令編譯的輸出不會(huì)顯示編譯參數(shù)

    menuconfig工作機(jī)制

  • menuconfig啟動(dòng)后默認(rèn)到當(dāng)前目錄下尋找Kconfig文件,并解析。Kconfig中可以通過source指定加載子Kconfig文件,這樣根據(jù)Kconfig文件的內(nèi)部調(diào)用結(jié)構(gòu),menuconfig依次解析所有被引用的Kconfig文件,生成內(nèi)部的配置選項(xiàng)數(shù)據(jù)庫
  • 解析.config文件,根據(jù)上一次的配置結(jié)果初始化各個(gè)配置選項(xiàng)的初值。
  • 給用戶展示配置界面,并根據(jù)用戶的選擇更新內(nèi)部數(shù)據(jù)庫。
  • Kconfig文件
    (目錄:C:\Users\Admin\Desktop\data\rt-thread\bsp\stm32\stm32f407-atk-explorer)

    mainmenu "RT-Thread Configuration" //定義主菜單標(biāo)題config BSP_DIRstringoption env="BSP_ROOT"default "."config RTT_DIRstringoption env="RTT_ROOT"default "../../.."config PKGS_DIRstringoption env="PKGS_ROOT"default "packages"source "$RTT_DIR/Kconfig" source "$PKGS_DIR/Kconfig" source "../libraries/Kconfig" //加載其他目錄下的Kconfig source "board/Kconfig"
  • BSP_DIR變量定義了BSP根目錄,默認(rèn)是. (因?yàn)镵config文件放置于BSP板級(jí)支持包目錄下),除非系統(tǒng)中定義了BSP_ROOT的環(huán)境變量;
  • RTT_DIR變量定義了RT-Thread 根目錄,因?yàn)榘寮?jí)包目錄默認(rèn)放置在rt-thread/bsp目錄下,所以這個(gè)變量的默認(rèn)值是…/…,除非系統(tǒng)中定義了RTT_ROOT的環(huán)境變量;
  • PKGS_DIR變量定義了RT-Thread包根目錄,一般它會(huì)從系統(tǒng)的環(huán)境變量PKGS_ROOT中獲得,而如果使用RT-Thread/env工具,env工具在啟動(dòng)console終端時(shí)會(huì)默認(rèn)地定義這個(gè)環(huán)境變量;
  • 這份Kconfig文件的后面部分則把相關(guān)的Kconfig文件都包含到這個(gè)Kconfig文件中來,最關(guān)鍵的是RT-Thread主干Kconfig文件 $RTT_DIR/Kconfig 和包Kconfig文件 $PKGS_DIR/Kconfig 。
  • 用戶退出交互界面并保存配置,menuconfig根據(jù)內(nèi)部數(shù)據(jù)庫內(nèi)容,生成新的.config文件。
    .config文件:

    # # Automatically generated file; DO NOT EDIT. # RT-Thread Configuration ## # RT-Thread Kernel # CONFIG_RT_NAME_MAX=8 # CONFIG_RT_USING_ARCH_DATA_TYPE is not set # CONFIG_RT_USING_SMP is not set CONFIG_RT_ALIGN_SIZE=4 # CONFIG_RT_THREAD_PRIORITY_8 is not set CONFIG_RT_THREAD_PRIORITY_32=y # CONFIG_RT_THREAD_PRIORITY_256 is not set CONFIG_RT_THREAD_PRIORITY_MAX=32 CONFIG_RT_TICK_PER_SECOND=1000 CONFIG_RT_USING_OVERFLOW_CHECK=y CONFIG_RT_USING_HOOK=y CONFIG_RT_USING_IDLE_HOOK=y CONFIG_RT_IDLE_HOOK_LIST_SIZE=4 CONFIG_IDLE_THREAD_STACK_SIZE=1024

    將.config文件翻譯成c語言能夠識(shí)別的rtconfig.h文件,位于當(dāng)前工作目錄下。
    通過上面的步驟,menuconfig根據(jù)用戶的配置,最終生成了rtconfig.h文件,用戶便可以直接引用rtconfig.h文件來使用系統(tǒng)宏。從下面截取的示例可以看到rtconfig.h文件和.config文件是一 一對應(yīng)的關(guān)系
    rtconfig.h文件:

    #ifndef RT_CONFIG_H__ #define RT_CONFIG_H__/* Automatically generated file; DO NOT EDIT. */ /* RT-Thread Configuration *//* RT-Thread Kernel */#define RT_NAME_MAX 8 #define RT_ALIGN_SIZE 4 #define RT_THREAD_PRIORITY_32 #define RT_THREAD_PRIORITY_MAX 32 #define RT_TICK_PER_SECOND 1000 #define RT_USING_OVERFLOW_CHECK #define RT_USING_HOOK #define RT_USING_IDLE_HOOK #define RT_IDLE_HOOK_LIST_SIZE 4 #define IDLE_THREAD_STACK_SIZE 1024

    SCons基本命令

    scons
    編譯指令,根據(jù)scons腳本(SConstruct, SConscript)的配置,組織編譯代碼。scons命令必須在工程路徑下執(zhí)行,因?yàn)閟cons默認(rèn)會(huì)在當(dāng)前路徑下尋找SConstruct文件作為第一個(gè)解析的腳本

    scons支持增量編譯,對已經(jīng)編譯過的文件,且編譯后沒有進(jìn)行過修改,那scons不會(huì)重新編譯這些文件,從而達(dá)到提高編譯效率的目的。

    scons --verbose
    直接使用scons編譯時(shí),默認(rèn)是不會(huì)輸出編譯選項(xiàng)等信息的。使用scons --verbose進(jìn)行編譯時(shí),將會(huì)打印編譯器選項(xiàng)等輔助信息。

    scons -c
    清除上一次編譯的臨時(shí)文件。執(zhí)行該命令后,下一次編譯將能保證所有源文件都會(huì)被重新編譯。

    scons --help
    幫助命令,該命令會(huì)例舉出scons支持的所有操作選項(xiàng),包括原生scons自帶的選項(xiàng)與OneOS擴(kuò)展的操作選項(xiàng)。scons支持的操作選項(xiàng)很豐富,推薦讀者都去了解一下。

    scons --ide=xxx
    生成第三方IDE工程命令,其中“XXX”對應(yīng)想要生成的工程類型。具體支持的工程類型可以通過scons --help查看。舉例生成keil5工程的命令如下:

    scons --ide=mdk5

    需要注意的是,要生產(chǎn)指定的IDE工程文件,一般需要提供一個(gè)空的工程文件作為模版,用戶應(yīng)該在相應(yīng)的模版文件中配置好硬件相關(guān)的編譯選項(xiàng)。具體可以參考示例開發(fā)板的工程目錄中的文件。

    SCons編譯構(gòu)造概述

    Scons是構(gòu)造工具,通過讀取SConstruct/Sconstruct/sconstruct和SConscript腳本來組織管理源碼,并調(diào)用指定的編譯鏈接器來對源文件進(jìn)行編譯。

    scons目前支持的編譯器包括 ARM GCC、MDK、IAR、VisualStudio、Visual DSP。對流行的ARM Cortex M0、M3、M4 等架構(gòu),一般都同時(shí)支持ARM GCC、MDK、IAR 等編譯器。用戶可以通過 project 目錄下的osconfig.py 里的 CROSS_TOOL 選項(xiàng)查看相關(guān)的編譯器配置。

    使用SCons工具時(shí),會(huì)使用到SConstruct/Sconstruct/sconstruct和SConscript 2種類型的文件。這2種類型的文件是Scons工具必備的,是編譯的配置腳本文件,相當(dāng)于make中的makefile文件。

    Scons將在當(dāng)前目錄下按SConstruct、Sconstruct、sconstruct次序來搜索配置文件,從讀取的第1個(gè)文件中讀取相關(guān)配置。

    在配置文件SConstruct中,可以使用SConscript()函數(shù)來讀取附屬的配置文件。按慣例,這些附屬配置文件被命名為“SConscript”。

    SCons的擴(kuò)展性

    scons的配置文件都是基于python腳本語法的。因此可以在SConstruct文件中使用python語言很方便的調(diào)用自定義的python腳本與模塊。

    同時(shí),scons自身也是python實(shí)現(xiàn)的,在自己的python腳本文件中通過添加語句:
    from SCons.Script import *

    可以很方便的直接使用scons內(nèi)置類與操作。正因?yàn)閟cons與python腳本可以方便的互相調(diào)用,我們可以對scons方便的進(jìn)行自定義與擴(kuò)展。

    SCons常用函數(shù)

    腳本涉及到的函數(shù)分為兩部分:標(biāo)準(zhǔn)函數(shù),自定義函數(shù)。

    Import()、Export()函數(shù)
    Import(vars)

    導(dǎo)入其它腳本定義的變量

    ‘vars’變量名,變量名是字符串,可以是一個(gè)變量或一個(gè)變量列表

    Export(vars)

    導(dǎo)出變量,供其它腳本使用

    ‘vars’變量名,變量名是字符串,可以是一個(gè)變量或一個(gè)變量列表

    SConscript()函數(shù)
    SConscript(scripts, [exports, variant_dir, duplicate])

    讀取一個(gè)或多個(gè)sconscript腳本,返回一個(gè)node列表,node是指一個(gè)編譯對象

    ‘scripts’:指定要加載的sconscript腳本名稱與路徑

    ‘exports’:可選參數(shù),導(dǎo)出一個(gè)變量,此變量比一般Export()導(dǎo)出的變量有更高優(yōu)先權(quán)

    ‘variant_dir’:可選參數(shù),指定一個(gè)目錄,編譯動(dòng)作都在該目錄中進(jìn)行,不影響源碼路徑

    ‘duplicate’:可選參數(shù),指定編譯目錄中是否拷貝源碼

    PresentDir()函數(shù)
    PresentDir()

    獲取當(dāng)前腳本所在路徑

    Glob()函數(shù)
    Glob(pattern)

    返回滿足pattern指定條件的Node(編譯對象)

    ‘pattern’:指定匹配條件,支持unix shell的通配符替換。支持當(dāng)前腳本所在路徑進(jìn)行相對路徑索引

    IsDefined()函數(shù)
    IsDefined(depend)

    判斷依賴的宏或宏列表是否被定義,被定義返回True,如果存在未被定義的宏返回False

    ‘depend’:指定依賴的宏,或宏列表

    DeleteSrcFile()函數(shù)
    DeleteSrcFile(src, remove)

    將指定的文件從編譯列表中移除

    ‘src’:編譯node列表

    ‘remove’:指定被移除的文件

    AddCodeGroup()函數(shù)
    AddCodeGroup(name, src, depend, **parameters)

    將編譯對象添加到一個(gè)代碼組中進(jìn)行編譯管理,返回編譯對象列表

    ‘name’:指定代碼組名稱,如果該名稱已經(jīng)存在,則將添加到已經(jīng)存在的組中。在keil工程中以該名稱呈現(xiàn)一個(gè)工作組

    ‘src’:指定要被添加的編譯對象列表

    ‘depend’:關(guān)鍵字參數(shù),指定創(chuàng)建該組依賴的宏,如果條件宏不滿足,則直接返回空列表

    ‘parameters’:可變關(guān)鍵字參數(shù),指定相應(yīng)的編譯行為,支持的關(guān)鍵字如下:

    CPPPATH指定頭文件路徑,對應(yīng)gcc的-I

    CCFLAGS對應(yīng)gcc的–include選項(xiàng)

    CPPDEFINES定義編譯宏,對應(yīng)gcc的-D

    LINKFLAGS定義鏈接選項(xiàng)

    LOCAL_CPPPATH

    定義僅對當(dāng)前組有效的頭文件路徑選項(xiàng)

    SCons的編譯環(huán)境類

    scons中的一個(gè)基本類是構(gòu)造環(huán)境Environment,scons對編譯源碼的管理,以及對編譯行為的控制都是通過配置構(gòu)造環(huán)境(Env)來管理的。通過調(diào)用Environment()可以創(chuàng)建一個(gè)構(gòu)造環(huán)境對象(Env)

    配置Env對象中的各個(gè)變量,我們可以方便的定義需要的編譯行為。簡單舉例:

    通過CPPPATH變量可以添加gcc編譯的-I選項(xiàng)

    通過CPPDEFINES變量可以添加gcc的-D選項(xiàng)

    通過CC變量可以指定C語言的交叉編譯器

    通過RESULT_SUFFIX變量可以指定生成目標(biāo)文件的類型

    通過env[‘ENV’][‘PATH’]變量可以指定交叉編譯工具鏈的路徑

    python基礎(chǔ)知識(shí)

    os函數(shù)

    • os.system() #運(yùn)行shell命令
    • os.name #返回當(dāng)前使用平臺(tái)的代表字符,Windows用’nt’表示,Linux用’posix’表示
    • os.sep #返回當(dāng)前操作系統(tǒng)特定的路徑分隔符,window和Linux通常不一樣
    • os.path.split(path) #將path的目錄和文件名分開為元組
    • os.path.join(path1,path2,…) #將path1,path2,…進(jìn)行組合,若path2為絕對路徑,則會(huì)將path1刪除
    • os.path.dirname(path) #返回path中的目錄(文件夾部分),結(jié)果不包含’’
    • os.path.basename(path) #返回path中的文件名

    scons內(nèi)置函數(shù)

    每一個(gè) RT-Thread BSP 目錄下都會(huì)存在下面三個(gè)文件:rtconfig.py、SConstruct 和 SConscript,它們控制 BSP 的編譯。SConstruct文件是SCons默認(rèn)解析的第一個(gè)腳本,因此scons命令必須在它所在的路徑下執(zhí)行。一般建議將SConstruct腳本與rtconfig.py腳本置于用戶工程目錄中。下面以一個(gè)SConstruct為例進(jìn)行簡單分析:

    SConstruct文件(SCons環(huán)境配置類腳本):

    import os //加載python庫os,os是python自帶的系統(tǒng)模塊,需要import使用os 源于英文Operating System(操作系統(tǒng))的縮寫 import sys //加載python庫sys import rtconfig //加載編譯選項(xiàng)配置腳本rtconfig.pyif os.getenv('RTT_ROOT'):RTT_ROOT = os.getenv('RTT_ROOT') else:RTT_ROOT = os.path.normpath(os.getcwd() + '/../../..') //cwd(Current Working Directory),含義為當(dāng)前工作目錄,os.getcwd() 指獲取當(dāng)前工作目錄。定義從SConstruct所在目錄到rtthread源碼根目錄的相對路徑sys.path = sys.path + [os.path.join(RTT_ROOT, 'tools')] try:from building import * except:print('Cannot found RT-Thread root directory, please check RTT_ROOT')print(RTT_ROOT)exit(-1)TARGET = 'rt-thread.' + rtconfig.TARGET_EXT //指定編譯生成二進(jìn)制文件的名字//將rtconfig.py中配置的編譯選項(xiàng)信息傳遞到scons內(nèi)置編譯對象env中 DefaultEnvironment(tools=[]) env = Environment(tools = ['mingw'],AS = rtconfig.AS, ASFLAGS = rtconfig.AFLAGS,CC = rtconfig.CC, CCFLAGS = rtconfig.CFLAGS,AR = rtconfig.AR, ARFLAGS = '-rc',CXX = rtconfig.CXX, CXXFLAGS = rtconfig.CXXFLAGS,LINK = rtconfig.LINK, LINKFLAGS = rtconfig.LFLAGS) env.PrependENVPath('PATH', rtconfig.EXEC_PATH)if rtconfig.PLATFORM == 'iar':env.Replace(CCCOM = ['$CC $CCFLAGS $CPPFLAGS $_CPPDEFFLAGS $_CPPINCFLAGS -o $TARGET $SOURCES'])env.Replace(ARFLAGS = [''])env.Replace(LINKCOM = env["LINKCOM"] + ' --map rt-thread.map')Export('RTT_ROOT') //導(dǎo)出 RTT_ROOT 變量,供其他腳本使用 Export('rtconfig') //導(dǎo)出 rtconfig 變量,供其他腳本使用SDK_ROOT = os.path.abspath('./')if os.path.exists(SDK_ROOT + '/libraries'):libraries_path_prefix = SDK_ROOT + '/libraries' else:libraries_path_prefix = os.path.dirname(SDK_ROOT) + '/libraries'SDK_LIB = libraries_path_prefix Export('SDK_LIB')# prepare building environment objs = PrepareBuilding(env, RTT_ROOT, has_libcpu=False) //調(diào)用(某腳本文件).py中的工具函數(shù),其中會(huì)對scons選項(xiàng),以及相應(yīng)的編譯選項(xiàng)適配進(jìn)行處理,通過sconscript()調(diào)用sconscript腳本文件stm32_library = 'STM32F4xx_HAL' rtconfig.BSP_LIBRARY_TYPE = stm32_library# include libraries objs.extend(SConscript(os.path.join(libraries_path_prefix, stm32_library, 'SConscript')))# include drivers objs.extend(SConscript(os.path.join(libraries_path_prefix, 'HAL_Drivers', 'SConscript')))# make a building DoBuilding(TARGET, objs)

    由上示例可以看出,SConstruct與rtconfig.py與用戶的具體應(yīng)用環(huán)境和編譯配置緊密相關(guān)

    SConscript文件(SCons中間加載類腳本):
    (目錄:C:\Users\Admin\Desktop\data\rt-thread\bsp\stm32\stm32f407-atk-explorer)

    # for module compiling import os Import('RTT_ROOT') from building import *cwd = GetCurrentDir() //獲取當(dāng)前目錄 objs = [] list = os.listdir(cwd) //獲取當(dāng)前目錄下的子目錄列表//遍歷整個(gè)列表,判斷子目錄下是否存在SConscript腳本,如果存在則通過SConscript()方法加載該腳本 for d in list:path = os.path.join(cwd, d)if os.path.isfile(os.path.join(path, 'SConscript')):objs = objs + SConscript(os.path.join(d, 'SConscript'))Return('objs')

    SConscript文件(SCons代碼組織類腳本):
    此SConscript腳本位于子目錄
    (目錄:C:\Users\Admin\Desktop\data\rt-thread\bsp\stm32\stm32f407-atk-explorer\applications)

    DefineGroup()中的名字參數(shù)必須指定,如果該名字的組已經(jīng)存在,則會(huì)進(jìn)行追加合并。鍵值參數(shù)不是必選的,可以缺省。

    import rtconfig from building import *cwd = GetCurrentDir() CPPPATH = [cwd, str(Dir('#'))] #添加搜尋頭文件路徑 src = Split(""" main.c """) #定義要添加的源文件group = DefineGroup('Applications', src, depend = [''], CPPPATH = CPPPATH) #創(chuàng)建代碼管理組Return('group') #將定義的組返回給上一級(jí)調(diào)用腳本

    rtconfig.py文件:
    rtconfig.py文件,主要用于指定編譯器以及安裝路徑。除此之外,該文件中定義了大量的變量,這些變量包括編譯選項(xiàng),匯編選項(xiàng),鏈接選項(xiàng)。

    import os# toolchains options ARCH='arm' CPU='cortex-m4' CROSS_TOOL='gcc'# bsp lib config BSP_LIBRARY_TYPE = Noneif os.getenv('RTT_CC'):CROSS_TOOL = os.getenv('RTT_CC') if os.getenv('RTT_ROOT'):RTT_ROOT = os.getenv('RTT_ROOT')# cross_tool provides the cross compiler # EXEC_PATH is the compiler execute path, for example, CodeSourcery, Keil MDK, IAR if CROSS_TOOL == 'gcc':PLATFORM = 'gcc'EXEC_PATH = r'C:\Users\XXYYZZ' elif CROSS_TOOL == 'keil':PLATFORM = 'armcc'EXEC_PATH = r'C:/Keil_v5' elif CROSS_TOOL == 'iar':PLATFORM = 'iar'EXEC_PATH = r'C:/Program Files (x86)/IAR Systems/Embedded Workbench 8.0'if os.getenv('RTT_EXEC_PATH'):EXEC_PATH = os.getenv('RTT_EXEC_PATH')BUILD = 'debug'if PLATFORM == 'gcc':# toolchainsPREFIX = 'arm-none-eabi-'CC = PREFIX + 'gcc'AS = PREFIX + 'gcc'AR = PREFIX + 'ar'CXX = PREFIX + 'g++'LINK = PREFIX + 'gcc'TARGET_EXT = 'elf'SIZE = PREFIX + 'size'OBJDUMP = PREFIX + 'objdump'OBJCPY = PREFIX + 'objcopy'DEVICE = ' -mcpu=cortex-m4 -mthumb -mfpu=fpv4-sp-d16 -mfloat-abi=hard -ffunction-sections -fdata-sections'CFLAGS = DEVICE + ' -Dgcc'AFLAGS = ' -c' + DEVICE + ' -x assembler-with-cpp -Wa,-mimplicit-it=thumb 'LFLAGS = DEVICE + ' -Wl,--gc-sections,-Map=rt-thread.map,-cref,-u,Reset_Handler -T board/linker_scripts/link.lds'CPATH = ''LPATH = ''if BUILD == 'debug':CFLAGS += ' -O0 -gdwarf-2 -g'AFLAGS += ' -gdwarf-2'else:CFLAGS += ' -O2'CXXFLAGS = CFLAGS POST_ACTION = OBJCPY + ' -O binary $TARGET rtthread.bin\n' + SIZE + ' $TARGET \n'elif PLATFORM == 'armcc':# toolchainsCC = 'armcc'CXX = 'armcc'AS = 'armasm'AR = 'armar'LINK = 'armlink'TARGET_EXT = 'axf'DEVICE = ' --cpu Cortex-M4.fp 'CFLAGS = '-c ' + DEVICE + ' --apcs=interwork --c99'AFLAGS = DEVICE + ' --apcs=interwork 'LFLAGS = DEVICE + ' --scatter "board\linker_scripts\link.sct" --info sizes --info totals --info unused --info veneers --list rt-thread.map --strict'CFLAGS += ' -I' + EXEC_PATH + '/ARM/ARMCC/include'LFLAGS += ' --libpath=' + EXEC_PATH + '/ARM/ARMCC/lib'CFLAGS += ' -D__MICROLIB 'AFLAGS += ' --pd "__MICROLIB SETA 1" 'LFLAGS += ' --library_type=microlib 'EXEC_PATH += '/ARM/ARMCC/bin/'if BUILD == 'debug':CFLAGS += ' -g -O0'AFLAGS += ' -g'else:CFLAGS += ' -O2'CXXFLAGS = CFLAGS CFLAGS += ' -std=c99'POST_ACTION = 'fromelf --bin $TARGET --output rtthread.bin \nfromelf -z $TARGET'elif PLATFORM == 'iar':# toolchainsCC = 'iccarm'CXX = 'iccarm'AS = 'iasmarm'AR = 'iarchive'LINK = 'ilinkarm'TARGET_EXT = 'out'DEVICE = '-Dewarm'CFLAGS = DEVICECFLAGS += ' --diag_suppress Pa050'CFLAGS += ' --no_cse'CFLAGS += ' --no_unroll'CFLAGS += ' --no_inline'CFLAGS += ' --no_code_motion'CFLAGS += ' --no_tbaa'CFLAGS += ' --no_clustering'CFLAGS += ' --no_scheduling'CFLAGS += ' --endian=little'CFLAGS += ' --cpu=Cortex-M4'CFLAGS += ' -e'CFLAGS += ' --fpu=VFPv4_sp'CFLAGS += ' --dlib_config "' + EXEC_PATH + '/arm/INC/c/DLib_Config_Normal.h"'CFLAGS += ' --silent'AFLAGS = DEVICEAFLAGS += ' -s+'AFLAGS += ' -w+'AFLAGS += ' -r'AFLAGS += ' --cpu Cortex-M4'AFLAGS += ' --fpu VFPv4_sp'AFLAGS += ' -S'if BUILD == 'debug':CFLAGS += ' --debug'CFLAGS += ' -On'else:CFLAGS += ' -Oh'LFLAGS = ' --config "board/linker_scripts/link.icf"'LFLAGS += ' --entry __iar_program_start'CXXFLAGS = CFLAGSEXEC_PATH = EXEC_PATH + '/arm/bin/'POST_ACTION = 'ielftool --bin $TARGET rtthread.bin'def dist_handle(BSP_ROOT, dist_dir):import syscwd_path = os.getcwd()sys.path.append(os.path.join(os.path.dirname(BSP_ROOT), 'tools'))from sdk_dist import dist_do_buildingdist_do_building(BSP_ROOT, dist_dir)

    總結(jié)

    以上是生活随笔為你收集整理的rtthread_scons简介的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

    就要干b| 狠狠狠狠狠狠干 | 国产一二区免费视频 | 国产成人一区二区在线观看 | 国产在线视频导航 | 丁香九月激情综合 | 精品一区二区三区香蕉蜜桃 | 波多野结衣资源 | 成年人免费在线观看网站 | 在线视频在线观看 | 国产日本亚洲 | 久久新视频| 久久毛片视频 | 欧美男同网站 | 免费看三级网站 | 夜夜夜夜猛噜噜噜噜噜初音未来 | 日本九九视频 | 成 人 黄 色 片 在线播放 | av成人在线网站 | 色av资源网 | h文在线观看免费 | 五月天色中色 | 婷婷色狠狠 | 国产一区二区在线看 | 国产精品久久久久久高潮 | 国产一区二区日本 | 成人黄色毛片视频 | 人人射 | 日韩在线中文字幕 | 亚洲女在线 | 久久观看 | 国产在线观看网站 | 欧美先锋影音 | 国产精品久久久久久久免费 | 麻花天美星空视频 | 去干成人网| 五月天视频网站 | 色99视频 | 三级av小说 | 亚洲美女在线国产 | 五月婷婷丁香六月 | 亚洲天堂网视频在线观看 | 成人观看视频 | 99免费看片 | 91私密保健| 91福利小视频 | 一级欧美黄 | 亚洲日本一区二区在线 | 日本最新高清不卡中文字幕 | 99久久久国产精品免费99 | 狠狠干干 | 亚洲免费在线 | 一级特黄av| 激情视频一区二区三区 | 热久在线 | 久久久久www| 成年人免费在线观看 | 91麻豆网| 免费a视频 | 久久1区| 国产一级黄色电影 | 成人黄色电影免费观看 | 国产成人一区二区精品非洲 | 99热这里有 | 久久伊99综合婷婷久久伊 | 久久国产精品色婷婷 | 国产福利小视频在线 | 亚洲国产精品传媒在线观看 | 在线观看一区二区视频 | 久久综合偷偷噜噜噜色 | 西西www4444大胆在线 | 婷婷视频在线观看 | 日韩精品在线免费观看 | 成人网444ppp | 久久午夜免费视频 | 久99久精品 | 国产精品久久久久久超碰 | 麻豆视频免费观看 | 日本三级吹潮在线 | 国产麻豆果冻传媒在线观看 | 91免费视频网站在线观看 | 在线观看免费国产小视频 | 九九九在线观看 | 欧美日韩国产色综合一二三四 | 麻豆国产精品va在线观看不卡 | 亚洲狠狠操 | 欧美日本在线观看视频 | 中文字幕第| 十八岁免进欧美 | 欧美日韩在线第一页 | 人人舔人人爽 | 一本到视频在线观看 | 亚洲人av免费网站 | 涩涩网站在线看 | 国产精品免费一区二区三区 | 天天色视频| 中文网丁香综合网 | 看片一区二区三区 | 97视频久久久 | 九九久久久久99精品 | 久久精品一区二区三区中文字幕 | 天天操天天操天天操天天操天天操天天操 | 精品国产免费一区二区三区五区 | 午夜影院在线观看18 | 色网站在线| 999视频精品| av手机在线播放 | 成人中文字幕在线 | 怡红院av久久久久久久 | 日韩黄色在线 | 亚洲精品视频在线观看网站 | 欧美日在线| 国产高清成人 | 国产精品激情在线观看 | 免费国产在线精品 | 久久久久国产一区二区 | 亚洲精品一区二区三区高潮 | 狠狠操91| 日韩一区二区三区高清在线观看 | 欧美韩日在线 | 国产精品 亚洲精品 | 欧美在线视频一区二区三区 | 成人亚洲免费 | 五月婷婷毛片 | 91夫妻视频 | 日免费视频 | 91av手机在线观看 | 亚洲黄色免费 | av资源在线看 | 丝袜美女在线观看 | 亚洲一级黄色大片 | 国产a级片免费观看 | 国产美女精品视频 | 五月色丁香 | 婷婷六月天丁香 | 久久久久久毛片精品免费不卡 | 国产99在线免费 | 日韩在线视频观看免费 | a电影免费看 | 免费av网站在线看 | 成年人视频在线免费 | 久热国产视频 | 亚洲色图激情文学 | 天天摸天天舔 | 日韩在线视 | 91爱爱中文字幕 | 亚洲一级理论片 | 黄色毛片视频免费 | 亚洲女同ⅹxx女同tv | 伊人狠狠干 | 中文字幕精品在线 | 久久激情五月激情 | 精品国产成人av在线免 | 亚洲免费精彩视频 | 日韩成人免费电影 | 日日夜夜综合网 | 日躁夜躁狠狠躁2001 | 狠狠做六月爱婷婷综合aⅴ 日本高清免费中文字幕 | 嫩模bbw搡bbbb搡bbbb| 国产在线国偷精品产拍 | 亚洲国产最新 | 天天操夜夜操夜夜操 | 国产精品99久久久久久人免费 | 91成版人在线观看入口 | av一区二区三区在线播放 | 久久久久久久福利 | 国产一级在线免费观看 | 成人久久久久久久久 | 视频二区在线 | www·22com天天操 | 91在线视频一区 | 久久最新网址 | 在线中文视频 | 在线看中文字幕 | 国产 一区二区三区 在线 | 久要激情网 | 亚洲视频每日更新 | 激情久久五月 | 人人爽人人舔 | 色五月激情五月 | 激情欧美国产 | 欧美老女人xx | 亚洲综合五月 | 国产黄色片免费观看 | 欧美a视频在线观看 | 国产不卡免费视频 | 天天天插| 久99视频| 天天射天天干天天插 | 色综合a| 亚洲最大av在线播放 | 国产色网站 | 白丝av免费观看 | 久草视频播放 | 国产精选在线观看 | 91av免费看| 精品国产伦一区二区三区观看说明 | 欧美日韩午夜在线 | 亚洲精选视频免费看 | 99视频精品在线 | 日韩视频免费观看高清完整版在线 | 欧美亚洲另类在线视频 | 久久视频 | 久久久久久久久久电影 | 国产精品高清在线观看 | 中文字幕丝袜 | 国产黄在线| 黄网站app在线观看免费视频 | 国产麻豆视频免费观看 | 五月天丁香亚洲 | 毛片网站在线看 | 91成年人在线观看 | 天天干天天搞天天射 | 九九热在线精品 | 成人亚洲精品国产www | 国产一二区在线观看 | 精品久久久久久久久久久久久 | 国产精品永久久久久久久www | 久久久久久久久久网站 | 一级淫片在线观看 | 在线激情网 | 精品久久久久久久久久久院品网 | 国产亚洲精品女人久久久久久 | av丝袜美腿 | 91精品1区2区 | 91精品久久久久久 | 二区精品视频 | 超碰人人国产 | 一区在线观看视频 | 日韩激情第一页 | 中文字幕在线影院 | 最新国产精品久久精品 | 色综合五月天 | 久久激情影院 | 人人搞人人干 | 欧美日性视频 | 久久综合久久88 | 黄色a三级 | 五月天综合色激情 | 五月婷婷另类国产 | 日韩国产精品一区 | 亚洲成av人片在线观看www | 一本一本久久a久久 | 久久久久中文字幕 | 欧美片网站yy | 成人在线一区二区 | 91网页版免费观看 | 在线成人一区 | 日本久久91 | 在线观看中文字幕一区二区 | 欧美成人tv| 成人av在线亚洲 | 日韩在线视频网站 | 在线色亚洲 | 激情欧美xxxx | 久久亚洲电影 | 精品国产中文字幕 | 午夜电影一区 | 激情av资源网 | 波多野结衣一区二区 | 亚洲国产一区二区精品专区 | 成人免费视频免费观看 | 在线观看91视频 | 日本久久中文 | 天天射网| 日韩性片| 五月婷婷六月丁香 | 欧美大片在线观看一区 | 亚洲国产精品va在线看黑人 | 免费高清无人区完整版 | 国产一区二区综合 | 国产一区精品在线 | 亚洲精欧美一区二区精品 | 日韩美精品视频 | 一级黄色大片在线观看 | 久久综合之合合综合久久 | 国产精品久久久久婷婷二区次 | 黄色一集片 | 国产又粗又猛又黄又爽视频 | 久久久男人的天堂 | 精品国产免费久久 | 国产成人91 | 国产美女精品视频 | 在线精品亚洲一区二区 | 伊人首页 | 成人毛片一区二区三区 | 国产在线观 | 国产一区在线免费 | 免费碰碰 | 久久免费视频在线观看30 | 日日干综合| 久久96 | 2018亚洲男人天堂 | 一区二区三区四区五区六区 | 黄色小说视频网站 | 福利电影一区二区 | 日韩区欧美久久久无人区 | 麻豆视频一区二区 | 久久精品国产一区二区三区 | 奇米影视777影音先锋 | 亚洲第一成网站 | 免费激情在线电影 | 亚洲精品五月天 | 国产偷国产偷亚洲清高 | 久久久久久久久久久影视 | 亚洲成人资源在线观看 | 色五月成人| 国产流白浆高潮在线观看 | 又紧又大又爽精品一区二区 | 99久久国产免费,99久久国产免费大片 | 九九热精品视频在线播放 | 久爱精品在线 | 欧洲激情综合 | 成年人免费在线播放 | 欧美小视频在线观看 | 国产成人亚洲在线电影 | 国产黄色片免费在线观看 | 色噜噜在线观看视频 | 日韩免费在线视频观看 | 久久久高清一区二区三区 | 99久久精品国产欧美主题曲 | 久草在线综合网 | 国产成人久久av977小说 | 欧美成人在线免费观看 | 国产欧美综合视频 | 在线观看中文字幕第一页 | 日韩黄色一级电影 | 精品国产一区二区三区久久久久久 | 久久久久久久久黄色 | 欧美日韩另类在线 | 亚洲天堂网站视频 | 91视频高清 | 91九色免费视频 | 久久精品一区二区三区四区 | 国产精品久久久久久久久毛片 | 99精品视频在线观看免费 | 中文字幕精品一区久久久久 | 一区二区三区不卡在线 | 国产精品日韩欧美一区二区 | 99视频免费在线观看 | 最近中文字幕久久 | av成人在线电影 | 小草av在线播放 | 久久久精品国产一区二区电影四季 | 天天干天天操av | 久草com| www免费 | 在线激情av电影 | 中文字幕亚洲精品在线观看 | 久久久999| 欧美精品三级在线观看 | 91精品久久久久久综合五月天 | 成人av免费在线观看 | 狠狠躁18三区二区一区ai明星 | 国产午夜一区二区 | 国产视频不卡一区 | 国产在线观看午夜 | 91最新地址永久入口 | 五月婷婷开心 | 国内精品免费久久影院 | 亚洲一区免费在线 | 久久不卡国产精品一区二区 | 日韩欧美一区二区在线观看 | 国产黄色片久久久 | 日韩在线观看a | 97视频网站| 久久国产香蕉视频 | 亚洲人xxx | 日韩精品免费一区二区 | av福利在线看 | 日韩伦理片一区二区三区 | 亚洲精品视频免费在线 | 九九久久电影 | 欧美日韩精品在线播放 | 日韩视频三区 | 国产精品99蜜臀久久不卡二区 | 日韩在线视频一区二区三区 | 久久免费福利视频 | 婷婷色婷婷 | 日韩三级在线观看 | 五月婷婷激情六月 | 超碰公开在线 | 91久久偷偷做嫩草影院 | 亚洲综合视频网 | 97精品久久人人爽人人爽 | 伊人天堂av | 久久久久日本精品一区二区三区 | 久久艹人人 | 免费看的毛片 | 欧美成人精品欧美一级乱黄 | 国产又粗又硬又长又爽的视频 | 国产精品人人做人人爽人人添 | 99国产精品 | 久久综合毛片 | 91黄色免费网站 | 久久99精品久久久久久秒播蜜臀 | 天天操天天怕 | 日韩高清精品免费观看 | 一区二区三区在线免费观看视频 | 日韩在线电影一区 | 婷婷九月丁香 | 99自拍视频在线观看 | 免费在线观看国产黄 | 色欧美成人精品a∨在线观看 | 欧美淫aaa免费观看 日韩激情免费视频 | 免费看片网址 | 在线观看成人 | 免费在线色视频 | 超碰日韩在线 | 黄色免费网站 | 91在线免费看片 | 中文字幕在线有码 | 97色se| 欧美日韩久久不卡 | 蜜臀av性久久久久蜜臀aⅴ流畅 | 日韩中文字幕视频在线 | www日韩视频 | 免费在线电影网址大全 | 五月婷婷网站 | 中文字幕在线第一页 | 国产免费久久av | 日韩美视频 | 久久99热久久99精品 | 精品久久久久久久久中文字幕 | 久久国产影视 | 综合色伊人 | 精品国产精品久久一区免费式 | 在线免费观看黄色 | 亚洲h在线播放在线观看h | 在线观看日韩精品视频 | 91成人免费电影 | 精品中文字幕视频 | 超碰在线观看av.com | 日本久久免费视频 | 国产一级在线免费观看 | 成人av免费看 | 亚洲 欧美 国产 va在线影院 | 六月丁香婷 | 成人av av在线 | 久久久久久久久久久福利 | av福利在线看 | 久久无码av一区二区三区电影网 | 国产亚洲人成网站在线观看 | 99综合电影在线视频 | 久久久久欧美精品999 | 免费av片在线 | 日韩av图片 | 成年人黄色在线观看 | 亚洲网久久 | 久草免费新视频 | adn—256中文在线观看 | av手机版| 九九九热精品免费视频观看 | 91精品秘密在线观看 | 97在线看| 伊人www22综合色 | 在线97 | 亚洲精品视频一二三 | 中文字幕在线观看av | 91成人在线视频 | 在线观看岛国av | 国产男男gay做爰 | 国产热re99久久6国产精品 | 91九色精品女同系列 | 国产破处精品 | 色网站视频 | 最近中文字幕国语免费av | 国产在线国偷精品产拍 | 美女黄频视频大全 | 91亚洲欧美 | 久久精品一区二区三 | 伊人中文字幕在线 | 免费在线黄色av | 午夜精品久久久久久久久久 | 色夜视频 | 欧美一区日韩一区 | 综合激情网... | 中文字幕亚洲在线观看 | 91大神精品视频在线观看 | 欧美资源 | 免费网站黄色 | 国产成人av在线影院 | 午夜在线看| 99视频这里有精品 | 欧美性粗大hdvideo | 婷婷五月在线视频 | а天堂中文最新一区二区三区 | 丁香婷婷在线 | 日韩在线视频网站 | 久草 | 久久久www| 日韩欧美久久 | 欧美怡红院 | 狠狠色噜噜狠狠狠狠2021天天 | 999在线视频 | 欧美久久久久久久久久久久 | 成人一区在线观看 | 婷婷色九月 | 久久伊人精品天天 | 国产91电影在线观看 | 婷婷丁香视频 | 99在线精品免费视频九九视 | www视频在线免费观看 | av中文字幕第一页 | 亚洲午夜av电影 | 久久国产露脸精品国产 | 大胆欧美gogo免费视频一二区 | 久久免费精品一区二区三区 | 日韩在线观看 | 国产午夜精品一区二区三区嫩草 | 国产在线不卡精品 | 99综合影院在线 | 色姑娘综合天天 | 三级黄色理论片 | 在线观看岛国 | 色婷婷视频在线 | 久草视频99 | 在线免费91 | 国产精品美女毛片真酒店 | 久久精品欧美 | av在线播放不卡 | 欧美国产精品久久久久久免费 | 久久精品99久久久久久 | 激情综合啪啪 | 久久久久久久久精 | 成人国产精品久久久久久亚洲 | 久久久久久久久久网 | 高清日韩一区二区 | 中文在线字幕免费观 | 综合网五月天 | 久久精品中文视频 | 天天射天天操天天色 | 天天天天天天干 | 808电影免费观看三年 | 天天色棕合合合合合合 | 偷拍视频一区 | 国产原创中文在线 | 欧美一二三四在线 | 精品亚洲va在线va天堂资源站 | 在线观看理论 | 九色91在线 | 日韩国产精品久久久久久亚洲 | 日韩欧美精品一区 | 亚洲色图美腿丝袜 | av一本久道久久波多野结衣 | 日日夜夜精品免费视频 | 国产色在线观看 | 国产精品 亚洲精品 | 亚洲一级影院 | 中文字幕精品一区二区三区电影 | 欧美成人影音 | 欧美伦理一区二区 | 麻豆一精品传二传媒短视频 | 日本3级在线观看 | 久热电影 | 亚洲精品动漫成人3d无尽在线 | 91夫妻自拍 | 国产精品自产拍在线观看中文 | 欧美一级看片 | 亚洲激情在线播放 | 亚洲国产av精品毛片鲁大师 | 久99精品| 伊人中文字幕在线 | 成人精品久久久 | www.天天干.com | 国产精品精品国产色婷婷 | av中文电影 | 亚洲电影在线看 | 91久久精品一区二区二区 | 99久久精品无免国产免费 | 日韩久久精品 | 91亚·色| 日日操夜| av电影在线免费观看 | 欧美一级在线观看视频 | 日产乱码一二三区别在线 | www色av| 国内小视频 | 日韩小视频网站 | 亚洲精品视频一 | 免费看三级 | 国产乱对白刺激视频在线观看女王 | 国产精品一区二区免费视频 | 亚洲精品在线看 | 三级av在线免费观看 | 国产精品久久9 | 色七七亚洲影院 | 在线黄色免费 | 91精品办公室少妇高潮对白 | 在线观看日本高清mv视频 | 久久精品www人人爽人人 | 探花视频在线观看+在线播放 | 探花视频免费在线观看 | 国产不卡一区二区视频 | 97色婷婷 | 99色精品视频 | 福利网址在线观看 | 亚洲a成人v| 欧美日韩另类在线 | 久久成人人人人精品欧 | 一级黄色免费网站 | 国产高清在线免费 | 欧美一级视频一区 | 国产美女视频 | 亚洲免费av在线播放 | 丁香婷婷综合激情五月色 | 91av视频网站 | 日韩爱爱片 | 久草在线网址 | 国产精品成人a免费观看 | 日本字幕网 | 国产99久久| 免费69视频 | 福利视频一二区 | 亚洲国产美女精品久久久久∴ | 天天操天天摸天天射 | 在线免费观看麻豆视频 | 国产精品久久免费看 | 青草草在线视频 | 99精品国产福利在线观看免费 | 国产在线视频一区二区三区 | 国产在线999 | 久久精品电影 | 日本成址在线观看 | 九九精品视频在线 | 91麻豆国产 | 中文字幕中文字幕 | 激情五月色播五月 | 天天在线免费视频 | 免费观看十分钟 | 欧美精品亚州精品 | 成人欧美一区二区三区在线观看 | 91丨九色丨高潮 | 91爱看片 | 国产午夜三级一区二区三桃花影视 | 久久伊人八月婷婷综合激情 | 久久老司机精品视频 | 亚洲精品黄色在线观看 | 欧美日韩国语 | 欧美精品在线观看免费 | 国产精品久久久久久久久久 | 一区二区三区韩国免费中文网站 | 国产精品久久久久影院日本 | 少妇bbw撒尿| 2019天天干天天色 | 欧美天堂视频在线 | 色激情在线 | 中文字幕乱码电影 | 国产精品免费久久久久影院仙踪林 | 美女网站视频久久 | 天堂av网在线| 久久国产精品视频免费看 | 久艹视频在线免费观看 | 国产高清 不卡 | 国产一级免费在线 | 久草免费在线视频 | 国产一区在线视频播放 | 久久伦理网 | 手机色站 | 国产精品一区二区久久精品爱微奶 | 欧美成人性战久久 | www.五月激情.com | 成人h动漫在线看 | 国产一区免费 | 日韩在线欧美在线 | 五月综合网 | 久久99国产精品久久 | 顶级欧美色妇4khd | 国产精品密入口果冻 | 国产免费观看久久 | 久久一精品 | 日日爽天天 | 成人av播放 | 久草线| 国产一级片一区二区三区 | 久久不射网站 | 天天射天天干 | 福利视频一区二区 | 五月天国产精品 | 日韩午夜大片 | 欧美吞精 | 国产成人免费在线 | 国产精品伦一区二区三区视频 | 精品久久久久久久久久久院品网 | 国产在线中文 | 欧美色婷婷 | 久久综合色天天久久综合图片 | 日韩中文字幕在线看 | 国产精品久久久久久电影 | 国产精品福利午夜在线观看 | 久草视频免费在线播放 | 国产一级精品视频 | 91漂亮少妇露脸在线播放 | 久久久综合色 | 激情婷婷亚洲 | 最近中文字幕在线中文高清版 | 国产五月 | 成人免费看黄 | 亚洲码国产日韩欧美高潮在线播放 | 免费福利小视频 | 在线观看国产亚洲 | 99久久久国产免费 | 97在线视 | 一区二区精品视频 | 在线观看国产区 | 黄色三级视频片 | 99久久综合狠狠综合久久 | 丁香婷婷色月天 | 91女人18片女毛片60分钟 | 国产91探花 | 日韩一级片观看 | 久久久久久久久久免费 | 97精产国品一二三产区在线 | 在线视频日韩欧美 | 五月婷婷播播 | 免费福利视频网站 | 欧美精品一区二区免费 | 亚洲码国产日韩欧美高潮在线播放 | 在线观看91久久久久久 | 在线国产一区 | 国产一级一片免费播放放a 一区二区三区国产欧美 | 日韩激情av在线 | 成年人免费在线观看 | 国产福利在线免费观看 | 69精品人人人人 | 欧美福利视频一区 | 97电影院网 | 国产成人精品久久亚洲高清不卡 | 91桃色在线观看视频 | 国产精品av久久久久久无 | 日本久久久精品视频 | 日韩色视频在线观看 | 夜色成人网| av女优中文字幕在线观看 | 欧美一区视频 | 亚洲国产剧情 | 亚洲欧美视频在线观看 | 在线观看中文字幕av | 一区二区三区四区不卡 | 丁香婷婷综合五月 | 九九久久久久久久久激情 | 人人爱人人射 | 国产精品久久久av久久久 | 久久黄色小说 | 久久久视频在线 | 91av视频导航| 国产粉嫩在线观看 | 超碰公开在线观看 | 精品一区 在线 | 成人污视频在线观看 | 国产三级香港三韩国三级 | 亚洲爽爽网 | 久久久久女人精品毛片九一 | 综合久久精品 | 亚洲激精日韩激精欧美精品 | 精品自拍av | 一级α片免费看 | 九九精品久久久 | 成人a毛片 | 国产成人99av超碰超爽 | 美女免费视频一区 | 亚洲精品中文字幕视频 | 亚洲欧美综合 | 亚洲欧美视屏 | 亚洲成人一二三 | 一级a性色生活片久久毛片波多野 | 手机版av在线 | 蜜臀av麻豆| 日日干日日| 97夜夜澡人人爽人人免费 | 欧美日韩观看 | 国产精品久久久久9999 | 欧美在线观看视频免费 | 免费不卡中文字幕视频 | 日韩av免费观看网站 | 日韩电影在线一区 | a一片一级 | 久久艹精品 | 国产91免费看 | 成年人在线观看免费视频 | av不卡中文字幕 | 国产精品国内免费一区二区三区 | 99久久国产免费,99久久国产免费大片 | 成人蜜桃视频 | 草久久精品 | 免费在线观看av网址 | 97成人资源 | 亚洲人在线 | 国产在线精品播放 | 97人人模人人爽人人喊中文字 | 天天综合网天天综合色 | 日韩成人在线免费观看 | 成人av网站在线播放 | 欧美婷婷色| 国产电影一区二区三区四区 | 不卡精品视频 | 美女网站黄免费 | 亚洲综合欧美精品电影 | 日韩在线观看视频网站 | 免费国产在线精品 | 亚洲免费色 | 欧美激情精品久久久 | 日韩一区正在播放 | 国产视 | 综合色中色 | 久久都是精品 | 黄色特级毛片 | 亚洲免费高清视频 | 欧美成人h版电影 | 在线观看亚洲免费视频 | 91av视频| 久久高清国产视频 | 成人久久18免费网站 | 丁香网五月天 | av大全在线观看 | 免费污片 | 超碰97中文 | 国产精品毛片久久久久久久久久99999999 | 男女拍拍免费视频 | 在线韩国电影免费观影完整版 | 久久久久激情视频 | 久草精品在线 | 久久爽久久爽久久av东京爽 | 国产美女精品久久久 | 日韩理论片在线观看 | 久热电影 | 91亚洲精品久久久中文字幕 | 人人看看人人 | 国产在线永久 | 日韩高清免费观看 | 亚洲2019精品 | 精品免费观看 | 久久久久久久久久久电影 | 国产高清网站 | 人人爽网站 | 久久精品99国产国产 | 日韩久久久久久 | 中文字幕在线免费看线人 | 九九视频一区 | 久99久精品| 免费日韩av电影 | 久久激情视频 久久 | 日本高清中文字幕有码在线 | 国产精品福利久久久 | 国产一级二级视频 | 狠狠狠的干 | 国产激情久久久 | 超碰在线人人艹 | 91热这里只有精品 | 黄色一级大片在线免费看国产一 | 国产色视频网站2 | 69av视频在线观看 | 欧美日韩国产精品一区二区亚洲 | 少妇按摩av | 成人在线视频免费看 | 亚洲综合成人在线 | 人人艹人人 | 免费视频你懂的 | 国产成人一区二区啪在线观看 | 国产一区二区三区高清播放 | 99自拍视频在线观看 | 在线一二三四区 | 能在线观看的日韩av | 丁香在线观看完整电影视频 | 亚洲精品婷婷 | 91大片成人网 | 国产黄色成人 | 日韩黄色免费在线观看 | 天天草天天色 | 狠狠干网站 | 蜜臀av性久久久久av蜜臀三区 | 亚洲婷婷综合色高清在线 | 视频成人永久免费视频 | 天天干天天操天天干 | 最新av网址大全 | 91九色蝌蚪视频在线 | 欧美视频国产视频 | 久久电影中文字幕视频 | 欧美激情视频久久 | 九九热精品视频在线播放 | 国产精品成人aaaaa网站 | 9797在线看片亚洲精品 | 欧美日韩xxx | 人人射人人射 | 亚洲黄色一级大片 | 一级淫片a | 97超碰人人模人人人爽人人爱 | 成年人视频免费在线 | 四虎成人在线 | 波多野结衣日韩 | 精品视频专区 | 91麻豆精品国产91 | 国产系列在线观看 | 国产在线精品国自产拍影院 | 中文字幕一区二区三区乱码不卡 | 91成人国产| 狠狠狠色丁香婷婷综合激情 | av最新资源 | 美女免费视频观看网站 | 国产99久久久精品 | 色在线亚洲 | 在线看毛片网站 | 91在线播放视频 | 91探花视频| 色综合网| 在线观看免费福利 | 国产在线观看不卡 | 人人插人人 | 日韩成人精品一区二区三区 | 在线观看一区视频 | 免费亚洲精品视频 | 在线观看av黄色 | 国产小视频在线播放 | 国产精品青草综合久久久久99 | 国产精品视频地址 | 久久久久国产精品一区二区 | 国产永久免费观看 | 92国产精品久久久久首页 | 一区二区三区福利 | 国产精品自产拍在线观看网站 | 久色小说 | 色综合天天视频在线观看 | av中文在线 | 91香蕉嫩草 | 久久久久久久国产精品视频 | 欧美精品久久久久久久亚洲调教 | 天天操天天干天天综合网 | 4438全国亚洲精品在线观看视频 | 免费人人干 | 国产精成人品免费观看 | 国产成人一区二区三区在线观看 | 欧美精品久久久久久久久久白贞 | 久久午夜视频 | 久久夜色精品国产亚洲aⅴ 91chinesexxx | 婷婷综合亚洲 | 国产一区二区视频在线播放 | 91成人免费 | 不卡av电影在线观看 | 在线视频 91 | 色综合中文字幕 | 久久国产99| 蜜桃av综合网 | 国产精品av久久久久久无 | 午夜精品电影 | 国产精品久久久久永久免费 | 狠狠狠综合| 国产精品久久久久久麻豆一区 | 午夜视频久久久 | 国产精品成人自拍 | av成人免费网站 | 久久成视频 | 国产精品久久久久久久久久新婚 | 国产精品视频大全 | 在线观看视频免费大全 | 久久免费精彩视频 | 亚洲精品国偷拍自产在线观看蜜桃 | 欧美色一色 | 精品久久一区二区三区 | 免费在线观看国产精品 | 97视频在线观看网址 | 精品国产自 | 午夜av免费观看 | 国产不卡精品视频 | 日韩精品免费一区二区在线观看 | 日韩精品一区二区三区免费视频观看 | 亚洲高清视频在线观看 | 天天天在线综合网 | 午夜精品久久久久久久99 | 香蕉97视频观看在线观看 | 日韩在线精品一区 | 日本少妇视频 | 午夜视频在线观看一区 | 国产成人一区二区三区 | 黄色一级在线免费观看 | 国产一区二区不卡视频 | 欧美日韩免费一区二区 | 天天操夜夜摸 | 国产精品9999久久久久仙踪林 | 国产视频亚洲视频 | 日韩免费一级a毛片在线播放一级 | 91麻豆精品国产91久久久久 | 天天干 天天摸 天天操 | 久久精品国产精品亚洲精品 | 国产精品一区二区美女视频免费看 | 色婷婷 亚洲 | 国产精品久久久久久久久婷婷 | 久久亚洲综合国产精品99麻豆的功能介绍 | 久久久国产精华液 | 天天操夜夜操国产精品 | 91久久久久久国产精品 | 久久久国产精品一区二区三区 | 久久不卡日韩美女 | 天天看天天干 | 成人9ⅰ免费影视网站 | 91av视频| 激情动态 | 欧美日韩中文在线 | 91精品国产91久久久久 |