* RFC: Undocumented Recipe Variables Script
@ 2010-12-07 22:12 Darren Hart
2010-12-07 22:38 ` Richard Purdie
0 siblings, 1 reply; 6+ messages in thread
From: Darren Hart @ 2010-12-07 22:12 UTC (permalink / raw)
To: poky@yoctoproject.org; +Cc: Purdie, Richard
[-- Attachment #1: Type: text/plain, Size: 18138 bytes --]
Per Alex's suggestion, I whipped up a script to find variables in recipes
and determine if they have been documented. The script is attached and
feedback is welcome.
It searches for [A-Z_]+ sequences, building a unique set, and then
searches the documentation for those variable names.
It allows you to specify any number of meta directories and any number
of documentation files.
Its weakness is, obviously, that it is unable to determine which
variables are relevant only in a given recipe. Although, I guess that is
fair, as new developers may suffer from the same lack of context.
Given the high false-positive rate, perhaps the best use of this script
would be to have someone intimately familiar with the guts of bitbake to
scan the list of undocumented variables and indicate which of those
should indeed be documented.
Scott, are there additional documentation files I should include to be
searched for documentation of the harvested variables?
Consider the following:
$ ./bbvars.py -m ~/source/poky.git/meta -d ~/source/poky.git/documentation/poky-ref-manual/ref-variables.xml
Found 1445 undocumented bb variables (out of 1552):
ABI
AC
ACCESS
ACLOCAL_CWFLAGS
ACPI
ACX
AC_REQUIRE
ADD_BT
ADD_WIFI
AFTER
AI
AKM
ALLOWOPTIONS
ALLOW_EMPTY
ALLOW_EMPTY_
ALSA
ALTERNATIVE_LINK
ALTERNATIVE_LINKS
ALTERNATIVE_NAME
ALTERNATIVE_PATH
ALTERNATIVE_PRIORITY
ALTNAME
AM_GLIB_GNU_GETTEXT
AM_GNU_GETTEXT
APACHE_MIRROR
API
APM
APPDESKTOP
APPEND
APPIMAGE
APPNAME
APR
APT_CONFIG
AR
ARCH
ARCH_FLAGS_FOR_TARGET
ARFLAGS
ARM_INSTRUCTION_SET
ARM_MUTEX
ART_CONFIG
AS
ASN
ASNEEDED
ASSUME_PROVIDED
ASSUME_SHLIBS
ATA
ATM
AUTHORS
AUTOLOGIN
AUTOTOOLS_STAGE_PKGCONFIG
AUTOV
AUTO_LIBNAME_PKGS
AUTO_SYSLINUXCFG
AUTO_SYSLINUXMENU
AUX_OBJ
AV
AWKPOSTINSTSCRIPT
BASEDIR
BASEFILESISSUEINSTALL
BASEPKG_HOST_SYS
BASEPKG_TARGET_SYS
BASEPN
BASE_CONF
BASE_PACKAGE_ARCH
BASE_SRC_URI
BBCLASSEXTEND
BB_CURRENTTASK
BB_DEFAULT_TASK
BB_HASHCHECK_FUNCTION
BB_HASHFILENAME
BB_MIN_VERSION
BB_RUNTASK
BB_SCHEDULER
BB_TASKHASH
BB_VERSION
BB_WORKERCONTEXT
BE
BINARY_LOCALE_ARCHES
BINCONFIG_GLOB
BINDIR
BINS
BINV
BJAM_EXTRA
BJAM_OPTS
BJAM_TOOLS
BLOCKS
BOOST_LIBS
BOOST_P
BOOTDD_EXTRA_SPACE
BOOTDD_VOLUME_ID
BOOTIMG_EXTRA_SPACE
BOOTIMG_VOLUME_ID
BOOTSTRAP
BP
BROKEN
BSD
BSP
BUGS
BUGTRACKER
BUG_ON
BUILD
BUILDCC
BUILDCFLAGS
BUILDDIR
BUILDING
BUILDNAME
BUILDSDK_CFLAGS
BUILDSDK_CPPFLAGS
BUILDSDK_LDFLAGS
BUILDSPEC
BUILD_AR
BUILD_ARCH
BUILD_CC
BUILD_CCLD
BUILD_CC_ARCH
BUILD_CFLAGS
BUILD_CPPFLAGS
BUILD_CXX
BUILD_CXXFLAGS
BUILD_IMAGES_FROM_FEEDS
BUILD_LD
BUILD_LDFLAGS
BUILD_OPT
BUILD_OS
BUILD_PREFIX
BUILD_RANLIB
BUILD_SHARED
BUILD_SYS
BUILD_VENDOR
CACHE
CC
CCACHE
CCDC
CCDV
CCFLAGS
CCLD
CC_FOR_BUILD
CD
CDT
CET
CFGL
CFLAGS_
CFLAGS_FOR_BUILD
CGI
CHAT
CHECKCOMMAND_
CHRPATH_BIN
CHRPATH_BIN_
CHSRC
CLEANFILES
CLEANFUNCS
CMAKE_CXX_COMPILER
CMAKE_CXX_FLAGS
CMAKE_CXX_FLAGS_RELEASE
CMAKE_C_COMPILER
CMAKE_C_FLAGS
CMAKE_C_FLAGS_RELEASE
CMAKE_FIND_ROOT_PATH
CMAKE_FIND_ROOT_PATH_MODE_INCLUDE
CMAKE_FIND_ROOT_PATH_MODE_LIBRARY
CMAKE_FIND_ROOT_PATH_MODE_PROGRAM
CMAKE_MAJOR_VERSION
CMAKE_MODULE_PATH
CMAKE_SYSTEM_NAME
CMDLINE_
CMDLINE_CONSOLE
CMX
COLORFX
COMBINED_FEATURES
COMMASPACE
COMMERCIAL_AUDIO_PLUGINS
COMMERCIAL_LICENSE
COMMERCIAL_QT
COMMERCIAL_VIDEO_PLUGINS
COMPATIBLE_HOST
COMPILE
CONFFILES
CONFFILES_
CONFIG
CONFIGURATION
CONFIGUREOPTS
CONFIGURE_AC
CONFIGURE_ARGS
CONFIGURE_FLAGS
CONFIG_LOCALVERSION
CONFIG_MMC_BLOCK
CONFIG_MMC_OMAP_HS
CONFIG_MODULES
CONFIG_OMAP_LL_DEBUG_UART
CONFIG_OMAP_LL_DEBUG_UART_EXT
CONFIG_OUT
CONFLICTNAME
CONFLICTS
CONFLICTS_
CONF_VERSION
CONTENT
CONTROL
COPTS
COPYING
COPYRIGHT
CORE
CORYING
CPAN
CPAN_BUILD_DEPS
CPP
CPPFLAGS
CPPI
CR
CROSS
CROSS_COMPILE
CROSS_DIR
CSI
CSPI
CSS
CST
CT
CTAN
CURLGNUTLS
CURLGNUTLS_
CURSES
CVE
CWAUTOMACROSPREFIX
CXX
CXXFLAGS
CXXFLAGS_
DA
DATADIR
DATE
DATETIME
DAV
DB
DBUS
DBUS_SESSION_BUS_ADDRESS
DCMAKE_INSTALL_PREFIX
DCMAKE_INSTALL_SO_NO_EXE
DCMAKE_TOOLCHAIN_FILE
DCMAKE_VERBOSE_MAKEFILE
DDAEMON_UMASK
DEBIAN
DEBIANNAME_
DEBIAN_MIRROR
DEBIAN_NAMES
DEBIAN_NOAUTONAME_
DEBUG
DEBUG_LL
DEB_PACKAGE_INDEX_CLEAN
DEFAULT
DEFAULT_PREFERENCE_
DENABLE_DNS
DEPCHAIN_POST
DEPCHAIN_PRE
DEPENDENCY_CHECK
DEPENDPATH
DEPENDS_
DEPENDS_GETTEXT
DEPLOYDIR
DEPLOY_DIR
DEPLOY_DIR_DEB
DEPLOY_DIR_IMAGE
DEPLOY_DIR_IPK
DEPLOY_DIR_RPM
DEPLOY_DIR_SRC
DEPLOY_DIR_TAR
DEPLOY_KEEP_PACKAGES
DEPMOD
DER
DESCRIPTION_
DESCRIPTON
DEVEL_PREFIX
DFACILITY
DHAVE_ANIMATION
DHAVE_STRERROR
DHAVE_WEAKSYMS
DHCP
DHOSTS_ACCESS
DHOSTS_ALLOW
DHOSTS_DENY
DIGIT
DINET
DISCLAIMER
DISPC_VID_FIR
DISPLAY
DISTRO_EXTRA_DEPENDS
DISTRO_SSH_DAEMON
DISTUTILS_BUILD_ARGS
DISTUTILS_INSTALL_ARGS
DISTUTILS_STAGE_ALL_ARGS
DISTUTILS_STAGE_HEADERS_ARGS
DKILL_IP_OPTIONS
DLIB
DLINK_SIZE
DM
DMA
DNDEBUG
DNETGROUP
DNS
DO
DOCS
DOLT
DONE
DOS
DOSRC
DPI
DPKG_ARCH
DPKG_ARCH_
DPM
DPROCESS_OPTIONS
DPTC
DRI
DRPM_VENDOR_WINDRIVER
DSI
DSO
DSP
DSS
DSYS_ERRLIST_DEFINED
DUSE_GETDOMAIN
DVF
DVFS
DWITHOUT_XATTR
DWITH_GNOME
DWITH_KDE
DWITH_MOZJS
DWITH_NM
DWITH_PERL
DWITH_PYTHON
DWITH_WEBKIT
D_FILE_OFFSET_BITS
D_GNU_SOURCE
D_REENTRANT
D__FILE_OFFSET_BITS
D__MIPSEB__
D__MIPSEL__
D__SOFTFP__
ED
EDID
EDL
EDS
EDT
EET
EGLIBC_BRANCH
ELF
ELFF
END
ENGR
ENHANCED_IMAGE_FEATURES
ENOENT
EOF
EPL
ERR
ERROR
ERROR_NAMES
EST
ETCDIR
EVENTLOG
EVIE
EVM
EXCEPTION
EXCLUDE_FROM
EXCLUDE_FROM_SHLIBS
EXCLUDE_FROM_WORLD
EXIF
EXPAT
EXPATINCPATH
EXPATLIBPATH
EXPORT_FUNCTIONS
EXTENDPV
EXTERN
EXTERNAL_TOOLCHAIN
EXTRAOPKGCONFIG
EXTRAS
EXTRA_AUTORECONF
EXTRA_CFLAGS
EXTRA_CPANFLAGS
EXTRA_DIST
EXTRA_IMAGEDEPENDS
EXTRA_NATIVE_PKGCONFIG_PATH
EXTRA_OECONF_
EXTRA_OEMAKE_
EXTRA_OEMAKE_NETGROUP
EXTRA_OEMAKE_NETGROUP_
EXTRA_QMAKEVARS_POST
EXTRA_QMAKEVARS_PRE
EXTRA_RDEPENDS
EXTRA_RDEPENDS_
EXTRA_SIPTAGS
FACILITY
FAIL
FAILURE
FAKEROOT
FAKEROOTENV
FAM
FAT
FATAL
FB
FC_GLYPHNAME
FC_LANG
FDL
FEAT
FEATURES
FEC
FEED_URIS
FF
FILE
FILEMANAGER
FILEMANAGER_
FILERDEPENDSFLIST
FILERDEPENDSFLIST_
FILERDEPENDS_
FILERPROVIDESFLIST
FILERPROVIDESFLIST_
FILERPROVIDES_
FILESDIR
FILESEXTRAPATHS
FILESPATH
FILESPATHBASE
FILESPATHPKG
FILES_
FILE_DIRNAME
FINISHED
FIR
FIXEDSRCDATE
FIXMESTAGINGDIR
FLAC
FLIST
FLIST_
FONTREV
FREEDESKTOP_CVS
FS
FSL
FTL
FULL_OPTIMIZATION_
F_OK
GB
GBARR
GC
GCONF_CONFIG_SOURCE
GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL
GCONV_PATH
GD
GDB
GDBPROPREFIX
GDK
GDK_PIXBUF_MODULEDIR
GFDL
GIT_CONFIG
GIT_CORE_CONFIG
GIT_PROXY_COMMAND
GIT_PROXY_IGNORE
GL
GLEW
GLIBC_ADDONS
GLIBC_BROKEN_LOCALES
GLIBC_DEPENDENCIES
GLIBC_EXTRA_OECONF
GLIBC_GENERATE_LOCALES
GLIBC_INTERNAL_USE_BINARY_LOCALE
GLSL_CL
GMAE
GMP
GMT
GNOME
GNOME_MIRROR
GNU_HASH
GNU_MIRROR
GO
GP
GPE_MIRROR
GPGME
GPIO
GPIO_POWERON
GPL
GPL_V
GPS
GR
GROFF_FONT_PATH
GROFF_TMAC_PATH
GRUB
GS
GSSDP
GTK
GTK_
GUP
HACK
HAL_INFO_
HANDHELDS_CVS
HASDOCBOOK
HCI
HDDDIR
HDDIMG
HEAD
HEADERS
HNP
HOME
HOST
HOSTPERL
HOSTPGEN
HOSTPYTHON
HOSTTOOLS_WHITELIST_
HOST_AR
HOST_ARCH
HOST_AR_KERNEL_ARCH
HOST_CC
HOST_CC_ARCH
HOST_CC_KERNEL_ARCH
HOST_CFLAGS
HOST_CXX
HOST_CXXFLAGS
HOST_DATA
HOST_LDFLAGS
HOST_LD_KERNEL_ARCH
HOST_LIBIDL_CFLAGS
HOST_LIBIDL_CONFIG
HOST_LIBIDL_LIBS
HOST_NONSYSV
HOST_OS
HOST_PREFIX
HOST_RANLIB
HOST_SYS
HOST_VENDOR
HOTPLUG
HST
HTML
HTTP
IAPI
IBM
ICE
ICECC_CC
ICECC_CXX
ICECC_ENV_EXEC
ICECC_PATH
ICECC_USER_CLASS_BL
ICECC_USER_PACKAGE_BL
ICECC_VERSION
ID
IDE
IDL
IDN
IDNA
IETF
IFS
IGEP
II
IMAGE
IMAGEROOTFS
IMAGETEST
IMAGE_BASENAME
IMAGE_CMD_
IMAGE_DEPENDS_
IMAGE_DEVICE_TABLE
IMAGE_DEVICE_TABLES
IMAGE_LINGUAS
IMAGE_LINK_NAME
IMAGE_LOCALES
IMAGE_NAME
IMAGE_OVERHEAD_FACTOR
IMAGE_PKGTYPE
IMAGE_POSTPROCESS_COMMAND
IMAGE_PREPROCESS_COMMAND
IMAGE_ROOTFS
IMAGE_ROOTFS_SIZE
IN
INCDIR
INCL
INCLUDEDIR
INCLUDEPATH
INCLUDES
INCOMPATIBLE_LICENSE
INC_PR
INFO
INHIBIT_AUTOTOOLS_DEPS
INHIBIT_AUTO_STAGE
INHIBIT_DEFAULT_DEPS
INIT
INITRD
INITSCRIPT_PARAMS_
INIT_D_DIR
INSANE_SKIP_
INSTALL
INSTALLED_PACKAGES
INSTALLROOT
INSTALL_DIR
INSTALL_HDR_PATH
INSTALL_INC
INSTALL_LIB
INSTALL_MAN
INSTALL_MOD_PATH
INSTALL_ROOT
INS_BASE
INTERFACES
INTERN
INVALID
IO
IOE
IOEINCDIR
IP
IPC
IPKGCONF_SDK
IPKGCONF_TARGET
IPKG_ARGS
IPKG_HOST
IPKG_OFFLINE_ROOT
IPKG_TARGET
IPK_FEED_URIS
IPK_PACKAGE_INDEX_CLEAN
IPU
IRC
IROOT
IRQ
ISC
ISO
ISODIR
ISP
JFIF
JL
JPEG
JS_EDITLINE
KBRANCH
KDIR
KERNEL
KERNELDIR
KERNELORG_MIRROR
KERNEL_ALT_IMAGETYPE
KERNEL_AR
KERNEL_ARSUFFIX
KERNEL_CC
KERNEL_CCSUFFIX
KERNEL_CONSOLE
KERNEL_FEATURES
KERNEL_IMAGEDEST
KERNEL_IMAGE_BASE_NAME
KERNEL_IMAGE_MAXSIZE
KERNEL_IMAGE_SYMLINK_NAME
KERNEL_LD
KERNEL_LDSUFFIX
KERNEL_LOCALVERSION
KERNEL_MAJOR_VERSION
KERNEL_OBJECT_SUFFIX
KERNEL_OUTPUT
KERNEL_PATH
KERNEL_PRIORITY
KERNEL_RELEASE
KERNEL_REVISION_CHECKING
KERNEL_SOURCE
KERNEL_SRC
KERNEL_VERSION
KEXECTOOLS
KEXECTOOLS_
KILL_OPT
KMACHINE
KMACHINE_
KV
LABEL
LABELS
LAME
LAN
LAYER_CONF_VERSION
LCD
LCONF_VERSION
LCRYPT
LC_ALL
LD
LDFLAGS
LDFLAGS_
LD_
LD_LIBRARY_PATH
LD_PRELOAD
LEAD_SONAME
LESSER
LGPL
LGPL_EXCEPTION
LGPV
LIB
LIBATA
LIBC
LIBC_DEPENDENCIES
LIBDIR
LIBNAMES
LIBRARY
LIBS
LIBTOOL
LIBV
LIB_DEPS
LIB_FILES_CHKSUM
LICENCE
LICENSE_
LICENSING
LIC_CHKSUM_FILES
LIC_FILE_CHKSUM
LINGUAS_INSTALL
LINKFILE
LINK_FOR_BUILD
LINUX_KERNEL_TYPE
LINUX_VERSION
LINUX_VERSION_EXTENSION
LOCAL
LOCALEDEF
LOCALE_GENERATION_WITH_CROSS
LOCALE_UTF
LOCALPATCH
LOCALSRC
LOELIBDIR
LOG_DAEMON
LOG_DIR
LOG_FILE
LOG_INFO
LOPTS
LR
LSB
LSB_VERSION
LSOF_INCLUDE
LSOF_OS
LSOF_OS_
LTT
LTTDATE
LVDS
LZMA
MAC
MACHINE_ARCH
MACHINE_ESSENTIAL_EXTRA_RDEPENDS
MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS
MACHINE_POSTPROCESS_COMMAND
MAINTAINERS
MAJOR_KERNEL_VERSION
MAJOR_VERSION
MAJ_VER
MAKE
MAKEFLAGS
MAKE_ARCH
MAKE_OS
MAKE_TARGETS
MANDIR
MANIFEST
MANS
MARK
MATCH
MAX
MB
MBO
MC
MCW
MD
MDT
MET
METADATA_BRANCH
METADATA_REVISION
MFD
MIDI
MIME
MIRRORS
MIRRORS_
MIT
MMC
MMU
MNCI
MNRT
MODULES
MOD_PV
MOZCONFIG
MOZ_OBJDIR
MP
MPC
MPEG
MPL
MS
MST
MULTIMACH_ARCH
MULTIMACH_HOST_SYS
MULTIMACH_TARGET_SYS
MUTEX
MUTEX_
MUX
MX
MXC
MXC_DMA_ZONE_SIZE
NAK
NAME
NAND
NAPI
NATIVE_INSTALL_WORKS
NCMS
NEEDED
NET
NETGROUP
NETWORK_MANAGER
NEW
NEWS
NFS
NMEA
NO
NOISO
NONE
NOOPR
NORESULT
NOSWABBERUPDATE
NOT
NOTE
NOTES
NOW
NPATH
NPL
NSS
NZ
OBJ
OBJCOPY
OBJDUMP
ODBM_F
OE
OECMAKE_BUILDPATH
OECMAKE_CXX_COMPILER
OECMAKE_CXX_FLAGS
OECMAKE_CXX_FLAGS_RELEASE
OECMAKE_C_COMPILER
OECMAKE_C_FLAGS
OECMAKE_C_FLAGS_RELEASE
OECMAKE_SITEFILE
OECMAKE_SOURCEPATH
OEDATADIR
OEDEBUG
OEEXECPREFIX
OEINCDIR
OELAYOUT_ABI
OELIBDIR
OEPREFIX
OEREV
OES_BITBAKE_CONF
OEV
OE_BINCONFIG_EXTRA_MANGLE
OE_QMAKE_AR
OE_QMAKE_CC
OE_QMAKE_CFLAGS
OE_QMAKE_CXX
OE_QMAKE_CXXFLAGS
OE_QMAKE_INCDIR_QT
OE_QMAKE_LDFLAGS
OE_QMAKE_LIBDIR_QT
OE_QMAKE_LIBS_QT
OE_QMAKE_LIBS_X
OE_QMAKE_LINK
OE_QMAKE_LRELEASE
OE_QMAKE_LUPDATE
OE_QMAKE_MOC
OE_QMAKE_PLATFORM
OE_QMAKE_QDBUSCPP
OE_QMAKE_QDBUSXML
OE_QMAKE_QMAKE
OE_QMAKE_RCC
OE_QMAKE_RPATH
OE_QMAKE_STRIP
OE_QMAKE_UIC
OE_REVISION
OFFLINE_ROOT
OFFSET
OHCI
OLD
OLDEST_KERNEL
OLD_BASE_PACKAGE_ARCH
OLD_MULTIMACH_ARCH
OLD_PACKAGE_ARCH
OM
OMAP
OMAPFB
OMAPZ
ONLY
OP
OPENMOKO_MIRROR
OPENMOKO_RELEASE
OPKG
OPKGBUILDCMD
OPKG_INIT_POSITION
OPKG_INIT_POSITION_
OPKG_OFFLINE_ROOT
OPKG_POSTPROCESS_COMMANDS
OPKG_PREPROCESS_COMMANDS
OPSYS
OPT
OPT_GNUTLS
ORIGIN
ORIG_DEPENDS
ORIG_RDEPENDS
OS
OSE
OSL
OTG
OTGSC_IE_
OUT
OUTSPECFILE
OV
OVERRIDES
OVERRIDES_
OWL_
PACKAGE
PACKAGEFUNCS
PACKAGELOCK
PACKAGES_
PACKAGES_DYNAMIC
PACKAGES_TO_INSTALL
PACKAGE_ARCHS
PACKAGE_ARCH_
PACKAGE_DEPENDS
PACKAGE_INSTALL
PACKAGE_INSTALL_ATTEMPTONLY
PACKAGE_NO_GCONV
PACKAGE_NO_LOCALE
PACKAGE_PREPROCESS_FUNCS
PAM
PARALELL_MAKE_
PARALLEL_MAKE_
PASS
PASTHRU_INC
PATA
PATA_FSL
PATCHCLEANCMD
PATCHCMD
PATCHDEPENDENCY
PATCHING
PATCHRESOLVE
PATCHTOOL
PATCH_DEPENDS
PATHFIXPATCH
PATHFIXPATCH_
PATH_
PAUSE
PC
PCI
PCI_CONF_FLAG
PCMCIA
PCMCIA_MANAGER
PCRE
PD
PDT
PERL
PERLCONFIGTARGET
PERLHOSTLIB
PERLLIBDIRS
PERL_ARCHLIB
PERL_INC
PERL_LIB
PF
PG
PIC
PID
PIE
PIPE
PKG
PKGD
PKGDATA_DIR
PKGDEST
PKGDESTWORK
PKGFN
PKGHIST_DIR
PKGWRITEDIRDEB
PKGWRITEDIRIPK
PKGWRITEDIRRPM
PKG_
PKG_CONFIG
PKG_CONFIG_DIR
PKG_CONFIG_PATH
PKG_CONFIG_SYSROOT_DIR
PKG_DISTRIBUTECOMMAND
PKG_DISTRIBUTEDIR
PKG_DIST_LOCAL
PL
PNG
POKY
POKYBASE
POKY_BASE_INSTALL
POKY_CONF_VERSION
POKY_DISTRO_VERSION
POKY_NATIVE_SYSROOT
POKY_TARGET_SYSROOT
POSIX
POST
POSTIN
POSTINPROG
POTFILES
PPP
PRC
PREBUILT_CPUCFG
PREFERRED_PROVIDER_
PREFIX
PREMIRRORS
PREMIRRORS_
PREPROCESS_RELOCATE_DIRS
PRINC
PRINT
PRINTING
PRIORITY
PRIVATE_LIBS
PROFILES
PROMPT
PROTO_DEPS
PROVIDES
PROVIDES_
PRV
PR_
PS
PSEUDO_RELOADED
PSF
PST
PSTAGING_ACTIVE
PSTAGING_DISABLED
PVM
PWD
PXA
PYTHONPATH
PYTHON_BASEVERSION
PYTHON_DIR
PYTHON_MAJMIN
QA
QA_LOGFILE
QEMU
QEMUARCH
QEMUIMAGETESTS
QEMUTARGET
QEMU_OPTIONS
QEMU_OPTIONS_
QMAKESPEC
QMAKE_MKSPEC_PATH
QMAKE_PROFILES
QMAKE_VARSUBST_POST
QMAKE_VARSUBST_PRE
QPL
QTDEMOS
QTDEMOS_
QT_CONFIG_FLAGS
QUILTRCFILE
QUILT_PATCHES
RADIUS
RAID
RANLIB
RCONFLICTS_
README
REAL_DAEMON_DIR
RECIPE_COMMENTS
RECIPE_INTEL_SECTION
RECIPE_LATEST_RELEASE_DATE
RECIPE_LATEST_VERSION
RECIPE_MAINTAINER
RECIPE_NO_UPDATE_REASON
RECIPE_STATUS
RECIPE_TIME_BETWEEN_LAST_TWO_RELEASES
RECOMMENDS
RELEASE
REPORTSTAMP
RFC
RMWORK_ORIG_TASK
ROC
ROK
ROM
ROOT
ROOTFS
ROOTFSBLOCKS
ROOTFS_PKGMANAGE
ROOTFS_PKGMANAGE_BOOTSTRAP
ROOTFS_POSTINSTALL_COMMAND
ROOTFS_POSTPROCESS_COMMAND
ROOTFS_SIZE
ROOT_
RPATH
RPC
RPM
RPMBUILD
RPMBUILDPATH
RPMDEPS
RPMOPTS
RPM_POSTPROCESS_COMMANDS
RPM_PREPROCESS_COMMANDS
RPROVIDES
RPROVIDES_
RPSRC
RRECOMMENDS_
RREPLACES_
RSUGGESTS
RSZ
RTC
RUNNING
RUNTIME
RUNTIME_
RUNTIME_PREFIX
RX
R_OK
SANITY_ABIFILE
SATA
SATO_IMAGE_FEATURES
SBINDIR
SCCS
SCENEFUNCS
SCHEMA
SCHEMA_FILES
SCHEMA_LOCATION
SCONF_VERSION
SCRIPT
SCSI
SD
SDC
SDI
SDIO
SDK
SDKMACHINE
SDKPATH
SDKPATHNATIVE
SDKTARGETSYSROOT
SDK_ARCH
SDK_CC_ARCH
SDK_DEPLOY
SDK_DIR
SDK_NAME
SDK_OS
SDK_OUTPUT
SDK_PREFIX
SDK_VENDOR
SDL
SDMA
SDP
SECTION_
SEL
SEVERITY
SGX
SH
SHA
SHARED
SHAREDIR
SHELL
SHLIBSDIR
SHLIBSWORKDIR
SIGNATURE
SIGPIPE
SIG_DFL
SIM
SIPTAGS
SIP_FEATURES
SIP_MODULES
SITE
SITECONFIG_SYSROOTCACHE
SITE_CONF_VERSION
SIZE
SKIP
SKIPPING
SM
SMTP
SOLIBS
SOLIBSDEV
SONAME
SOURCEFORGE_MIRROR
SOURCES
SOURCE_MIRROR_FETCH
SPECFILE
SPECS
SPI
SPLASH
SRC
SRCDATE_
SRCNAME
SRCPV
SRCREV_
SRCREV_FORMAT
SRC_DISTRIBUTECOMMAND
SRC_DISTRIBUTEDIR
SRC_DIST_LOCAL
SRC_URI_
SREC_CMD
SREC_SKIP
SREC_VMAADDR
SRPMFILE
SSDP
SSH
SSTATETASKS
SSTATE_BUILDDIR
SSTATE_DIR
SSTATE_INSTDIR
SSTATE_MANFILEBASE
SSTATE_MANFILEPREFIX
SSTATE_MANIFESTS
SSTATE_MIRRORS
SSTATE_PKG
SSTATE_PKGARCH
SSTATE_PKGNAME
SSTATE_SCAN_CMD
SSTATE_VERSION
STAGE_TEMP
STAGING_BINDIR
STAGING_BINDIR_CROSS
STAGING_BINDIR_NATIVE
STAGING_BINDIR_TOOLCHAIN
STAGING_DATADIR
STAGING_DATADIR_NATIVE
STAGING_DIR
STAGING_DIR_HOST
STAGING_DIR_NATIVE
STAGING_DIR_TARGET
STAGING_ETCDIR_NATIVE
STAGING_EXECPREFIXDIR
STAGING_INCDIR
STAGING_INCDIR_NATIVE
STAGING_LIBDIR
STAGING_LIBDIR_NATIVE
STAGING_SIPDIR
STAMP
STARTING
STOP
STRING
STRIP
STRIPPROG
STYLE
ST_MODE
SU
SUBDIR
SUBDIRS
SUCC
SUCCESS
SUPPORTED
SVG
SVGA
SVNREV
SWABBER_LOGS
SWABBER_REPORT
SWAB_ORIG_TASK
SWLINUX
SYSLINUXCFG
SYSLINUXMENU
SYSLINUX_OPTS
SYSLINUX_TIMEOUT
SYSROOT_DESTDIR
SYSROOT_LOCK
SYSROOT_PREPROCESS_FUNCS
SYSTEMHEADERS
SYSTEMLIBS
SYSV
SYSVINIT_ENABLED_GETTYS
SYS_INCLUDES
S_IEXEC
S_IREAD
S_IRWXU
S_ISDIR
S_ISLNK
S_ISREG
S_IWRITE
TABLES
TARGET
TARGETARCH
TARGETFPU
TARGETOS
TARGET_AR_KERNEL_ARCH
TARGET_CC_ARCH
TARGET_CC_ARCH_
TARGET_CC_KERNEL_ARCH
TARGET_CPPFLAGS
TARGET_LDFLAGS
TARGET_LD_KERNEL_ARCH
TARGET_OS_ORIG
TARGET_PREFIX
TARGET_SYS
TARGET_VENDOR
TCP
TEMPLATE
TERMWINDOWTITLE
TEST_DIR
TEST_LOG
TEST_RESULT
TEST_SCEN
TEST_TMP
THISDIR
TIFF
TIMEOUT
TINDERBOX
TINDER_AUTOBUILD
TINDER_BRANCH
TINDER_CLOBBER
TINDER_HOST
TINDER_LOG
TINDER_MACHINE
TINDER_REPORT
TINDER_TREE
TINDER_URL
TKSRC
TLI
TMAKEPATH
TMAKE_CONFIG
TMAKE_DEPENDPATH
TMAKE_DESTDIR
TMAKE_HEADERS
TMAKE_INCLUDEPATH
TMAKE_INTERFACES
TMAKE_LIBS
TMAKE_PROFILES
TMAKE_SOURCES
TMAKE_TARGET
TMAKE_TEMPLATE
TMIO
TMP
TMP_LOCALE
TO
TOBUILD
TODO
TOOLCHAIN_HOST_TASK
TOOLCHAIN_OPTIONS
TOOLCHAIN_OUTPUTNAME
TOOLCHAIN_TARGET_SDKTASK
TOOLCHAIN_TARGET_TASK
TOP
TOPDIR
TOTALSIZE
TRACE_LOGDIR
TRACE_LOGFILE
TTF
TWL
TX
TXCSR
TXDMA
TXT
TZ
TZONES
UBOOT_ARCH
UBOOT_ENTRYPOINT
UBOOT_LOADADDRESS
UBOOT_MACHINE_
UCLIBC_BASE
UCS
UCT
UDC
UDEV_EXTRAS
UE
UMASK
UNDEFINED
UNIX
UP
UPDATE
URB
URI
URL
US
USAGE
USB
USBCV
USBH
USERPTR
USE_DEVFS
USE_NLS
USE_NLS_
USE_VT
UST
UTC
UTF
VERSION
VFS
VIDIOC_QUERYMENU
VIRTUAL
VIRTUAL_NAME
VIRTUAL_NAME_
VM
VMW
VNC
VOLTAGE_
VPATH
VPU
VP_CLK_RATIO
VR
VRAM
VRFB
VSYSLOG
VUSB
WARNING
WEB
WEB_
WET
WHITELIST_
WITH_ENCA
WM
W_OK
XAUTHORITY
XC
XCB
XCFLAGS
XDG
XF
XFCE_VERSION
XI
XIG
XINC
XIP
XK
XKB
XLDFLAGS
XLIB
XLIBS_CVS
XORG_MIRROR
XORG_PN
XSERVER
XSETTINGS
XSLT
XSUB
XT
XT_CFLAGS
XV
X_OK
YES
YUV
ZAURUS_UPDATER_VERSION
ZIP
ZLIB
ZY
_A
_ARM
_BCM
_BD
_C
_CID_AUTO_WHITE_BALAN
_CONFIG
_CONSOLE_SERIAL_PORT
_CR
_DATA
_ER
_ET
_HEADERS
_IMAGE_FEATURES
_IN
_K
_L
_LIST
_LTLIBRARIES
_M
_MANS
_MN
_MTN
_O
_OLPC
_ONLY
_OPT
_P
_PROG_INTLTOOL
_SCRIPTS
_SENDMAIL
_T
_TEXINFOS
_TIMEOUT
_TIMER
_TO
_TR
_USE_SYSTEM_EXTENSIONS
_WAP_
_WHITELIST_
_WPASUPPLICANT
_Y
__
__RUNQUEUE_DO_NOT_USE_EXTERNALLY
--
Darren Hart
Yocto Linux Kernel
[-- Attachment #2: bbvars.py --]
[-- Type: text/x-python, Size: 4178 bytes --]
#!/usr/bin/env python
# This program 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 2 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, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#
# Copyright (C) Darren Hart <dvhart@linux.intel.com>, 2010
import sys
import getopt
import os
import os.path
import re
def usage():
print 'Usage: %s -d FILENAME [-d FILENAME]* -m METADIR [-m MATADIR]*' % os.path.basename(sys.argv[0])
print ' -d FILENAME documentation file to search'
print ' -h, --help display this help and exit'
print ' -m METADIR meta directory to search for recipes'
def recipe_bbvars(recipe):
''' Return a unique set of every bbvar encountered in the recipe '''
prog = re.compile("[A-Z_]+")
bbvars = set()
try:
r = open(recipe)
except IOError as (errno, strerror):
print 'WARNING: Failed to open recipe ', recipe
print strerror
for line in r:
# Strip any comments from the line
line = line.rsplit('#')[0]
bbvars = bbvars.union(set(prog.findall(line)))
r.close()
return bbvars
def collect_bbvars(metadir):
''' Walk the metadir and collect the bbvars from each recipe found '''
bbvars = set()
for root,dirs,files in os.walk(metadir):
for name in files:
if name.find(".bb") >= 0:
bbvars = bbvars.union(recipe_bbvars(os.path.join(root,name)))
return bbvars
def bbvar_is_documented(var, docfiles):
prog = re.compile(".*($|[^A-Z_])%s([^A-Z_]|$)" % (var))
for doc in docfiles:
try:
f = open(doc)
except IOError as (errno, strerror):
print 'WARNING: Failed to open doc ', doc
print strerror
for line in f:
if prog.match(line):
return True
f.close()
return False
def main():
docfiles = []
metadirs = []
bbvars = set()
undocumented = []
# Collect and validate input
try:
opts, args = getopt.getopt(sys.argv[1:], "d:hm:", ["help"])
except getopt.GetoptError, err:
print '%s' % str(err)
usage()
sys.exit(2)
for o, a in opts:
if o in ('-h', '--help'):
usage()
sys.exit(0)
elif o == '-d':
if os.path.isfile(a):
docfiles.append(a)
else:
print 'ERROR: documentation file %s is not a regular file' % (a)
sys.exit(3)
elif o == '-m':
if os.path.isdir(a):
metadirs.append(a)
else:
print 'ERROR: meta directory %s is not a directory' % (a)
sys.exit(4)
else:
assert False, "unhandled option"
if len(docfiles) == 0:
print 'ERROR: no docfile specified'
usage()
sys.exit(5)
if len(metadirs) == 0:
print 'ERROR: no metadir specified'
usage()
sys.exit(6)
# Collect all the variable names from the recipes in the metadirs
for m in metadirs:
bbvars = bbvars.union(collect_bbvars(m))
# Check each var for documentation
for v in bbvars:
if not bbvar_is_documented(v, docfiles):
undocumented.append(v)
undocumented.sort()
# Report all undocumented variables
print 'Found %d undocumented bb variables (out of %d):' % (len(undocumented), len(bbvars))
for v in undocumented:
print v
if __name__ == "__main__":
main()
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: RFC: Undocumented Recipe Variables Script
2010-12-07 22:12 RFC: Undocumented Recipe Variables Script Darren Hart
@ 2010-12-07 22:38 ` Richard Purdie
2010-12-07 22:57 ` Darren Hart
0 siblings, 1 reply; 6+ messages in thread
From: Richard Purdie @ 2010-12-07 22:38 UTC (permalink / raw)
To: Darren Hart; +Cc: poky@yoctoproject.org
On Tue, 2010-12-07 at 14:12 -0800, Darren Hart wrote:
> I whipped up a script to find variables in recipes
> and determine if they have been documented.
[...]
> ALTERNATIVE_LINK
> ALTERNATIVE_LINKS
> ALTERNATIVE_NAME
> ALTERNATIVE_PATH
> ALTERNATIVE_PRIORITY
yet if I look at:
http://www.yoctoproject.org/docs/poky-ref-manual/poky-ref-manual.html#ref-classes-update-alternatives
these ones are.
There is a lot of noise in that script but its probably worth a pass
over the output to hint as to what we need to document.
Cheers,
Richard
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: RFC: Undocumented Recipe Variables Script
2010-12-07 22:38 ` Richard Purdie
@ 2010-12-07 22:57 ` Darren Hart
2010-12-08 1:27 ` Darren Hart
0 siblings, 1 reply; 6+ messages in thread
From: Darren Hart @ 2010-12-07 22:57 UTC (permalink / raw)
To: Richard Purdie; +Cc: poky@yoctoproject.org
On 12/07/2010 02:38 PM, Richard Purdie wrote:
> On Tue, 2010-12-07 at 14:12 -0800, Darren Hart wrote:
>> I whipped up a script to find variables in recipes
>> and determine if they have been documented.
> [...]
>> ALTERNATIVE_LINK
>> ALTERNATIVE_LINKS
>> ALTERNATIVE_NAME
>> ALTERNATIVE_PATH
>> ALTERNATIVE_PRIORITY
>
> yet if I look at:
>
> http://www.yoctoproject.org/docs/poky-ref-manual/poky-ref-manual.html#ref-classes-update-alternatives
>
> these ones are.
OK, this just suggests I need to include more of the xml documents in my
arguments. Actually, I think I'll just build the documents and include
all the html documents.
>
> There is a lot of noise in that script but its probably worth a pass
> over the output to hint as to what we need to document.
Let's make sure I have all the appropriate docs being searched first.
I talked with Scott and we decided using the html file should be the
right thing. All the above are found, with the exception of
ALTERNATIVE_LINKS (plural) which indeed is not in the html file.
$ ./bbvars.py -m ~/source/poky.git/meta -d ~/source/poky.git/documentation/poky-ref-manual/poky-ref-manual.html
Found 1388 undocumented bb variables (out of 1553):
AC
ACCESS
ACLOCAL_CWFLAGS
ACX
AC_REQUIRE
ADD_BT
ADD_WIFI
AFTER
AI
AKM
ALLOWOPTIONS
ALLOW_EMPTY
ALLOW_EMPTY_
ALTERNATIVE_LINKS
ALTNAME
AM_GLIB_GNU_GETTEXT
AM_GNU_GETTEXT
APACHE_MIRROR
API
APPDESKTOP
APPEND
APPIMAGE
APPNAME
APR
APT_CONFIG
AR
ARCH
ARCH_FLAGS_FOR_TARGET
ARFLAGS
ARM_INSTRUCTION_SET
ARM_MUTEX
ART_CONFIG
AS
ASN
ASNEEDED
ASSUME_SHLIBS
ATA
ATM
AUTHORS
AUTOLOGIN
AUTOV
AUTO_LIBNAME_PKGS
AUTO_SYSLINUXCFG
AUTO_SYSLINUXMENU
AUX_OBJ
AV
AWKPOSTINSTSCRIPT
BASEDIR
BASEFILESISSUEINSTALL
BASEPKG_HOST_SYS
BASEPKG_TARGET_SYS
BASEPN
BASE_CONF
BASE_PACKAGE_ARCH
BASE_SRC_URI
BBCLASSEXTEND
BB_CURRENTTASK
BB_DEFAULT_TASK
BB_HASHCHECK_FUNCTION
BB_HASHFILENAME
BB_MIN_VERSION
BB_RUNTASK
BB_SCHEDULER
BB_TASKHASH
BB_VERSION
BB_WORKERCONTEXT
BE
BINARY_LOCALE_ARCHES
BINCONFIG_GLOB
BINDIR
BINS
BINV
BJAM_EXTRA
BJAM_OPTS
BJAM_TOOLS
BLOCKS
BOOST_LIBS
BOOST_P
BOOTDD_EXTRA_SPACE
BOOTDD_VOLUME_ID
BOOTIMG_EXTRA_SPACE
BOOTIMG_VOLUME_ID
BOOTSTRAP
BP
BROKEN
BUGS
BUGTRACKER
BUG_ON
BUILD
BUILDCC
BUILDCFLAGS
BUILDING
BUILDNAME
BUILDSDK_CFLAGS
BUILDSDK_CPPFLAGS
BUILDSDK_LDFLAGS
BUILDSPEC
BUILD_AR
BUILD_ARCH
BUILD_CC
BUILD_CCLD
BUILD_CC_ARCH
BUILD_CFLAGS
BUILD_CXX
BUILD_CXXFLAGS
BUILD_IMAGES_FROM_FEEDS
BUILD_LD
BUILD_LDFLAGS
BUILD_OPT
BUILD_OS
BUILD_PREFIX
BUILD_RANLIB
BUILD_SHARED
BUILD_SYS
BUILD_VENDOR
BY
CACHE
CCACHE
CCDC
CCDV
CCFLAGS
CCLD
CC_FOR_BUILD
CD
CDT
CET
CFGL
CFLAGS_
CFLAGS_FOR_BUILD
CGI
CHAT
CHECKCOMMAND_
CHRPATH_BIN
CHRPATH_BIN_
CHSRC
CLEANFILES
CLEANFUNCS
CMAKE_CXX_COMPILER
CMAKE_CXX_FLAGS
CMAKE_CXX_FLAGS_RELEASE
CMAKE_C_COMPILER
CMAKE_C_FLAGS
CMAKE_C_FLAGS_RELEASE
CMAKE_FIND_ROOT_PATH
CMAKE_FIND_ROOT_PATH_MODE_INCLUDE
CMAKE_FIND_ROOT_PATH_MODE_LIBRARY
CMAKE_FIND_ROOT_PATH_MODE_PROGRAM
CMAKE_MAJOR_VERSION
CMAKE_MODULE_PATH
CMAKE_SYSTEM_NAME
CMDLINE_
CMDLINE_CONSOLE
CMX
COLORFX
COMBINED_FEATURES
COMMASPACE
COMMERCIAL_AUDIO_PLUGINS
COMMERCIAL_LICENSE
COMMERCIAL_QT
COMMERCIAL_VIDEO_PLUGINS
COMPATIBLE_HOST
COMPILE
CONFFILES
CONFFILES_
CONFIG
CONFIGURATION
CONFIGUREOPTS
CONFIGURE_AC
CONFIGURE_ARGS
CONFIGURE_FLAGS
CONFIG_LOCALVERSION
CONFIG_MMC_BLOCK
CONFIG_MMC_OMAP_HS
CONFIG_MODULES
CONFIG_OMAP_LL_DEBUG_UART
CONFIG_OMAP_LL_DEBUG_UART_EXT
CONFIG_OUT
CONFLICTNAME
CONFLICTS
CONFLICTS_
CONF_VERSION
CONTENT
CONTROL
COPTS
COPYRIGHT
CORE
CORYING
CPAN
CPAN_BUILD_DEPS
CPP
CPPFLAGS
CPPI
CR
CROSS
CROSS_COMPILE
CROSS_DIR
CSI
CSPI
CSS
CST
CT
CTAN
CURLGNUTLS
CURLGNUTLS_
CURSES
CVE
CWAUTOMACROSPREFIX
CXX
CXXFLAGS
CXXFLAGS_
DA
DATADIR
DATE
DAV
DB
DBUS
DBUS_SESSION_BUS_ADDRESS
DCMAKE_INSTALL_PREFIX
DCMAKE_INSTALL_SO_NO_EXE
DCMAKE_TOOLCHAIN_FILE
DCMAKE_VERBOSE_MAKEFILE
DDAEMON_UMASK
DEBIAN
DEBIANNAME_
DEBIAN_MIRROR
DEBIAN_NAMES
DEBIAN_NOAUTONAME_
DEBUG
DEBUG_LL
DEB_PACKAGE_INDEX_CLEAN
DEFAULT
DEFAULT_PREFERENCE_
DENABLE_DNS
DEPCHAIN_POST
DEPCHAIN_PRE
DEPENDENCY_CHECK
DEPENDPATH
DEPENDS_
DEPENDS_GETTEXT
DEPLOYDIR
DEPLOY_DIR
DEPLOY_DIR_DEB
DEPLOY_DIR_IMAGE
DEPLOY_DIR_IPK
DEPLOY_DIR_RPM
DEPLOY_DIR_SRC
DEPLOY_DIR_TAR
DEPLOY_KEEP_PACKAGES
DEPMOD
DER
DESCRIPTION_
DESCRIPTON
DEVEL_PREFIX
DFACILITY
DHAVE_ANIMATION
DHAVE_STRERROR
DHAVE_WEAKSYMS
DHCP
DHOSTS_ACCESS
DHOSTS_ALLOW
DHOSTS_DENY
DIGIT
DINET
DISCLAIMER
DISPC_VID_FIR
DISPLAY
DISTRO_EXTRA_DEPENDS
DISTRO_SSH_DAEMON
DISTUTILS_BUILD_ARGS
DISTUTILS_INSTALL_ARGS
DISTUTILS_STAGE_ALL_ARGS
DISTUTILS_STAGE_HEADERS_ARGS
DKILL_IP_OPTIONS
DLIB
DLINK_SIZE
DM
DMA
DNDEBUG
DNETGROUP
DNS
DO
DOCS
DOLT
DONE
DOS
DOSRC
DPKG_ARCH
DPKG_ARCH_
DPM
DPROCESS_OPTIONS
DPTC
DRI
DRPM_VENDOR_WINDRIVER
DSI
DSO
DSP
DSS
DSYS_ERRLIST_DEFINED
DUSE_GETDOMAIN
DVF
DVFS
DWITH_GNOME
DWITH_KDE
DWITH_MOZJS
DWITH_NM
DWITH_PERL
DWITH_PYTHON
DWITH_WEBKIT
D_FILE_OFFSET_BITS
D_GNU_SOURCE
D_REENTRANT
D__FILE_OFFSET_BITS
D__MIPSEB__
D__MIPSEL__
D__SOFTFP__
ED
EDID
EDL
EDS
EDT
EET
EGLIBC_BRANCH
ELF
ELFF
END
ENGR
ENHANCED_IMAGE_FEATURES
ENOENT
EOF
EPL
ERR
ERROR
ERROR_NAMES
EST
ETCDIR
EVENTLOG
EVIE
EVM
EXCEPTION
EXCLUDE_FROM
EXCLUDE_FROM_SHLIBS
EXCLUDE_FROM_WORLD
EXIF
EXPAT
EXPATINCPATH
EXPATLIBPATH
EXPORT_FUNCTIONS
EXTENDPV
EXTERN
EXTERNAL_TOOLCHAIN
EXTRAOPKGCONFIG
EXTRAS
EXTRA_AUTORECONF
EXTRA_CFLAGS
EXTRA_CPANFLAGS
EXTRA_DIST
EXTRA_IMAGEDEPENDS
EXTRA_NATIVE_PKGCONFIG_PATH
EXTRA_OECONF_
EXTRA_OEMAKE_
EXTRA_OEMAKE_NETGROUP
EXTRA_OEMAKE_NETGROUP_
EXTRA_QMAKEVARS_POST
EXTRA_QMAKEVARS_PRE
EXTRA_RDEPENDS
EXTRA_RDEPENDS_
EXTRA_SIPTAGS
FACILITY
FAIL
FAILURE
FAKEROOT
FAKEROOTENV
FAM
FAT
FATAL
FB
FC_GLYPHNAME
FC_LANG
FDL
FEAT
FEATURES
FEC
FEED_URIS
FF
FILEMANAGER
FILEMANAGER_
FILERDEPENDSFLIST
FILERDEPENDSFLIST_
FILERDEPENDS_
FILERPROVIDESFLIST
FILERPROVIDESFLIST_
FILERPROVIDES_
FILESDIR
FILESEXTRAPATHS
FILESPATH
FILESPATHBASE
FILESPATHPKG
FILES_
FILE_DIRNAME
FINISHED
FIR
FIXEDSRCDATE
FIXMESTAGINGDIR
FLAC
FLIST
FLIST_
FONTREV
FREEDESKTOP_CVS
FSL
FTL
FULL_OPTIMIZATION_
F_OK
GB
GBARR
GCONF_CONFIG_SOURCE
GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL
GCONV_PATH
GD
GDBPROPREFIX
GDK
GDK_PIXBUF_MODULEDIR
GDK_PIXBUF_QUERYLOADERS
GFDL
GIT_CONFIG
GIT_CORE_CONFIG
GIT_PROXY_COMMAND
GIT_PROXY_IGNORE
GL
GLEW
GLIBC_ADDONS
GLIBC_BROKEN_LOCALES
GLIBC_DEPENDENCIES
GLIBC_EXTRA_OECONF
GLIBC_GENERATE_LOCALES
GLIBC_INTERNAL_USE_BINARY_LOCALE
GLSL_CL
GMAE
GMP
GMT
GNOME_MIRROR
GNU_HASH
GO
GP
GPE_MIRROR
GPGME
GPIO
GPIO_POWERON
GPL_V
GPS
GR
GROFF_FONT_PATH
GROFF_TMAC_PATH
GRUB
GS
GSSDP
GTK_
GUP
HACK
HAL_INFO_
HANDHELDS_CVS
HASDOCBOOK
HCI
HDDDIR
HDDIMG
HEAD
HEADERS
HNP
HOME
HOST
HOSTPERL
HOSTPGEN
HOSTPYTHON
HOSTTOOLS_WHITELIST_
HOST_AR
HOST_ARCH
HOST_AR_KERNEL_ARCH
HOST_CC
HOST_CC_ARCH
HOST_CC_KERNEL_ARCH
HOST_CFLAGS
HOST_CXX
HOST_CXXFLAGS
HOST_DATA
HOST_LDFLAGS
HOST_LD_KERNEL_ARCH
HOST_LIBIDL_CFLAGS
HOST_LIBIDL_CONFIG
HOST_LIBIDL_LIBS
HOST_NONSYSV
HOST_OS
HOST_PREFIX
HOST_RANLIB
HOST_SYS
HOST_VENDOR
HOTPLUG
HST
HTTP
IAPI
IBM
ICE
ICECC_CC
ICECC_CXX
ICECC_ENV_EXEC
ICECC_PATH
ICECC_USER_CLASS_BL
ICECC_USER_PACKAGE_BL
ICECC_VERSION
ID
IDL
IDN
IDNA
IETF
IFS
IGEP
II
IMAGE
IMAGEROOTFS
IMAGETEST
IMAGE_BASENAME
IMAGE_CMD_
IMAGE_DEPENDS_
IMAGE_DEVICE_TABLE
IMAGE_DEVICE_TABLES
IMAGE_LINGUAS
IMAGE_LINK_NAME
IMAGE_LOCALES
IMAGE_NAME
IMAGE_OVERHEAD_FACTOR
IMAGE_PKGTYPE
IMAGE_POSTPROCESS_COMMAND
IMAGE_PREPROCESS_COMMAND
IMAGE_ROOTFS
IMAGE_ROOTFS_SIZE
IN
INCDIR
INCL
INCLUDEPATH
INCLUDES
INCOMPATIBLE_LICENSE
INC_PR
INFO
INHIBIT_AUTOTOOLS_DEPS
INHIBIT_AUTO_STAGE
INHIBIT_DEFAULT_DEPS
INIT
INITRD
INITSCRIPT_PARAMS_
INIT_D_DIR
INSANE_SKIP_
INSTALL
INSTALLED_PACKAGES
INSTALLROOT
INSTALL_DIR
INSTALL_HDR_PATH
INSTALL_INC
INSTALL_LIB
INSTALL_MAN
INSTALL_MOD_PATH
INSTALL_ROOT
INS_BASE
INTERFACES
INTERN
INVALID
IO
IOE
IOEINCDIR
IPC
IPKGCONF_SDK
IPKGCONF_TARGET
IPKG_ARGS
IPKG_HOST
IPKG_OFFLINE_ROOT
IPKG_TARGET
IPK_FEED_URIS
IPK_PACKAGE_INDEX_CLEAN
IPU
IROOT
IRQ
ISC
ISO
ISODIR
ISP
JFIF
JL
JPEG
JS_EDITLINE
KBRANCH
KDIR
KERNELDIR
KERNELORG_MIRROR
KERNEL_ALT_IMAGETYPE
KERNEL_AR
KERNEL_ARSUFFIX
KERNEL_CC
KERNEL_CCSUFFIX
KERNEL_CONSOLE
KERNEL_FEATURES
KERNEL_IMAGEDEST
KERNEL_IMAGE_BASE_NAME
KERNEL_IMAGE_MAXSIZE
KERNEL_IMAGE_SYMLINK_NAME
KERNEL_LD
KERNEL_LDSUFFIX
KERNEL_LOCALVERSION
KERNEL_MAJOR_VERSION
KERNEL_OBJECT_SUFFIX
KERNEL_OUTPUT
KERNEL_PATH
KERNEL_PRIORITY
KERNEL_RELEASE
KERNEL_REVISION_CHECKING
KERNEL_SOURCE
KERNEL_SRC
KERNEL_VERSION
KEXECTOOLS
KEXECTOOLS_
KILL_OPT
KMACHINE
KMACHINE_
KV
LABEL
LABELS
LAME
LAN
LAYER_CONF_VERSION
LCD
LCONF_VERSION
LCRYPT
LC_ALL
LDFLAGS
LDFLAGS_
LD_
LD_LIBRARY_PATH
LD_PRELOAD
LEAD_SONAME
LESSER
LGPL
LGPL_EXCEPTION
LGPV
LIB
LIBATA
LIBC
LIBC_DEPENDENCIES
LIBDIR
LIBNAMES
LIBRARY
LIBS
LIBTOOL
LIBV
LIB_DEPS
LICENCE
LICENSE_
LICENSING
LIC_CHKSUM_FILES
LIC_FILE_CHKSUM
LINGUAS_INSTALL
LINKFILE
LINK_FOR_BUILD
LINUX_KERNEL_TYPE
LINUX_VERSION
LINUX_VERSION_EXTENSION
LOCAL
LOCALEDEF
LOCALE_GENERATION_WITH_CROSS
LOCALE_UTF
LOCALPATCH
LOCALSRC
LOELIBDIR
LOG_DAEMON
LOG_DIR
LOG_FILE
LOG_INFO
LOPTS
LR
LSB_VERSION
LSOF_INCLUDE
LSOF_OS
LSOF_OS_
LTTDATE
LVDS
LZMA
MAC
MACHINE_ARCH
MACHINE_ESSENTIAL_EXTRA_RDEPENDS
MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS
MACHINE_POSTPROCESS_COMMAND
MAINTAINERS
MAJOR_KERNEL_VERSION
MAJOR_VERSION
MAJ_VER
MAKE
MAKEFLAGS
MAKE_ARCH
MAKE_OS
MAKE_TARGETS
MANIFEST
MANS
MARK
MATCH
MAX
MB
MBO
MC
MCW
MD
MDT
MET
METADATA_BRANCH
METADATA_REVISION
MFD
MIDI
MIME
MIRRORS
MIRRORS_
MMC
MMU
MNCI
MNRT
MODULES
MOD_PV
MOZCONFIG
MOZ_OBJDIR
MP
MPC
MPEG
MPL
MS
MST
MULTIMACH_ARCH
MULTIMACH_HOST_SYS
MULTIMACH_TARGET_SYS
MUTEX
MUTEX_
MUX
MX
MXC
MXC_DMA_ZONE_SIZE
NAK
NAND
NAPI
NATIVE_INSTALL_WORKS
NCMS
NEEDED
NET
NETGROUP
NETWORK_MANAGER
NEW
NEWS
NMEA
NO
NOISO
NONE
NOOPR
NORESULT
NOSWABBERUPDATE
NOT
NOTE
NOTES
NOW
NPATH
NPL
NSS
NZ
OBJ
OBJCOPY
OBJDUMP
ODBM_F
OECMAKE_BUILDPATH
OECMAKE_CXX_COMPILER
OECMAKE_CXX_FLAGS
OECMAKE_CXX_FLAGS_RELEASE
OECMAKE_C_COMPILER
OECMAKE_C_FLAGS
OECMAKE_C_FLAGS_RELEASE
OECMAKE_SITEFILE
OECMAKE_SOURCEPATH
OEDATADIR
OEDEBUG
OEEXECPREFIX
OEINCDIR
OELAYOUT_ABI
OELIBDIR
OEPREFIX
OEREV
OES_BITBAKE_CONF
OEV
OE_BINCONFIG_EXTRA_MANGLE
OE_QMAKE_AR
OE_QMAKE_CC
OE_QMAKE_CFLAGS
OE_QMAKE_CXX
OE_QMAKE_CXXFLAGS
OE_QMAKE_INCDIR_QT
OE_QMAKE_LDFLAGS
OE_QMAKE_LIBDIR_QT
OE_QMAKE_LIBS_QT
OE_QMAKE_LIBS_X
OE_QMAKE_LINK
OE_QMAKE_LRELEASE
OE_QMAKE_LUPDATE
OE_QMAKE_MOC
OE_QMAKE_PLATFORM
OE_QMAKE_QDBUSCPP
OE_QMAKE_QDBUSXML
OE_QMAKE_QMAKE
OE_QMAKE_RCC
OE_QMAKE_RPATH
OE_QMAKE_STRIP
OE_QMAKE_UIC
OE_REVISION
OFFLINE_ROOT
OFFSET
OHCI
OLD
OLDEST_KERNEL
OLD_BASE_PACKAGE_ARCH
OLD_MULTIMACH_ARCH
OLD_PACKAGE_ARCH
OM
OMAP
OMAPFB
OMAPZ
ONLY
OPENMOKO_MIRROR
OPENMOKO_RELEASE
OPKG
OPKGBUILDCMD
OPKG_INIT_POSITION
OPKG_INIT_POSITION_
OPKG_OFFLINE_ROOT
OPKG_POSTPROCESS_COMMANDS
OPKG_PREPROCESS_COMMANDS
OPSYS
OPT
OPT_GNUTLS
ORIGIN
ORIG_DEPENDS
ORIG_RDEPENDS
OSE
OSL
OTG
OTGSC_IE_
OUT
OUTSPECFILE
OV
OVERRIDES
OVERRIDES_
OWL_
PACKAGE
PACKAGEFUNCS
PACKAGELOCK
PACKAGES_
PACKAGES_DYNAMIC
PACKAGES_TO_INSTALL
PACKAGE_ARCHS
PACKAGE_ARCH_
PACKAGE_DEPENDS
PACKAGE_INSTALL
PACKAGE_INSTALL_ATTEMPTONLY
PACKAGE_NO_GCONV
PACKAGE_NO_LOCALE
PACKAGE_PREPROCESS_FUNCS
PAM
PARALELL_MAKE_
PARALLEL_MAKE_
PASS
PASTHRU_INC
PATA
PATA_FSL
PATCHCLEANCMD
PATCHCMD
PATCHDEPENDENCY
PATCHING
PATCHRESOLVE
PATCHTOOL
PATCH_DEPENDS
PATHFIXPATCH
PATHFIXPATCH_
PATH_
PAUSE
PCI_CONF_FLAG
PCMCIA_MANAGER
PCRE
PD
PDT
PERL
PERLCONFIGTARGET
PERLHOSTLIB
PERLLIBDIRS
PERL_ARCHLIB
PERL_INC
PERL_LIB
PF
PG
PIC
PID
PIE
PIPE
PKG
PKGD
PKGDATA_DIR
PKGDEST
PKGDESTWORK
PKGFN
PKGHIST_DIR
PKGWRITEDIRDEB
PKGWRITEDIRIPK
PKGWRITEDIRRPM
PKG_
PKG_CONFIG
PKG_CONFIG_DIR
PKG_CONFIG_PATH
PKG_CONFIG_SYSROOT_DIR
PKG_DISTRIBUTECOMMAND
PKG_DISTRIBUTEDIR
PKG_DIST_LOCAL
PNG
POKY
POKY_BASE_INSTALL
POKY_CONF_VERSION
POKY_DISTRO_VERSION
POKY_NATIVE_SYSROOT
POKY_TARGET_SYSROOT
POSIX
POST
POSTIN
POSTINPROG
POTFILES
PRC
PREBUILT_CPUCFG
PREFERRED_PROVIDER_
PREFIX
PREMIRRORS
PREMIRRORS_
PREPROCESS_RELOCATE_DIRS
PRINC
PRINT
PRINTING
PRIORITY
PRIVATE_LIBS
PROFILES
PROMPT
PROTO_DEPS
PROVIDES
PROVIDES_
PRV
PR_
PS
PSEUDO_RELOADED
PSF
PST
PSTAGING_ACTIVE
PSTAGING_DISABLED
PVM
PWD
PXA
PYTHONPATH
PYTHON_BASEVERSION
PYTHON_DIR
PYTHON_MAJMIN
QA
QA_LOGFILE
QEMUARCH
QEMUIMAGETESTS
QEMUTARGET
QEMU_OPTIONS
QEMU_OPTIONS_
QMAKESPEC
QMAKE_MKSPEC_PATH
QMAKE_PROFILES
QMAKE_VARSUBST_POST
QMAKE_VARSUBST_PRE
QPL
QTDEMOS
QTDEMOS_
QT_CONFIG_FLAGS
QUILTRCFILE
QUILT_PATCHES
RADIUS
RAID
RANLIB
RCONFLICTS_
REAL_DAEMON_DIR
RECIPE_COMMENTS
RECIPE_INTEL_SECTION
RECIPE_LATEST_RELEASE_DATE
RECIPE_LATEST_VERSION
RECIPE_MAINTAINER
RECIPE_NO_UPDATE_REASON
RECIPE_STATUS
RECIPE_TIME_BETWEEN_LAST_TWO_RELEASES
RECOMMENDS
RELEASE
REPORTSTAMP
RFC
RMWORK_ORIG_TASK
ROC
ROK
ROM
ROOT
ROOTFS
ROOTFSBLOCKS
ROOTFS_PKGMANAGE
ROOTFS_PKGMANAGE_BOOTSTRAP
ROOTFS_POSTINSTALL_COMMAND
ROOTFS_POSTPROCESS_COMMAND
ROOTFS_SIZE
ROOT_
RPATH
RPC
RPMBUILD
RPMBUILDPATH
RPMDEPS
RPMOPTS
RPM_POSTPROCESS_COMMANDS
RPM_PREPROCESS_COMMANDS
RPROVIDES
RPROVIDES_
RPSRC
RRECOMMENDS_
RREPLACES_
RSUGGESTS
RSZ
RTC
RUNNING
RUNTIME
RUNTIME_
RUNTIME_PREFIX
RX
R_OK
SA
SANITY_ABIFILE
SATA
SATO_IMAGE_FEATURES
SCCS
SCENEFUNCS
SCHEMA
SCHEMA_FILES
SCHEMA_LOCATION
SCONF_VERSION
SCRIPT
SCSI
SD
SDC
SDI
SDIO
SDKMACHINE
SDKPATH
SDKPATHNATIVE
SDKTARGETSYSROOT
SDK_ARCH
SDK_CC_ARCH
SDK_DEPLOY
SDK_DIR
SDK_NAME
SDK_OS
SDK_OUTPUT
SDK_PREFIX
SDK_VENDOR
SDL
SDMA
SDP
SECTION_
SEL
SEVERITY
SGX
SH
SHA
SHARED
SHAREDIR
SHELL
SHLIBSDIR
SHLIBSWORKDIR
SIGNATURE
SIGPIPE
SIG_DFL
SIM
SIPTAGS
SIP_FEATURES
SIP_MODULES
SITE
SITECONFIG_SYSROOTCACHE
SITE_CONF_VERSION
SIZE
SKIP
SKIPPING
SM
SMTP
SOLIBS
SOLIBSDEV
SONAME
SOURCEFORGE_MIRROR
SOURCES
SOURCE_MIRROR_FETCH
SPECFILE
SPECS
SPI
SPLASH
SRC
SRCDATE_
SRCNAME
SRCPV
SRCREV_
SRCREV_FORMAT
SRC_DISTRIBUTECOMMAND
SRC_DISTRIBUTEDIR
SRC_DIST_LOCAL
SRC_URI_
SREC_CMD
SREC_SKIP
SREC_VMAADDR
SRPMFILE
SSDP
SSTATETASKS
SSTATE_BUILDDIR
SSTATE_DIR
SSTATE_INSTDIR
SSTATE_MANFILEBASE
SSTATE_MANFILEPREFIX
SSTATE_MANIFESTS
SSTATE_MIRRORS
SSTATE_PKG
SSTATE_PKGARCH
SSTATE_PKGNAME
SSTATE_SCAN_CMD
SSTATE_VERSION
STAGE_TEMP
STAGING_BINDIR
STAGING_BINDIR_CROSS
STAGING_BINDIR_NATIVE
STAGING_BINDIR_TOOLCHAIN
STAGING_DATADIR
STAGING_DATADIR_NATIVE
STAGING_DIR
STAGING_DIR_HOST
STAGING_DIR_NATIVE
STAGING_DIR_TARGET
STAGING_ETCDIR_NATIVE
STAGING_EXECPREFIXDIR
STAGING_INCDIR
STAGING_INCDIR_NATIVE
STAGING_LIBDIR
STAGING_LIBDIR_NATIVE
STAGING_SIPDIR
STAMP
STARTING
STOP
STRING
STRIP
STRIPPROG
STYLE
ST_MODE
SU
SUBDIR
SUBDIRS
SUCC
SUCCESS
SUPPORTED
SVG
SVGA
SVNREV
SWABBER_LOGS
SWABBER_REPORT
SWAB_ORIG_TASK
SWLINUX
SYSLINUXCFG
SYSLINUXMENU
SYSLINUX_OPTS
SYSLINUX_TIMEOUT
SYSROOT_DESTDIR
SYSROOT_LOCK
SYSROOT_PREPROCESS_FUNCS
SYSTEMHEADERS
SYSTEMLIBS
SYSV
SYSVINIT_ENABLED_GETTYS
SYS_INCLUDES
S_IEXEC
S_IREAD
S_IRWXU
S_ISDIR
S_ISLNK
S_ISREG
S_IWRITE
TABLES
TARGET
TARGETARCH
TARGETFPU
TARGETOS
TARGET_AR_KERNEL_ARCH
TARGET_CC_ARCH
TARGET_CC_ARCH_
TARGET_CC_KERNEL_ARCH
TARGET_CPPFLAGS
TARGET_LDFLAGS
TARGET_LD_KERNEL_ARCH
TARGET_OS_ORIG
TARGET_PREFIX
TARGET_SYS
TARGET_VENDOR
TEMPLATE
TERMWINDOWTITLE
TEST_DIR
TEST_LOG
TEST_RESULT
TEST_SCEN
TEST_TMP
TIFF
TIMEOUT
TINDERBOX
TINDER_AUTOBUILD
TINDER_BRANCH
TINDER_CLOBBER
TINDER_HOST
TINDER_LOG
TINDER_MACHINE
TINDER_REPORT
TINDER_TREE
TINDER_URL
TKSRC
TLI
TMAKEPATH
TMAKE_CONFIG
TMAKE_DEPENDPATH
TMAKE_DESTDIR
TMAKE_HEADERS
TMAKE_INCLUDEPATH
TMAKE_INTERFACES
TMAKE_LIBS
TMAKE_PROFILES
TMAKE_SOURCES
TMAKE_TARGET
TMAKE_TEMPLATE
TMIO
TMP
TMP_LOCALE
TO
TOBUILD
TODO
TOOLCHAIN_HOST_TASK
TOOLCHAIN_OPTIONS
TOOLCHAIN_OUTPUTNAME
TOOLCHAIN_TARGET_SDKTASK
TOOLCHAIN_TARGET_TASK
TOP
TOPDIR
TOTALSIZE
TRACE_LOGDIR
TRACE_LOGFILE
TTF
TWL
TX
TXCSR
TXDMA
TXT
TZ
TZONES
UBOOT_ARCH
UBOOT_ENTRYPOINT
UBOOT_LOADADDRESS
UBOOT_MACHINE_
UCLIBC_BASE
UCS
UCT
UDC
UDEV_EXTRAS
UE
UMASK
UNDEFINED
UNIX
UP
UPDATE
URB
URI
US
USAGE
USBCV
USBH
USERPTR
USE_DEVFS
USE_NLS
USE_NLS_
USE_VT
UST
UTC
VERSION
VFS
VIDIOC_QUERYMENU
VIRTUAL
VIRTUAL_NAME
VIRTUAL_NAME_
VM
VMW
VNC
VOLTAGE_
VPATH
VPU
VP_CLK_RATIO
VR
VRAM
VRFB
VSYSLOG
VUSB
WARNING
WEB
WEB_
WET
WHITELIST_
WITH_ENCA
WM
W_OK
XAUTHORITY
XC
XCB
XCFLAGS
XDG
XF
XFCE_VERSION
XI
XIG
XINC
XIP
XK
XKB
XLDFLAGS
XLIB
XLIBS_CVS
XML
XORG_MIRROR
XORG_PN
XSERVER
XSETTINGS
XSLT
XSUB
XT
XT_CFLAGS
XV
X_OK
YES
YUV
ZAURUS_UPDATER_VERSION
ZIP
ZLIB
ZY
_A
_ARM
_BCM
_BD
_C
_CID_AUTO_WHITE_BALAN
_CONFIG
_CONSOLE_SERIAL_PORT
_CR
_DATA
_ER
_ET
_HEADERS
_IMAGE_FEATURES
_IN
_K
_L
_LIST
_LTLIBRARIES
_M
_MANS
_MN
_MTN
_O
_OLPC
_ONLY
_OPT
_P
_PROG_INTLTOOL
_SCRIPTS
_SENDMAIL
_T
_TEXINFOS
_TIMEOUT
_TIMER
_TO
_TR
_USE_SYSTEM_EXTENSIONS
_WAP_
_WHITELIST_
_WPASUPPLICANT
_Y
__
__RUNQUEUE_DO_NOT_USE_EXTERNALLY
--
Darren Hart
Yocto Linux Kernel
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: RFC: Undocumented Recipe Variables Script
2010-12-07 22:57 ` Darren Hart
@ 2010-12-08 1:27 ` Darren Hart
2010-12-09 13:53 ` Richard Purdie
0 siblings, 1 reply; 6+ messages in thread
From: Darren Hart @ 2010-12-08 1:27 UTC (permalink / raw)
To: Richard Purdie; +Cc: poky@yoctoproject.org
[-- Attachment #1: Type: text/plain, Size: 71019 bytes --]
On 12/07/2010 02:57 PM, Darren Hart wrote:
> On 12/07/2010 02:38 PM, Richard Purdie wrote:
>> On Tue, 2010-12-07 at 14:12 -0800, Darren Hart wrote:
>>> I whipped up a script to find variables in recipes
>>> and determine if they have been documented.
>> [...]
>>> ALTERNATIVE_LINK
>>> ALTERNATIVE_LINKS
>>> ALTERNATIVE_NAME
>>> ALTERNATIVE_PATH
>>> ALTERNATIVE_PRIORITY
>>
>> yet if I look at:
>>
>> http://www.yoctoproject.org/docs/poky-ref-manual/poky-ref-manual.html#ref-classes-update-alternatives
>>
>> these ones are.
>
> OK, this just suggests I need to include more of the xml documents in my
> arguments. Actually, I think I'll just build the documents and include
> all the html documents.
>
>>
>> There is a lot of noise in that script but its probably worth a pass
>> over the output to hint as to what we need to document.
>
> Let's make sure I have all the appropriate docs being searched first.
>
> I talked with Scott and we decided using the html file should be the
> right thing. All the above are found, with the exception of
> ALTERNATIVE_LINKS (plural) which indeed is not in the html file.
>
> $ ./bbvars.py -m ~/source/poky.git/meta -d ~/source/poky.git/documentation/poky-ref-manual/poky-ref-manual.html
> Found 1388 undocumented bb variables (out of 1553):
> AC
> ACCESS
> ACLOCAL_CWFLAGS
> ACX
> ...
After discussing a bit with Richard, we felt seeing a count for each
recipe that used a variable along with the doc tag (documentation.conf)
would aid in identifying which variables needed documentation. The
attached script accomplishes this. The -T argument will limit output to
only variables with doc tags - which should make updating the
documentation rather trivial.
Things like PROVIDES with 50 occurences under meta and an existing doc
tag should be prioritized for documentation updates. After that, things
like BBCLASSEXTEND with 117 users and no doc-tag should follow.
Richard, could you give the output a scan and let me know if there is
additional filtering I could add to make the results easier to digest?
If they look good to you, can you have a go at identifying a set of
variables that should get documentation updates?
Thanks,
Darren
The following is a doc-tag only listing:
$ ./bbvars.py -m ~/source/poky.git/meta -d ~/source/poky.git/documentation/poky-ref-manual/poky-ref-manual.html -t ~/source/poky.git/meta/conf/documentation.conf -T
Found 1388 undocumented bb variables (out of 1553):
VARIABLE COUNT DOCTAG
===================================================
BUILD_ARCH 4 The name of the building architecture. E.g. i686.
BUILD_CC_ARCH 2 FIXME
BUILD_PREFIX 4 FIXME
BUILD_SYS 13 FIXME
BUILD_VENDOR 2 FIXME
CACHE 1 The directory holding the cache of the metadata.
COMPATIBLE_HOST 17 A regular expression which matches the HOST_SYS names supported by the package/file. Failure to match will cause the file to be skipped by the parser.
DATE 1 The date the build was started Ymd
HOST_ARCH 9 The name of the target architecture. Normally same as the TARGET_ARCH. @see TARGET_ARCH @group base
HOST_CC_ARCH 5 Normally same as the TARGET_CC_ARCH. @see TARGET_CC_ARCH @group base
HOST_PREFIX 10 Normally same as the TARGET_PREFIX. @see TARGET_PREFIX @group base
HOST_SYS 21 FIXME
HOST_VENDOR 6 The name of the vendor. Normally same as the TARGET_VENDOR. @see TARGET_VENDOR
IPK_FEED_URIS 1 List of ipkg feed records to put into generated image.
PCMCIA_MANAGER 1 Specify which package(s) to install to handle PCMCIA slots (usually pcmcia-cs or pcmciautils).
PF 3 Package name - Package version - Package revision (PN-PV-PR)
PRIORITY 73 Importance of package, default values are 'optional' or 'needed'.
PROVIDES 50 Names for additional build time dependencies that this package will provide. @group dependencies
RPROVIDES 9 Names for additional run time dependencies that this package will provide. This is used to populate the ipkg:Provides field. @group dependencies
SOURCE_MIRROR_FETCH 1 Switch marking build as source fetcher. Used to skip COMPATIBLE_* checking.
STAMP 3 The directory that holds files to keep track of what was built.
SYSVINIT_ENABLED_GETTYS 1 Specify which VTs should be running a getty, the default is 1
TARGET_CC_ARCH 5 FIXME
TARGET_PREFIX 23 The prefix for the cross compile toolchain. E.g arm-linux- .
TARGET_SYS 19 The target system is composed out of TARGET_ARCH,TARGET_VENDOR and TARGET_OS.
TARGET_VENDOR 7 FIXME
The unfiltered output follows:
$ ./bbvars.py -m ~/source/poky.git/meta -d ~/source/poky.git/documentation/poky-ref-manual/poky-ref-manual.html -t ~/source/poky.git/meta/conf/documentation.conf
Found 1388 undocumented bb variables (out of 1553):
VARIABLE COUNT DOCTAG
===================================================
AC 1
ACCESS 1
ACLOCAL_CWFLAGS 2
ACX 1
AC_REQUIRE 1
ADD_BT 1
ADD_WIFI 1
AFTER 1
AI 1
AKM 1
ALLOWOPTIONS 1
ALLOW_EMPTY 24
ALLOW_EMPTY_ 9
ALTERNATIVE_LINKS 4
ALTNAME 1
AM_GLIB_GNU_GETTEXT 1
AM_GNU_GETTEXT 2
APACHE_MIRROR 2
API 6
APPDESKTOP 1
APPEND 2
APPIMAGE 1
APPNAME 1
APR 2
APT_CONFIG 2
AR 6
ARCH 11
ARCH_FLAGS_FOR_TARGET 7
ARFLAGS 1
ARM_INSTRUCTION_SET 7
ARM_MUTEX 2
ART_CONFIG 1
AS 2
ASN 2
ASNEEDED 1
ASSUME_SHLIBS 1
ATA 1
ATM 1
AUTHORS 1
AUTOLOGIN 1
AUTOV 1
AUTO_LIBNAME_PKGS 1
AUTO_SYSLINUXCFG 1
AUTO_SYSLINUXMENU 1
AUX_OBJ 1
AV 1
AWKPOSTINSTSCRIPT 1
BASEDIR 1
BASEFILESISSUEINSTALL 1
BASEPKG_HOST_SYS 2
BASEPKG_TARGET_SYS 3
BASEPN 1
BASE_CONF 2
BASE_PACKAGE_ARCH 7
BASE_SRC_URI 3
BBCLASSEXTEND 117
BB_CURRENTTASK 1
BB_DEFAULT_TASK 4
BB_HASHCHECK_FUNCTION 1
BB_HASHFILENAME 1
BB_MIN_VERSION 1
BB_RUNTASK 1
BB_SCHEDULER 1
BB_TASKHASH 1
BB_VERSION 1
BB_WORKERCONTEXT 1
BE 1
BINARY_LOCALE_ARCHES 1
BINCONFIG_GLOB 1
BINDIR 3
BINS 1
BINV 2
BJAM_EXTRA 1
BJAM_OPTS 1
BJAM_TOOLS 1
BLOCKS 2
BOOST_LIBS 1
BOOST_P 1
BOOTDD_EXTRA_SPACE 1
BOOTDD_VOLUME_ID 1
BOOTIMG_EXTRA_SPACE 1
BOOTIMG_VOLUME_ID 1
BOOTSTRAP 1
BP 4
BROKEN 1
BUGS 1
BUGTRACKER 114
BUG_ON 1
BUILD 2
BUILDCC 1
BUILDCFLAGS 1
BUILDING 1
BUILDNAME 3
BUILDSDK_CFLAGS 2
BUILDSDK_CPPFLAGS 2
BUILDSDK_LDFLAGS 2
BUILDSPEC 1
BUILD_AR 1
BUILD_ARCH 4 The name of the building architecture. E.g. i686.
BUILD_CC 11
BUILD_CCLD 1
BUILD_CC_ARCH 2 FIXME
BUILD_CFLAGS 7
BUILD_CXX 3
BUILD_CXXFLAGS 3
BUILD_IMAGES_FROM_FEEDS 2
BUILD_LD 1
BUILD_LDFLAGS 5
BUILD_OPT 1
BUILD_OS 3
BUILD_PREFIX 4 FIXME
BUILD_RANLIB 1
BUILD_SHARED 1
BUILD_SYS 13 FIXME
BUILD_VENDOR 2 FIXME
BY 1
CACHE 1 The directory holding the cache of the metadata.
CCACHE 6
CCDC 1
CCDV 1
CCFLAGS 1
CCLD 4
CC_FOR_BUILD 2
CD 1
CDT 1
CET 1
CFGL 1
CFLAGS_ 10
CFLAGS_FOR_BUILD 1
CGI 1
CHAT 1
CHECKCOMMAND_ 1
CHRPATH_BIN 1
CHRPATH_BIN_ 1
CHSRC 1
CLEANFILES 1
CLEANFUNCS 2
CMAKE_CXX_COMPILER 1
CMAKE_CXX_FLAGS 1
CMAKE_CXX_FLAGS_RELEASE 1
CMAKE_C_COMPILER 1
CMAKE_C_FLAGS 1
CMAKE_C_FLAGS_RELEASE 1
CMAKE_FIND_ROOT_PATH 1
CMAKE_FIND_ROOT_PATH_MODE_INCLUDE 1
CMAKE_FIND_ROOT_PATH_MODE_LIBRARY 1
CMAKE_FIND_ROOT_PATH_MODE_PROGRAM 1
CMAKE_MAJOR_VERSION 1
CMAKE_MODULE_PATH 1
CMAKE_SYSTEM_NAME 1
CMDLINE_ 1
CMDLINE_CONSOLE 1
CMX 1
COLORFX 1
COMBINED_FEATURES 1
COMMASPACE 1
COMMERCIAL_AUDIO_PLUGINS 2
COMMERCIAL_LICENSE 1
COMMERCIAL_QT 1
COMMERCIAL_VIDEO_PLUGINS 1
COMPATIBLE_HOST 17 A regular expression which matches the HOST_SYS names supported by the package/file. Failure to match will cause the file to be skipped by the parser.
COMPILE 1
CONFFILES 3
CONFFILES_ 13
CONFIG 2
CONFIGURATION 1
CONFIGUREOPTS 2
CONFIGURE_AC 1
CONFIGURE_ARGS 1
CONFIGURE_FLAGS 1
CONFIG_LOCALVERSION 1
CONFIG_MMC_BLOCK 1
CONFIG_MMC_OMAP_HS 1
CONFIG_MODULES 1
CONFIG_OMAP_LL_DEBUG_UART 1
CONFIG_OMAP_LL_DEBUG_UART_EXT 1
CONFIG_OUT 1
CONFLICTNAME 1
CONFLICTS 12
CONFLICTS_ 2
CONF_VERSION 1
CONTENT 2
CONTROL 1
COPTS 2
COPYRIGHT 8
CORE 5
CORYING 1
CPAN 4
CPAN_BUILD_DEPS 1
CPP 2
CPPFLAGS 13
CPPI 1
CR 1
CROSS 2
CROSS_COMPILE 7
CROSS_DIR 1
CSI 1
CSPI 1
CSS 1
CST 1
CT 1
CTAN 1
CURLGNUTLS 1
CURLGNUTLS_ 1
CURSES 1
CVE 2
CWAUTOMACROSPREFIX 1
CXX 6
CXXFLAGS 14
CXXFLAGS_ 1
DA 3
DATADIR 2
DATE 1 The date the build was started Ymd
DAV 1
DB 4
DBUS 1
DBUS_SESSION_BUS_ADDRESS 1
DCMAKE_INSTALL_PREFIX 1
DCMAKE_INSTALL_SO_NO_EXE 1
DCMAKE_TOOLCHAIN_FILE 1
DCMAKE_VERBOSE_MAKEFILE 1
DDAEMON_UMASK 1
DEBIAN 1
DEBIANNAME_ 2
DEBIAN_MIRROR 12
DEBIAN_NAMES 6
DEBIAN_NOAUTONAME_ 3
DEBUG 2
DEBUG_LL 1
DEB_PACKAGE_INDEX_CLEAN 1
DEFAULT 1
DEFAULT_PREFERENCE_ 14
DENABLE_DNS 1
DEPCHAIN_POST 1
DEPCHAIN_PRE 1
DEPENDENCY_CHECK 1
DEPENDPATH 1
DEPENDS_ 30
DEPENDS_GETTEXT 4
DEPLOYDIR 4
DEPLOY_DIR 7
DEPLOY_DIR_DEB 2
DEPLOY_DIR_IMAGE 13
DEPLOY_DIR_IPK 3
DEPLOY_DIR_RPM 2
DEPLOY_DIR_SRC 1
DEPLOY_DIR_TAR 1
DEPLOY_KEEP_PACKAGES 2
DEPMOD 2
DER 1
DESCRIPTION_ 8
DESCRIPTON 6
DEVEL_PREFIX 1
DFACILITY 1
DHAVE_ANIMATION 1
DHAVE_STRERROR 1
DHAVE_WEAKSYMS 1
DHCP 1
DHOSTS_ACCESS 2
DHOSTS_ALLOW 1
DHOSTS_DENY 1
DIGIT 1
DINET 1
DISCLAIMER 1
DISPC_VID_FIR 1
DISPLAY 3
DISTRO_EXTRA_DEPENDS 1
DISTRO_SSH_DAEMON 1
DISTUTILS_BUILD_ARGS 1
DISTUTILS_INSTALL_ARGS 1
DISTUTILS_STAGE_ALL_ARGS 1
DISTUTILS_STAGE_HEADERS_ARGS 1
DKILL_IP_OPTIONS 1
DLIB 2
DLINK_SIZE 1
DM 1
DMA 1
DNDEBUG 1
DNETGROUP 1
DNS 2
DO 1
DOCS 1
DOLT 3
DONE 1
DOS 4
DOSRC 1
DPKG_ARCH 1
DPKG_ARCH_ 1
DPM 1
DPROCESS_OPTIONS 1
DPTC 1
DRI 6
DRPM_VENDOR_WINDRIVER 1
DSI 1
DSO 3
DSP 1
DSS 3
DSYS_ERRLIST_DEFINED 1
DUSE_GETDOMAIN 1
DVF 1
DVFS 1
DWITH_GNOME 1
DWITH_KDE 1
DWITH_MOZJS 1
DWITH_NM 1
DWITH_PERL 1
DWITH_PYTHON 1
DWITH_WEBKIT 1
D_FILE_OFFSET_BITS 1
D_GNU_SOURCE 7
D_REENTRANT 3
D__FILE_OFFSET_BITS 1
D__MIPSEB__ 1
D__MIPSEL__ 1
D__SOFTFP__ 1
ED 2
EDID 1
EDL 1
EDS 1
EDT 1
EET 1
EGLIBC_BRANCH 2
ELF 2
ELFF 1
END 2
ENGR 1
ENHANCED_IMAGE_FEATURES 1
ENOENT 1
EOF 4
EPL 1
ERR 2
ERROR 2
ERROR_NAMES 1
EST 1
ETCDIR 1
EVENTLOG 1
EVIE 1
EVM 1
EXCEPTION 2
EXCLUDE_FROM 1
EXCLUDE_FROM_SHLIBS 1
EXCLUDE_FROM_WORLD 10
EXIF 1
EXPAT 2
EXPATINCPATH 1
EXPATLIBPATH 1
EXPORT_FUNCTIONS 24
EXTENDPV 2
EXTERN 1
EXTERNAL_TOOLCHAIN 1
EXTRAOPKGCONFIG 1
EXTRAS 2
EXTRA_AUTORECONF 4
EXTRA_CFLAGS 1
EXTRA_CPANFLAGS 2
EXTRA_DIST 3
EXTRA_IMAGEDEPENDS 1
EXTRA_NATIVE_PKGCONFIG_PATH 1
EXTRA_OECONF_ 12
EXTRA_OEMAKE_ 2
EXTRA_OEMAKE_NETGROUP 1
EXTRA_OEMAKE_NETGROUP_ 1
EXTRA_QMAKEVARS_POST 1
EXTRA_QMAKEVARS_PRE 1
EXTRA_RDEPENDS 1
EXTRA_RDEPENDS_ 1
EXTRA_SIPTAGS 1
FACILITY 1
FAIL 1
FAILURE 1
FAKEROOT 4
FAKEROOTENV 1
FAM 1
FAT 2
FATAL 1
FB 3
FC_GLYPHNAME 1
FC_LANG 1
FDL 3
FEAT 1
FEATURES 2
FEC 1
FEED_URIS 1
FF 1
FILEMANAGER 1
FILEMANAGER_ 1
FILERDEPENDSFLIST 1
FILERDEPENDSFLIST_ 1
FILERDEPENDS_ 1
FILERPROVIDESFLIST 1
FILERPROVIDESFLIST_ 1
FILERPROVIDES_ 1
FILESDIR 11
FILESEXTRAPATHS 1
FILESPATH 10
FILESPATHBASE 1
FILESPATHPKG 2
FILES_ 179
FILE_DIRNAME 11
FINISHED 1
FIR 1
FIXEDSRCDATE 1
FIXMESTAGINGDIR 1
FLAC 1
FLIST 1
FLIST_ 1
FONTREV 1
FREEDESKTOP_CVS 1
FSL 1
FTL 1
FULL_OPTIMIZATION_ 2
F_OK 1
GB 3
GBARR 2
GCONF_CONFIG_SOURCE 1
GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL 2
GCONV_PATH 1
GD 1
GDBPROPREFIX 1
GDK 3
GDK_PIXBUF_MODULEDIR 1
GDK_PIXBUF_QUERYLOADERS 1
GFDL 1
GIT_CONFIG 1
GIT_CORE_CONFIG 1
GIT_PROXY_COMMAND 1
GIT_PROXY_IGNORE 1
GL 9
GLEW 1
GLIBC_ADDONS 2
GLIBC_BROKEN_LOCALES 3
GLIBC_DEPENDENCIES 1
GLIBC_EXTRA_OECONF 2
GLIBC_GENERATE_LOCALES 1
GLIBC_INTERNAL_USE_BINARY_LOCALE 2
GLSL_CL 1
GMAE 2
GMP 1
GMT 2
GNOME_MIRROR 2
GNU_HASH 1
GO 3
GP 1
GPE_MIRROR 1
GPGME 2
GPIO 2
GPIO_POWERON 2
GPL_V 1
GPS 1
GR 1
GROFF_FONT_PATH 1
GROFF_TMAC_PATH 1
GRUB 1
GS 4
GSSDP 1
GTK_ 1
GUP 3
HACK 4
HAL_INFO_ 1
HANDHELDS_CVS 1
HASDOCBOOK 1
HCI 1
HDDDIR 2
HDDIMG 1
HEAD 2
HEADERS 2
HNP 1
HOME 2
HOST 1
HOSTPERL 1
HOSTPGEN 1
HOSTPYTHON 1
HOSTTOOLS_WHITELIST_ 1
HOST_AR 1
HOST_ARCH 9 The name of the target architecture. Normally same as the TARGET_ARCH. @see TARGET_ARCH @group base
HOST_AR_KERNEL_ARCH 1
HOST_CC 1
HOST_CC_ARCH 5 Normally same as the TARGET_CC_ARCH. @see TARGET_CC_ARCH @group base
HOST_CC_KERNEL_ARCH 2
HOST_CFLAGS 1
HOST_CXX 1
HOST_CXXFLAGS 1
HOST_DATA 1
HOST_LDFLAGS 1
HOST_LD_KERNEL_ARCH 2
HOST_LIBIDL_CFLAGS 1
HOST_LIBIDL_CONFIG 1
HOST_LIBIDL_LIBS 1
HOST_NONSYSV 1
HOST_OS 7
HOST_PREFIX 10 Normally same as the TARGET_PREFIX. @see TARGET_PREFIX @group base
HOST_RANLIB 1
HOST_SYS 21 FIXME
HOST_VENDOR 6 The name of the vendor. Normally same as the TARGET_VENDOR. @see TARGET_VENDOR
HOTPLUG 1
HST 1
HTTP 5
IAPI 1
IBM 1
ICE 1
ICECC_CC 1
ICECC_CXX 1
ICECC_ENV_EXEC 1
ICECC_PATH 1
ICECC_USER_CLASS_BL 1
ICECC_USER_PACKAGE_BL 1
ICECC_VERSION 1
ID 4
IDL 1
IDN 2
IDNA 2
IETF 2
IFS 1
IGEP 1
II 1
IMAGE 1
IMAGEROOTFS 2
IMAGETEST 1
IMAGE_BASENAME 2
IMAGE_CMD_ 1
IMAGE_DEPENDS_ 1
IMAGE_DEVICE_TABLE 1
IMAGE_DEVICE_TABLES 1
IMAGE_LINGUAS 3
IMAGE_LINK_NAME 3
IMAGE_LOCALES 2
IMAGE_NAME 5
IMAGE_OVERHEAD_FACTOR 1
IMAGE_PKGTYPE 5
IMAGE_POSTPROCESS_COMMAND 1
IMAGE_PREPROCESS_COMMAND 2
IMAGE_ROOTFS 12
IMAGE_ROOTFS_SIZE 1
IN 1
INCDIR 2
INCL 1
INCLUDEPATH 1
INCLUDES 2
INCOMPATIBLE_LICENSE 1
INC_PR 5
INFO 1
INHIBIT_AUTOTOOLS_DEPS 2
INHIBIT_AUTO_STAGE 1
INHIBIT_DEFAULT_DEPS 13
INIT 1
INITRD 2
INITSCRIPT_PARAMS_ 1
INIT_D_DIR 1
INSANE_SKIP_ 4
INSTALL 1
INSTALLED_PACKAGES 2
INSTALLROOT 3
INSTALL_DIR 1
INSTALL_HDR_PATH 2
INSTALL_INC 1
INSTALL_LIB 1
INSTALL_MAN 1
INSTALL_MOD_PATH 2
INSTALL_ROOT 2
INS_BASE 1
INTERFACES 1
INTERN 1
INVALID 3
IO 2
IOE 4
IOEINCDIR 1
IPC 2
IPKGCONF_SDK 3
IPKGCONF_TARGET 4
IPKG_ARGS 1
IPKG_HOST 2
IPKG_OFFLINE_ROOT 3
IPKG_TARGET 1
IPK_FEED_URIS 1 List of ipkg feed records to put into generated image.
IPK_PACKAGE_INDEX_CLEAN 1
IPU 1
IROOT 1
IRQ 3
ISC 3
ISO 3
ISODIR 1
ISP 1
JFIF 1
JL 1
JPEG 2
JS_EDITLINE 1
KBRANCH 1
KDIR 1
KERNELDIR 1
KERNELORG_MIRROR 15
KERNEL_ALT_IMAGETYPE 1
KERNEL_AR 2
KERNEL_ARSUFFIX 1
KERNEL_CC 5
KERNEL_CCSUFFIX 2
KERNEL_CONSOLE 1
KERNEL_FEATURES 1
KERNEL_IMAGEDEST 1
KERNEL_IMAGE_BASE_NAME 2
KERNEL_IMAGE_MAXSIZE 1
KERNEL_IMAGE_SYMLINK_NAME 2
KERNEL_LD 4
KERNEL_LDSUFFIX 2
KERNEL_LOCALVERSION 1
KERNEL_MAJOR_VERSION 1
KERNEL_OBJECT_SUFFIX 1
KERNEL_OUTPUT 2
KERNEL_PATH 1
KERNEL_PRIORITY 1
KERNEL_RELEASE 1
KERNEL_REVISION_CHECKING 1
KERNEL_SOURCE 2
KERNEL_SRC 1
KERNEL_VERSION 6
KEXECTOOLS 1
KEXECTOOLS_ 1
KILL_OPT 1
KMACHINE 1
KMACHINE_ 1
KV 1
LABEL 1
LABELS 5
LAME 1
LAN 2
LAYER_CONF_VERSION 1
LCD 2
LCONF_VERSION 1
LCRYPT 1
LC_ALL 2
LDFLAGS 32
LDFLAGS_ 2
LD_ 1
LD_LIBRARY_PATH 3
LD_PRELOAD 1
LEAD_SONAME 12
LESSER 3
LGPL 117
LGPL_EXCEPTION 1
LGPV 1
LIB 25
LIBATA 1
LIBC 2
LIBC_DEPENDENCIES 1
LIBDIR 4
LIBNAMES 1
LIBRARY 1
LIBS 6
LIBTOOL 6
LIBV 3
LIB_DEPS 5
LICENCE 5
LICENSE_ 4
LICENSING 1
LIC_CHKSUM_FILES 2
LIC_FILE_CHKSUM 1
LINGUAS_INSTALL 4
LINKFILE 1
LINK_FOR_BUILD 1
LINUX_KERNEL_TYPE 1
LINUX_VERSION 1
LINUX_VERSION_EXTENSION 1
LOCAL 3
LOCALEDEF 1
LOCALE_GENERATION_WITH_CROSS 1
LOCALE_UTF 1
LOCALPATCH 1
LOCALSRC 1
LOELIBDIR 1
LOG_DAEMON 2
LOG_DIR 3
LOG_FILE 1
LOG_INFO 1
LOPTS 1
LR 1
LSB_VERSION 1
LSOF_INCLUDE 1
LSOF_OS 1
LSOF_OS_ 1
LTTDATE 1
LVDS 1
LZMA 1
MAC 1
MACHINE_ARCH 27
MACHINE_ESSENTIAL_EXTRA_RDEPENDS 2
MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS 2
MACHINE_POSTPROCESS_COMMAND 1
MAINTAINERS 2
MAJOR_KERNEL_VERSION 1
MAJOR_VERSION 1
MAJ_VER 2
MAKE 3
MAKEFLAGS 1
MAKE_ARCH 1
MAKE_OS 1
MAKE_TARGETS 2
MANIFEST 1
MANS 1
MARK 1
MATCH 1
MAX 1
MB 4
MBO 4
MC 1
MCW 1
MD 4
MDT 1
MET 1
METADATA_BRANCH 2
METADATA_REVISION 4
MFD 2
MIDI 1
MIME 1
MIRRORS 1
MIRRORS_ 1
MMC 3
MMU 1
MNCI 1
MNRT 1
MODULES 1
MOD_PV 1
MOZCONFIG 1
MOZ_OBJDIR 1
MP 2
MPC 1
MPEG 1
MPL 7
MS 2
MST 1
MULTIMACH_ARCH 3
MULTIMACH_HOST_SYS 2
MULTIMACH_TARGET_SYS 5
MUTEX 2
MUTEX_ 2
MUX 1
MX 2
MXC 1
MXC_DMA_ZONE_SIZE 1
NAK 1
NAND 1
NAPI 1
NATIVE_INSTALL_WORKS 1
NCMS 2
NEEDED 2
NET 2
NETGROUP 1
NETWORK_MANAGER 1
NEW 1
NEWS 1
NMEA 1
NO 2
NOISO 1
NONE 1
NOOPR 1
NORESULT 1
NOSWABBERUPDATE 1
NOT 1
NOTE 1
NOTES 2
NOW 1
NPATH 1
NPL 1
NSS 1
NZ 1
OBJ 1
OBJCOPY 2
OBJDUMP 2
ODBM_F 1
OECMAKE_BUILDPATH 1
OECMAKE_CXX_COMPILER 1
OECMAKE_CXX_FLAGS 1
OECMAKE_CXX_FLAGS_RELEASE 1
OECMAKE_C_COMPILER 1
OECMAKE_C_FLAGS 1
OECMAKE_C_FLAGS_RELEASE 1
OECMAKE_SITEFILE 1
OECMAKE_SOURCEPATH 1
OEDATADIR 1
OEDEBUG 1
OEEXECPREFIX 1
OEINCDIR 1
OELAYOUT_ABI 1
OELIBDIR 1
OEPREFIX 1
OEREV 1
OES_BITBAKE_CONF 1
OEV 1
OE_BINCONFIG_EXTRA_MANGLE 2
OE_QMAKE_AR 1
OE_QMAKE_CC 1
OE_QMAKE_CFLAGS 1
OE_QMAKE_CXX 1
OE_QMAKE_CXXFLAGS 1
OE_QMAKE_INCDIR_QT 1
OE_QMAKE_LDFLAGS 1
OE_QMAKE_LIBDIR_QT 1
OE_QMAKE_LIBS_QT 1
OE_QMAKE_LIBS_X 1
OE_QMAKE_LINK 1
OE_QMAKE_LRELEASE 1
OE_QMAKE_LUPDATE 1
OE_QMAKE_MOC 1
OE_QMAKE_PLATFORM 1
OE_QMAKE_QDBUSCPP 1
OE_QMAKE_QDBUSXML 1
OE_QMAKE_QMAKE 2
OE_QMAKE_RCC 1
OE_QMAKE_RPATH 1
OE_QMAKE_STRIP 1
OE_QMAKE_UIC 1
OE_REVISION 1
OFFLINE_ROOT 3
OFFSET 1
OHCI 2
OLD 1
OLDEST_KERNEL 2
OLD_BASE_PACKAGE_ARCH 2
OLD_MULTIMACH_ARCH 1
OLD_PACKAGE_ARCH 3
OM 2
OMAP 6
OMAPFB 1
OMAPZ 1
ONLY 1
OPENMOKO_MIRROR 2
OPENMOKO_RELEASE 2
OPKG 1
OPKGBUILDCMD 1
OPKG_INIT_POSITION 2
OPKG_INIT_POSITION_ 2
OPKG_OFFLINE_ROOT 3
OPKG_POSTPROCESS_COMMANDS 1
OPKG_PREPROCESS_COMMANDS 1
OPSYS 1
OPT 2
OPT_GNUTLS 1
ORIGIN 1
ORIG_DEPENDS 2
ORIG_RDEPENDS 1
OSE 12
OSL 3
OTG 1
OTGSC_IE_ 1
OUT 1
OUTSPECFILE 1
OV 1
OVERRIDES 13
OVERRIDES_ 2
OWL_ 1
PACKAGE 1
PACKAGEFUNCS 3
PACKAGELOCK 1
PACKAGES_ 6
PACKAGES_DYNAMIC 19
PACKAGES_TO_INSTALL 2
PACKAGE_ARCHS 10
PACKAGE_ARCH_ 9
PACKAGE_DEPENDS 2
PACKAGE_INSTALL 4
PACKAGE_INSTALL_ATTEMPTONLY 4
PACKAGE_NO_GCONV 1
PACKAGE_NO_LOCALE 1
PACKAGE_PREPROCESS_FUNCS 4
PAM 1
PARALELL_MAKE_ 1
PARALLEL_MAKE_ 1
PASS 1
PASTHRU_INC 1
PATA 1
PATA_FSL 1
PATCHCLEANCMD 1
PATCHCMD 1
PATCHDEPENDENCY 1
PATCHING 1
PATCHRESOLVE 1
PATCHTOOL 2
PATCH_DEPENDS 1
PATHFIXPATCH 1
PATHFIXPATCH_ 1
PATH_ 2
PAUSE 1
PCI_CONF_FLAG 1
PCMCIA_MANAGER 1 Specify which package(s) to install to handle PCMCIA slots (usually pcmcia-cs or pcmciautils).
PCRE 1
PD 3
PDT 1
PERL 1
PERLCONFIGTARGET 1
PERLHOSTLIB 1
PERLLIBDIRS 2
PERL_ARCHLIB 1
PERL_INC 1
PERL_LIB 1
PF 3 Package name - Package version - Package revision (PN-PV-PR)
PG 4
PIC 3
PID 4
PIE 1
PIPE 2
PKG 6
PKGD 7
PKGDATA_DIR 4
PKGDEST 8
PKGDESTWORK 1
PKGFN 4
PKGHIST_DIR 2
PKGWRITEDIRDEB 1
PKGWRITEDIRIPK 1
PKGWRITEDIRRPM 1
PKG_ 12
PKG_CONFIG 1
PKG_CONFIG_DIR 3
PKG_CONFIG_PATH 3
PKG_CONFIG_SYSROOT_DIR 5
PKG_DISTRIBUTECOMMAND 1
PKG_DISTRIBUTEDIR 1
PKG_DIST_LOCAL 1
PNG 1
POKY 1
POKY_BASE_INSTALL 4
POKY_CONF_VERSION 1
POKY_DISTRO_VERSION 1
POKY_NATIVE_SYSROOT 1
POKY_TARGET_SYSROOT 1
POSIX 3
POST 1
POSTIN 1
POSTINPROG 1
POTFILES 1
PRC 1
PREBUILT_CPUCFG 1
PREFERRED_PROVIDER_ 1
PREFIX 12
PREMIRRORS 1
PREMIRRORS_ 1
PREPROCESS_RELOCATE_DIRS 1
PRINC 1
PRINT 1
PRINTING 1
PRIORITY 73 Importance of package, default values are 'optional' or 'needed'.
PRIVATE_LIBS 1
PROFILES 1
PROMPT 1
PROTO_DEPS 7
PROVIDES 50 Names for additional build time dependencies that this package will provide. @group dependencies
PROVIDES_ 5
PRV 1
PR_ 1
PS 1
PSEUDO_RELOADED 1
PSF 1
PST 1
PSTAGING_ACTIVE 1
PSTAGING_DISABLED 1
PVM 1
PWD 2
PXA 2
PYTHONPATH 1
PYTHON_BASEVERSION 1
PYTHON_DIR 3
PYTHON_MAJMIN 1
QA 1
QA_LOGFILE 1
QEMUARCH 1
QEMUIMAGETESTS 1
QEMUTARGET 1
QEMU_OPTIONS 1
QEMU_OPTIONS_ 1
QMAKESPEC 2
QMAKE_MKSPEC_PATH 1
QMAKE_PROFILES 1
QMAKE_VARSUBST_POST 1
QMAKE_VARSUBST_PRE 1
QPL 1
QTDEMOS 1
QTDEMOS_ 1
QT_CONFIG_FLAGS 1
QUILTRCFILE 1
QUILT_PATCHES 1
RADIUS 1
RAID 1
RANLIB 2
RCONFLICTS_ 6
REAL_DAEMON_DIR 1
RECIPE_COMMENTS 1
RECIPE_INTEL_SECTION 1
RECIPE_LATEST_RELEASE_DATE 1
RECIPE_LATEST_VERSION 1
RECIPE_MAINTAINER 1
RECIPE_NO_UPDATE_REASON 1
RECIPE_STATUS 1
RECIPE_TIME_BETWEEN_LAST_TWO_RELEASES 1
RECOMMENDS 1
RELEASE 1
REPORTSTAMP 1
RFC 2
RMWORK_ORIG_TASK 1
ROC 1
ROK 1
ROM 1
ROOT 7
ROOTFS 8
ROOTFSBLOCKS 1
ROOTFS_PKGMANAGE 5
ROOTFS_PKGMANAGE_BOOTSTRAP 3
ROOTFS_POSTINSTALL_COMMAND 2
ROOTFS_POSTPROCESS_COMMAND 7
ROOTFS_SIZE 1
ROOT_ 5
RPATH 2
RPC 2
RPMBUILD 2
RPMBUILDPATH 1
RPMDEPS 1
RPMOPTS 1
RPM_POSTPROCESS_COMMANDS 1
RPM_PREPROCESS_COMMANDS 1
RPROVIDES 9 Names for additional run time dependencies that this package will provide. This is used to populate the ipkg:Provides field. @group dependencies
RPROVIDES_ 17
RPSRC 3
RRECOMMENDS_ 21
RREPLACES_ 4
RSUGGESTS 4
RSZ 1
RTC 1
RUNNING 1
RUNTIME 1
RUNTIME_ 3
RUNTIME_PREFIX 1
RX 2
R_OK 8
SA 1
SANITY_ABIFILE 1
SATA 1
SATO_IMAGE_FEATURES 4
SCCS 1
SCENEFUNCS 2
SCHEMA 1
SCHEMA_FILES 1
SCHEMA_LOCATION 1
SCONF_VERSION 1
SCRIPT 1
SCSI 1
SD 2
SDC 1
SDI 1
SDIO 1
SDKMACHINE 2
SDKPATH 3
SDKPATHNATIVE 6
SDKTARGETSYSROOT 2
SDK_ARCH 8
SDK_CC_ARCH 3
SDK_DEPLOY 2
SDK_DIR 2
SDK_NAME 2
SDK_OS 4
SDK_OUTPUT 3
SDK_PREFIX 3
SDK_VENDOR 3
SDL 1
SDMA 1
SDP 1
SECTION_ 1
SEL 1
SEVERITY 1
SGX 1
SH 1
SHA 1
SHARED 1
SHAREDIR 1
SHELL 1
SHLIBSDIR 3
SHLIBSWORKDIR 1
SIGNATURE 1
SIGPIPE 1
SIG_DFL 1
SIM 2
SIPTAGS 1
SIP_FEATURES 1
SIP_MODULES 1
SITE 1
SITECONFIG_SYSROOTCACHE 2
SITE_CONF_VERSION 1
SIZE 2
SKIP 1
SKIPPING 1
SM 1
SMTP 1
SOLIBS 8
SOLIBSDEV 5
SONAME 2
SOURCEFORGE_MIRROR 37
SOURCES 2
SOURCE_MIRROR_FETCH 1 Switch marking build as source fetcher. Used to skip COMPATIBLE_* checking.
SPECFILE 1
SPECS 1
SPI 1
SPLASH 1
SRC 3
SRCDATE_ 2
SRCNAME 5
SRCPV 40
SRCREV_ 1
SRCREV_FORMAT 2
SRC_DISTRIBUTECOMMAND 2
SRC_DISTRIBUTEDIR 2
SRC_DIST_LOCAL 1
SRC_URI_ 43
SREC_CMD 1
SREC_SKIP 1
SREC_VMAADDR 1
SRPMFILE 1
SSDP 1
SSTATETASKS 7
SSTATE_BUILDDIR 1
SSTATE_DIR 1
SSTATE_INSTDIR 1
SSTATE_MANFILEBASE 1
SSTATE_MANFILEPREFIX 1
SSTATE_MANIFESTS 1
SSTATE_MIRRORS 1
SSTATE_PKG 1
SSTATE_PKGARCH 1
SSTATE_PKGNAME 1
SSTATE_SCAN_CMD 1
SSTATE_VERSION 1
STAGE_TEMP 1
STAGING_BINDIR 3
STAGING_BINDIR_CROSS 11
STAGING_BINDIR_NATIVE 13
STAGING_BINDIR_TOOLCHAIN 2
STAGING_DATADIR 16
STAGING_DATADIR_NATIVE 3
STAGING_DIR 13
STAGING_DIR_HOST 18
STAGING_DIR_NATIVE 19
STAGING_DIR_TARGET 18
STAGING_ETCDIR_NATIVE 3
STAGING_EXECPREFIXDIR 1
STAGING_INCDIR 39
STAGING_INCDIR_NATIVE 6
STAGING_LIBDIR 42
STAGING_LIBDIR_NATIVE 9
STAGING_SIPDIR 1
STAMP 3 The directory that holds files to keep track of what was built.
STARTING 1
STOP 2
STRING 1
STRIP 5
STRIPPROG 1
STYLE 1
ST_MODE 3
SU 1
SUBDIR 2
SUBDIRS 1
SUCC 1
SUCCESS 1
SUPPORTED 2
SVG 1
SVGA 1
SVNREV 1
SWABBER_LOGS 1
SWABBER_REPORT 1
SWAB_ORIG_TASK 1
SWLINUX 1
SYSLINUXCFG 3
SYSLINUXMENU 3
SYSLINUX_OPTS 1
SYSLINUX_TIMEOUT 1
SYSROOT_DESTDIR 12
SYSROOT_LOCK 1
SYSROOT_PREPROCESS_FUNCS 8
SYSTEMHEADERS 2
SYSTEMLIBS 2
SYSV 1
SYSVINIT_ENABLED_GETTYS 1 Specify which VTs should be running a getty, the default is 1
SYS_INCLUDES 1
S_IEXEC 2
S_IREAD 1
S_IRWXU 1
S_ISDIR 1
S_ISLNK 1
S_ISREG 1
S_IWRITE 1
TABLES 1
TARGET 2
TARGETARCH 1
TARGETFPU 1
TARGETOS 1
TARGET_AR_KERNEL_ARCH 1
TARGET_CC_ARCH 5 FIXME
TARGET_CC_ARCH_ 1
TARGET_CC_KERNEL_ARCH 2
TARGET_CPPFLAGS 3
TARGET_LDFLAGS 1
TARGET_LD_KERNEL_ARCH 2
TARGET_OS_ORIG 1
TARGET_PREFIX 23 The prefix for the cross compile toolchain. E.g arm-linux- .
TARGET_SYS 19 The target system is composed out of TARGET_ARCH,TARGET_VENDOR and TARGET_OS.
TARGET_VENDOR 7 FIXME
TEMPLATE 2
TERMWINDOWTITLE 2
TEST_DIR 1
TEST_LOG 1
TEST_RESULT 1
TEST_SCEN 1
TEST_TMP 1
TIFF 1
TIMEOUT 2
TINDERBOX 1
TINDER_AUTOBUILD 1
TINDER_BRANCH 1
TINDER_CLOBBER 1
TINDER_HOST 1
TINDER_LOG 1
TINDER_MACHINE 1
TINDER_REPORT 1
TINDER_TREE 1
TINDER_URL 1
TKSRC 2
TLI 1
TMAKEPATH 1
TMAKE_CONFIG 1
TMAKE_DEPENDPATH 1
TMAKE_DESTDIR 1
TMAKE_HEADERS 1
TMAKE_INCLUDEPATH 1
TMAKE_INTERFACES 1
TMAKE_LIBS 1
TMAKE_PROFILES 1
TMAKE_SOURCES 1
TMAKE_TARGET 1
TMAKE_TEMPLATE 1
TMIO 2
TMP 1
TMP_LOCALE 1
TO 1
TOBUILD 1
TODO 1
TOOLCHAIN_HOST_TASK 2
TOOLCHAIN_OPTIONS 3
TOOLCHAIN_OUTPUTNAME 3
TOOLCHAIN_TARGET_SDKTASK 1
TOOLCHAIN_TARGET_TASK 2
TOP 2
TOPDIR 3
TOTALSIZE 1
TRACE_LOGDIR 1
TRACE_LOGFILE 1
TTF 1
TWL 2
TX 1
TXCSR 1
TXDMA 1
TXT 3
TZ 1
TZONES 1
UBOOT_ARCH 1
UBOOT_ENTRYPOINT 1
UBOOT_LOADADDRESS 1
UBOOT_MACHINE_ 1
UCLIBC_BASE 1
UCS 1
UCT 1
UDC 2
UDEV_EXTRAS 1
UE 1
UMASK 1
UNDEFINED 1
UNIX 3
UP 2
UPDATE 1
URB 1
URI 2
US 2
USAGE 1
USBCV 1
USBH 1
USERPTR 1
USE_DEVFS 1
USE_NLS 2
USE_NLS_ 1
USE_VT 1
UST 1
UTC 2
VERSION 3
VFS 1
VIDIOC_QUERYMENU 1
VIRTUAL 3
VIRTUAL_NAME 2
VIRTUAL_NAME_ 1
VM 1
VMW 1
VNC 1
VOLTAGE_ 2
VPATH 1
VPU 1
VP_CLK_RATIO 1
VR 1
VRAM 1
VRFB 1
VSYSLOG 1
VUSB 1
WARNING 2
WEB 1
WEB_ 1
WET 1
WHITELIST_ 1
WITH_ENCA 1
WM 2
W_OK 2
XAUTHORITY 1
XC 1
XCB 1
XCFLAGS 1
XDG 1
XF 3
XFCE_VERSION 1
XI 1
XIG 1
XINC 1
XIP 1
XK 1
XKB 1
XLDFLAGS 2
XLIB 1
XLIBS_CVS 1
XML 3
XORG_MIRROR 1
XORG_PN 33
XSERVER 1
XSETTINGS 1
XSLT 1
XSUB 1
XT 2
XT_CFLAGS 1
XV 1
X_OK 1
YES 1
YUV 1
ZAURUS_UPDATER_VERSION 1
ZIP 1
ZLIB 2
ZY 2
_A 2
_ARM 1
_BCM 1
_BD 2
_C 1
_CID_AUTO_WHITE_BALAN 1
_CONFIG 2
_CONSOLE_SERIAL_PORT 1
_CR 1
_DATA 1
_ER 2
_ET 2
_HEADERS 2
_IMAGE_FEATURES 2
_IN 2
_K 1
_L 1
_LIST 1
_LTLIBRARIES 1
_M 1
_MANS 1
_MN 2
_MTN 1
_O 3
_OLPC 1
_ONLY 1
_OPT 1
_P 1
_PROG_INTLTOOL 1
_SCRIPTS 1
_SENDMAIL 1
_T 1
_TEXINFOS 1
_TIMEOUT 1
_TIMER 1
_TO 1
_TR 2
_USE_SYSTEM_EXTENSIONS 1
_WAP_ 1
_WHITELIST_ 1
_WPASUPPLICANT 1
_Y 1
__ 26
__RUNQUEUE_DO_NOT_USE_EXTERNALLY 1
--
Darren Hart
Yocto Linux Kernel
[-- Attachment #2: bbvars.py --]
[-- Type: text/x-python, Size: 5818 bytes --]
#!/usr/bin/env python
# This program 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 2 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, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
#
# Copyright (C) Darren Hart <dvhart@linux.intel.com>, 2010
import sys
import getopt
import os
import os.path
import re
def usage():
print 'Usage: %s -d FILENAME [-d FILENAME]* -m METADIR [-m MATADIR]*' % os.path.basename(sys.argv[0])
print ' -d FILENAME documentation file to search'
print ' -h, --help display this help and exit'
print ' -m METADIR meta directory to search for recipes'
print ' -t FILENAME documentation config file (for doc tags)'
print ' -T Only display variables with doc tags (requires -t)'
def recipe_bbvars(recipe):
''' Return a unique set of every bbvar encountered in the recipe '''
prog = re.compile("[A-Z_]+")
vset = set()
try:
r = open(recipe)
except IOError as (errno, strerror):
print 'WARNING: Failed to open recipe ', recipe
print strerror
for line in r:
# Strip any comments from the line
line = line.rsplit('#')[0]
vset = vset.union(set(prog.findall(line)))
r.close()
bbvars = {}
for v in vset:
bbvars[v] = 1
return bbvars
def collect_bbvars(metadir):
''' Walk the metadir and collect the bbvars from each recipe found '''
bbvars = {}
for root,dirs,files in os.walk(metadir):
for name in files:
if name.find(".bb") >= 0:
for key in recipe_bbvars(os.path.join(root,name)).iterkeys():
if bbvars.has_key(key):
bbvars[key] = bbvars[key] + 1
else:
bbvars[key] = 1
return bbvars
def bbvar_is_documented(var, docfiles):
prog = re.compile(".*($|[^A-Z_])%s([^A-Z_]|$)" % (var))
for doc in docfiles:
try:
f = open(doc)
except IOError as (errno, strerror):
print 'WARNING: Failed to open doc ', doc
print strerror
for line in f:
if prog.match(line):
return True
f.close()
return False
def bbvar_doctag(var, docconf):
prog = re.compile('^%s\[doc\] *= *"(.*)"' % (var))
if docconf == "":
return "?"
try:
f = open(docconf)
except IOError as (errno, strerror):
return strerror
for line in f:
m = prog.search(line)
if m:
return m.group(1)
f.close()
return ""
def main():
docfiles = []
metadirs = []
bbvars = {}
undocumented = []
docconf = ""
onlydoctags = False
# Collect and validate input
try:
opts, args = getopt.getopt(sys.argv[1:], "d:hm:t:T", ["help"])
except getopt.GetoptError, err:
print '%s' % str(err)
usage()
sys.exit(2)
for o, a in opts:
if o in ('-h', '--help'):
usage()
sys.exit(0)
elif o == '-d':
if os.path.isfile(a):
docfiles.append(a)
else:
print 'ERROR: documentation file %s is not a regular file' % (a)
sys.exit(3)
elif o == '-m':
if os.path.isdir(a):
metadirs.append(a)
else:
print 'ERROR: meta directory %s is not a directory' % (a)
sys.exit(4)
elif o == "-t":
if os.path.isfile(a):
docconf = a
elif o == "-T":
onlydoctags = True
else:
assert False, "unhandled option"
if len(docfiles) == 0:
print 'ERROR: no docfile specified'
usage()
sys.exit(5)
if len(metadirs) == 0:
print 'ERROR: no metadir specified'
usage()
sys.exit(6)
if onlydoctags and docconf == "":
print 'ERROR: no docconf specified'
usage()
sys.exit(7)
# Collect all the variable names from the recipes in the metadirs
for m in metadirs:
for key,cnt in collect_bbvars(m).iteritems():
if bbvars.has_key(key):
bbvars[key] = bbvars[key] + cnt
else:
bbvars[key] = cnt
# Check each var for documentation
varlen = 0
for v in bbvars.iterkeys():
if len(v) > varlen:
varlen = len(v)
if not bbvar_is_documented(v, docfiles):
undocumented.append(v)
undocumented.sort()
varlen = varlen + 1
# Report all undocumented variables
print 'Found %d undocumented bb variables (out of %d):' % (len(undocumented), len(bbvars))
header = '%s%s%s' % (str("VARIABLE").ljust(varlen), str("COUNT").ljust(6), str("DOCTAG").ljust(7))
print header
print str("").ljust(len(header), '=')
for v in undocumented:
doctag = bbvar_doctag(v, docconf)
if not onlydoctags or not doctag == "":
print '%s%s%s' % (v.ljust(varlen), str(bbvars[v]).ljust(6), doctag)
if __name__ == "__main__":
main()
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: RFC: Undocumented Recipe Variables Script
2010-12-08 1:27 ` Darren Hart
@ 2010-12-09 13:53 ` Richard Purdie
2010-12-10 19:10 ` Darren Hart
0 siblings, 1 reply; 6+ messages in thread
From: Richard Purdie @ 2010-12-09 13:53 UTC (permalink / raw)
To: Darren Hart; +Cc: poky@yoctoproject.org
On Tue, 2010-12-07 at 17:27 -0800, Darren Hart wrote:
> After discussing a bit with Richard, we felt seeing a count for each
> recipe that used a variable along with the doc tag (documentation.conf)
> would aid in identifying which variables needed documentation. The
> attached script accomplishes this. The -T argument will limit output to
> only variables with doc tags - which should make updating the
> documentation rather trivial.
>
> Things like PROVIDES with 50 occurences under meta and an existing doc
> tag should be prioritized for documentation updates. After that, things
> like BBCLASSEXTEND with 117 users and no doc-tag should follow.
>
> Richard, could you give the output a scan and let me know if there is
> additional filtering I could add to make the results easier to digest?
> If they look good to you, can you have a go at identifying a set of
> variables that should get documentation updates?
Some of whats listed is still documented, e.g. PACKAGES_ or RDEPENDS_.
I've done a *very* rough filter over this to highlight the ones I think
we need to try and document first and some other things I noticed:
We should check if these are in the bitbake manual:
BB_CURRENTTASK 1
BB_DEFAULT_TASK 4
BB_HASHCHECK_FUNCTION 1
BB_HASHFILENAME 1
BB_MIN_VERSION 1
BB_RUNTASK 1
BB_SCHEDULER 1
BB_TASKHASH 1
BB_VERSION 1
BB_WORKERCONTEXT 1
I'd like to know what is setting this as we shouldn't using BROKEN IMO:
BROKEN 1
Some subset of these should be documented:
SSTATE_BUILDDIR 1
SSTATE_DIR 1
SSTATE_INSTDIR 1
SSTATE_MANFILEBASE 1
SSTATE_MANFILEPREFIX 1
SSTATE_MANIFESTS 1
SSTATE_MIRRORS 1
SSTATE_PKG 1
SSTATE_PKGARCH 1
SSTATE_PKGNAME 1
SSTATE_SCAN_CMD 1
SSTATE_VERSION 1
Something is broken here with a misspelling:
DESCRIPTON 6
PARALELL_MAKE_ 1
These variables are dead iirc and shouldn't be referenced anywhere:
NATIVE_INSTALL_WORKS 1
PSTAGING_ACTIVE 1
PSTAGING_DISABLED 1
I also wondered about these:
LIC_CHKSUM_FILES 2
LIC_FILE_CHKSUM 1
these are ones I'd like to see documented with a higher priority:
ALLOW_EMPTY 24
ALTERNATIVE_LINKS 4
APPEND 2
BBCLASSEXTEND 117
BUGTRACKER 114
BUILD_AR 1
BUILD_ARCH 4 The name of the building architecture. E.g. i686.
BUILD_CC 11
BUILD_CC_ARCH 2 FIXME
BUILD_CFLAGS 7
BUILD_CXX 3
BUILD_CXXFLAGS 3
BUILD_LD 1
BUILD_LDFLAGS 5
BUILD_OS 3
BUILD_PREFIX 4 FIXME
BUILD_RANLIB 1
BUILD_SYS 13 FIXME
BUILD_VENDOR 2 FIXME
CCACHE 6
CFLAGS_ 10
CLEANFUNCS 2
CMDLINE_ 1
CMDLINE_CONSOLE 1
COMMERCIAL_AUDIO_PLUGINS 2
COMMERCIAL_LICENSE 1
COMMERCIAL_QT 1
COMMERCIAL_VIDEO_PLUGINS 1
COMPATIBLE_HOST 17 A regular expression which matches the HOST_SYS names supported by the package/file. Failure to match will cause the file to be skipped by the parser.
CONFFILES 3
CPPFLAGS 13
CXXFLAGS 14
DEBIANNAME_ 2
DEBIAN_NAMES 6
DEBIAN_NOAUTONAME_ 3
DEFAULT_PREFERENCE_ 14
DEPLOY_DIR 7
DEPLOY_DIR_DEB 2
DEPLOY_DIR_IMAGE 13
DEPLOY_DIR_IPK 3
DEPLOY_DIR_RPM 2
DEPLOY_DIR_SRC 1
DEPLOY_DIR_TAR 1
DEPLOY_KEEP_PACKAGES 2
DESCRIPTION_ 8
EXCLUDE_FROM_SHLIBS 1
EXCLUDE_FROM_WORLD 10
EXPORT_FUNCTIONS 24
EXTRA_AUTORECONF 4
EXTRA_CFLAGS 1
EXTRA_CPANFLAGS 2
EXTRA_DIST 3
EXTRA_IMAGEDEPENDS 1
EXTRA_NATIVE_PKGCONFIG_PATH 1
EXTRA_OECONF_ 12
EXTRA_OEMAKE_ 2
EXTRA_OEMAKE_NETGROUP 1
EXTRA_QMAKEVARS_POST 1
EXTRA_QMAKEVARS_PRE 1
EXTRA_RDEPENDS 1
FAKEROOT 4
FAKEROOTENV 1
FILESDIR 11
FILESEXTRAPATHS 1
FILESPATH 10
FILESPATHBASE 1
FILESPATHPKG 2
FILES_ 179
FILE_DIRNAME 11
FULL_OPTIMIZATION_ 2
GIT_CONFIG 1
GIT_CORE_CONFIG 1
GIT_PROXY_COMMAND 1
GIT_PROXY_IGNORE 1
HOST_AR 1
HOST_ARCH 9 The name of the target architecture. Normally same as the TARGET_ARCH. @see TARGET_ARCH @group base
HOST_AR_KERNEL_ARCH 1
HOST_CC 1
HOST_CC_ARCH 5 Normally same as the TARGET_CC_ARCH. @see TARGET_CC_ARCH @group base
HOST_CC_KERNEL_ARCH 2
HOST_CFLAGS 1
HOST_CXX 1
HOST_CXXFLAGS 1
HOST_LDFLAGS 1
HOST_OS 7
HOST_PREFIX 10 Normally same as the TARGET_PREFIX. @see TARGET_PREFIX @group base
HOST_RANLIB 1
HOST_SYS 21 FIXME
HOST_VENDOR 6 The name of the vendor. Normally same as the TARGET_VENDOR. @see TARGET_VENDOR
IMAGEROOTFS 2
IMAGETEST 1
IMAGE_BASENAME 2
IMAGE_CMD_ 1
IMAGE_DEPENDS_ 1
IMAGE_DEVICE_TABLE 1
IMAGE_DEVICE_TABLES 1
IMAGE_LINGUAS 3
IMAGE_LINK_NAME 3
IMAGE_LOCALES 2
IMAGE_NAME 5
IMAGE_OVERHEAD_FACTOR 1
IMAGE_PKGTYPE 5
IMAGE_POSTPROCESS_COMMAND 1
IMAGE_PREPROCESS_COMMAND 2
IMAGE_ROOTFS 12
IMAGE_ROOTFS_SIZE 1
INHIBIT_AUTOTOOLS_DEPS 2
INHIBIT_AUTO_STAGE 1
INHIBIT_DEFAULT_DEPS 13
KERNELDIR 1
KERNEL_ALT_IMAGETYPE 1
KERNEL_CC 5
KERNEL_FEATURES 1
KERNEL_IMAGE_BASE_NAME 2
KERNEL_IMAGE_MAXSIZE 1
KERNEL_IMAGE_SYMLINK_NAME 2
KERNEL_LD 4
KERNEL_VERSION 6
KMACHINE 1
LAYER_CONF_VERSION 1
LCONF_VERSION 1
LDFLAGS 32
LDFLAGS_ 2
LEAD_SONAME 12
LICENCE 5
LINGUAS_INSTALL 4
LOG_DIR 3
MACHINE_ARCH 27
MACHINE_ESSENTIAL_EXTRA_RDEPENDS 2
MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS 2
MACHINE_POSTPROCESS_COMMAND 1
MIRRORS 1
MULTIMACH_ARCH 3
MULTIMACH_HOST_SYS 2
MULTIMACH_TARGET_SYS 5
OBJCOPY 2
OBJDUMP 2
OVERRIDES 13
PACKAGES_ 6
PACKAGES_DYNAMIC 19
PACKAGE_ARCHS 10
PACKAGE_INSTALL 4
PACKAGE_INSTALL_ATTEMPTONLY 4
PACKAGE_PREPROCESS_FUNCS 4
PARALLEL_MAKE_ 1
PATCHRESOLVE 1
PATH_ 2
PF 3 Package name - Package version - Package revision (PN-PV-PR)
PKG 6
PKGD 7
PKGDATA_DIR 4
PKGDEST 8
PKGDESTWORK 1
PKGFN 4
PKGHIST_DIR 2
PKG_ 12
PKG_CONFIG 1
PKG_CONFIG_DIR 3
PKG_CONFIG_PATH 3
PKG_CONFIG_SYSROOT_DIR 5
PREFERRED_PROVIDER_ 1
PRIORITY 73 Importance of package, default values are 'optional' or 'needed'.
PROVIDES 50 Names for additional build time dependencies that this package will provide. @group dependencies
QA_LOGFILE 1
ROOTFS_PKGMANAGE 5
ROOTFS_PKGMANAGE_BOOTSTRAP 3
ROOTFS_POSTINSTALL_COMMAND 2
ROOTFS_POSTPROCESS_COMMAND 7
RPM_POSTPROCESS_COMMANDS 1
RPM_PREPROCESS_COMMANDS 1
RPROVIDES 9 Names for additional run time dependencies that this package will provide. This is used to populate the ipkg:Provides field. @group dependencies
RRECOMMENDS_ 21
RREPLACES_ 4
RSUGGESTS 4
SDKMACHINE 2
SDK_ARCH 8
SDK_CC_ARCH 3
SDK_DEPLOY 2
SDK_DIR 2
SDK_NAME 2
SDK_OS 4
SDK_OUTPUT 3
SDK_PREFIX 3
SDK_VENDOR 3
SRCREV_ 1
SRCREV_FORMAT 2
SRC_URI_ 43
STAGING_BINDIR 3
STAGING_BINDIR_CROSS 11
STAGING_BINDIR_NATIVE 13
STAGING_BINDIR_TOOLCHAIN 2
STAGING_DATADIR 16
STAGING_DATADIR_NATIVE 3
STAGING_DIR 13
STAGING_DIR_HOST 18
STAGING_DIR_NATIVE 19
STAGING_DIR_TARGET 18
STAGING_ETCDIR_NATIVE 3
STAGING_EXECPREFIXDIR 1
STAGING_INCDIR 39
STAGING_INCDIR_NATIVE 6
STAGING_LIBDIR 42
STAGING_LIBDIR_NATIVE 9
STAMP 3 The directory that holds files to keep track of what was built.
SYSROOT_DESTDIR 12
TARGETARCH 1
TARGETFPU 1
TARGETOS 1
TARGET_AR_KERNEL_ARCH 1
TARGET_CC_ARCH 5 FIXME
TARGET_CC_ARCH_ 1
TARGET_CC_KERNEL_ARCH 2
TARGET_CPPFLAGS 3
TARGET_LDFLAGS 1
TARGET_LD_KERNEL_ARCH 2
TARGET_PREFIX 23 The prefix for the cross compile toolchain. E.g arm-linux- .
TARGET_SYS 19 The target system is composed out of TARGET_ARCH,TARGET_VENDOR and TARGET_OS.
TARGET_VENDOR 7 FIXME
TOPDIR 3
XORG_PN 33
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: RFC: Undocumented Recipe Variables Script
2010-12-09 13:53 ` Richard Purdie
@ 2010-12-10 19:10 ` Darren Hart
0 siblings, 0 replies; 6+ messages in thread
From: Darren Hart @ 2010-12-10 19:10 UTC (permalink / raw)
To: Richard Purdie; +Cc: poky@yoctoproject.org
On 12/09/2010 05:53 AM, Richard Purdie wrote:
> On Tue, 2010-12-07 at 17:27 -0800, Darren Hart wrote:
>> After discussing a bit with Richard, we felt seeing a count for each
>> recipe that used a variable along with the doc tag (documentation.conf)
>> would aid in identifying which variables needed documentation. The
>> attached script accomplishes this. The -T argument will limit output to
>> only variables with doc tags - which should make updating the
>> documentation rather trivial.
>>
>> Things like PROVIDES with 50 occurences under meta and an existing doc
>> tag should be prioritized for documentation updates. After that, things
>> like BBCLASSEXTEND with 117 users and no doc-tag should follow.
>>
>> Richard, could you give the output a scan and let me know if there is
>> additional filtering I could add to make the results easier to digest?
>> If they look good to you, can you have a go at identifying a set of
>> variables that should get documentation updates?
>
> Some of whats listed is still documented, e.g. PACKAGES_ or RDEPENDS_.
The trailing _ probably indicates something like PACKAGES_append or
similar, where the character after the _ was not [A-Z_]. I should
probably drop those or allow for [a-z] as well.
> I've done a *very* rough filter over this to highlight the ones I think
> we need to try and document first and some other things I noticed:
>
> We should check if these are in the bitbake manual:
>
> BB_CURRENTTASK 1
> BB_DEFAULT_TASK 4
> BB_HASHCHECK_FUNCTION 1
> BB_HASHFILENAME 1
> BB_MIN_VERSION 1
> BB_RUNTASK 1
> BB_SCHEDULER 1
> BB_TASKHASH 1
> BB_VERSION 1
> BB_WORKERCONTEXT 1
None of the above appear in bitbake/doc/manual/usermanual.xml, but I will
include this file as a -d doc in future runs of the script.
>
> I'd like to know what is setting this as we shouldn't using BROKEN IMO:
> BROKEN 1
meta/recipes-multimedia/alsa/alsa-tools_1.0.20.bb:BROKEN
> Some subset of these should be documented:
> SSTATE_BUILDDIR 1
> SSTATE_DIR 1
> SSTATE_INSTDIR 1
> SSTATE_MANFILEBASE 1
> SSTATE_MANFILEPREFIX 1
> SSTATE_MANIFESTS 1
> SSTATE_MIRRORS 1
> SSTATE_PKG 1
> SSTATE_PKGARCH 1
> SSTATE_PKGNAME 1
> SSTATE_SCAN_CMD 1
> SSTATE_VERSION 1
>
> Something is broken here with a misspelling:
> DESCRIPTON 6
> PARALELL_MAKE_ 1
Patches forthcoming.
>
> These variables are dead iirc and shouldn't be referenced anywhere:
> NATIVE_INSTALL_WORKS 1
> PSTAGING_ACTIVE 1
> PSTAGING_DISABLED 1
Opened BUG http://bugzilla.pokylinux.org/show_bug.cgi?id=582
(And looks like I need to include .inc files in my recipes list too)
> I also wondered about these:
> LIC_CHKSUM_FILES 2
> LIC_FILE_CHKSUM 1
Patches forthcoming
> these are ones I'd like to see documented with a higher priority:
Great, thanks for the review Richard.
Scott, how do you want these tracked? Perhaps you could create a handful of
bugs, one for each block of variables. High use count, already with doc
tags,
BUILD_*, IMAGE_*... something along those lines?
>
> ALLOW_EMPTY 24
> ALTERNATIVE_LINKS 4
> APPEND 2
> BBCLASSEXTEND 117
> BUGTRACKER 114
> BUILD_AR 1
> BUILD_ARCH 4 The name of the building
architecture. E.g. i686.
> BUILD_CC 11
> BUILD_CC_ARCH 2 FIXME
> BUILD_CFLAGS 7
> BUILD_CXX 3
> BUILD_CXXFLAGS 3
> BUILD_LD 1
> BUILD_LDFLAGS 5
> BUILD_OS 3
> BUILD_PREFIX 4 FIXME
> BUILD_RANLIB 1
> BUILD_SYS 13 FIXME
> BUILD_VENDOR 2 FIXME
> CCACHE 6
> CFLAGS_ 10
> CLEANFUNCS 2
> CMDLINE_ 1
> CMDLINE_CONSOLE 1
> COMMERCIAL_AUDIO_PLUGINS 2
> COMMERCIAL_LICENSE 1
> COMMERCIAL_QT 1
> COMMERCIAL_VIDEO_PLUGINS 1
> COMPATIBLE_HOST 17 A regular expression
which matches the HOST_SYS names supported by the package/file. Failure
to match will cause the file to be skipped by the parser.
> CONFFILES 3
> CPPFLAGS 13
> CXXFLAGS 14
> DEBIANNAME_ 2
> DEBIAN_NAMES 6
> DEBIAN_NOAUTONAME_ 3
> DEFAULT_PREFERENCE_ 14
> DEPLOY_DIR 7
> DEPLOY_DIR_DEB 2
> DEPLOY_DIR_IMAGE 13
> DEPLOY_DIR_IPK 3
> DEPLOY_DIR_RPM 2
> DEPLOY_DIR_SRC 1
> DEPLOY_DIR_TAR 1
> DEPLOY_KEEP_PACKAGES 2
> DESCRIPTION_ 8
> EXCLUDE_FROM_SHLIBS 1
> EXCLUDE_FROM_WORLD 10
> EXPORT_FUNCTIONS 24
> EXTRA_AUTORECONF 4
> EXTRA_CFLAGS 1
> EXTRA_CPANFLAGS 2
> EXTRA_DIST 3
> EXTRA_IMAGEDEPENDS 1
> EXTRA_NATIVE_PKGCONFIG_PATH 1
> EXTRA_OECONF_ 12
> EXTRA_OEMAKE_ 2
> EXTRA_OEMAKE_NETGROUP 1
> EXTRA_QMAKEVARS_POST 1
> EXTRA_QMAKEVARS_PRE 1
> EXTRA_RDEPENDS 1
> FAKEROOT 4
> FAKEROOTENV 1
> FILESDIR 11
> FILESEXTRAPATHS 1
> FILESPATH 10
> FILESPATHBASE 1
> FILESPATHPKG 2
> FILES_ 179
> FILE_DIRNAME 11
> FULL_OPTIMIZATION_ 2
> GIT_CONFIG 1
> GIT_CORE_CONFIG 1
> GIT_PROXY_COMMAND 1
> GIT_PROXY_IGNORE 1
> HOST_AR 1
> HOST_ARCH 9 The name of the target
architecture. Normally same as the TARGET_ARCH. @see TARGET_ARCH @group base
> HOST_AR_KERNEL_ARCH 1
> HOST_CC 1
> HOST_CC_ARCH 5 Normally same as the
TARGET_CC_ARCH. @see TARGET_CC_ARCH @group base
> HOST_CC_KERNEL_ARCH 2
> HOST_CFLAGS 1
> HOST_CXX 1
> HOST_CXXFLAGS 1
> HOST_LDFLAGS 1
> HOST_OS 7
> HOST_PREFIX 10 Normally same as the
TARGET_PREFIX. @see TARGET_PREFIX @group base
> HOST_RANLIB 1
> HOST_SYS 21 FIXME
> HOST_VENDOR 6 The name of the vendor.
Normally same as the TARGET_VENDOR. @see TARGET_VENDOR
> IMAGEROOTFS 2
> IMAGETEST 1
> IMAGE_BASENAME 2
> IMAGE_CMD_ 1
> IMAGE_DEPENDS_ 1
> IMAGE_DEVICE_TABLE 1
> IMAGE_DEVICE_TABLES 1
> IMAGE_LINGUAS 3
> IMAGE_LINK_NAME 3
> IMAGE_LOCALES 2
> IMAGE_NAME 5
> IMAGE_OVERHEAD_FACTOR 1
> IMAGE_PKGTYPE 5
> IMAGE_POSTPROCESS_COMMAND 1
> IMAGE_PREPROCESS_COMMAND 2
> IMAGE_ROOTFS 12
> IMAGE_ROOTFS_SIZE 1
> INHIBIT_AUTOTOOLS_DEPS 2
> INHIBIT_AUTO_STAGE 1
> INHIBIT_DEFAULT_DEPS 13
> KERNELDIR 1
> KERNEL_ALT_IMAGETYPE 1
> KERNEL_CC 5
> KERNEL_FEATURES 1
> KERNEL_IMAGE_BASE_NAME 2
> KERNEL_IMAGE_MAXSIZE 1
> KERNEL_IMAGE_SYMLINK_NAME 2
> KERNEL_LD 4
> KERNEL_VERSION 6
> KMACHINE 1
> LAYER_CONF_VERSION 1
> LCONF_VERSION 1
> LDFLAGS 32
> LDFLAGS_ 2
> LEAD_SONAME 12
> LICENCE 5
> LINGUAS_INSTALL 4
> LOG_DIR 3
> MACHINE_ARCH 27
> MACHINE_ESSENTIAL_EXTRA_RDEPENDS 2
> MACHINE_ESSENTIAL_EXTRA_RRECOMMENDS 2
> MACHINE_POSTPROCESS_COMMAND 1
> MIRRORS 1
> MULTIMACH_ARCH 3
> MULTIMACH_HOST_SYS 2
> MULTIMACH_TARGET_SYS 5
> OBJCOPY 2
> OBJDUMP 2
> OVERRIDES 13
> PACKAGES_ 6
> PACKAGES_DYNAMIC 19
> PACKAGE_ARCHS 10
> PACKAGE_INSTALL 4
> PACKAGE_INSTALL_ATTEMPTONLY 4
> PACKAGE_PREPROCESS_FUNCS 4
> PARALLEL_MAKE_ 1
> PATCHRESOLVE 1
> PATH_ 2
> PF 3 Package name - Package
version - Package revision (PN-PV-PR)
> PKG 6
> PKGD 7
> PKGDATA_DIR 4
> PKGDEST 8
> PKGDESTWORK 1
> PKGFN 4
> PKGHIST_DIR 2
> PKG_ 12
> PKG_CONFIG 1
> PKG_CONFIG_DIR 3
> PKG_CONFIG_PATH 3
> PKG_CONFIG_SYSROOT_DIR 5
> PREFERRED_PROVIDER_ 1
> PRIORITY 73 Importance of package,
default values are 'optional' or 'needed'.
> PROVIDES 50 Names for additional
build time dependencies that this package will provide. @group dependencies
> QA_LOGFILE 1
> ROOTFS_PKGMANAGE 5
> ROOTFS_PKGMANAGE_BOOTSTRAP 3
> ROOTFS_POSTINSTALL_COMMAND 2
> ROOTFS_POSTPROCESS_COMMAND 7
> RPM_POSTPROCESS_COMMANDS 1
> RPM_PREPROCESS_COMMANDS 1
> RPROVIDES 9 Names for additional run
time dependencies that this package will provide. This is used to
populate the ipkg:Provides field. @group dependencies
> RRECOMMENDS_ 21
> RREPLACES_ 4
> RSUGGESTS 4
> SDKMACHINE 2
> SDK_ARCH 8
> SDK_CC_ARCH 3
> SDK_DEPLOY 2
> SDK_DIR 2
> SDK_NAME 2
> SDK_OS 4
> SDK_OUTPUT 3
> SDK_PREFIX 3
> SDK_VENDOR 3
> SRCREV_ 1
> SRCREV_FORMAT 2
> SRC_URI_ 43
> STAGING_BINDIR 3
> STAGING_BINDIR_CROSS 11
> STAGING_BINDIR_NATIVE 13
> STAGING_BINDIR_TOOLCHAIN 2
> STAGING_DATADIR 16
> STAGING_DATADIR_NATIVE 3
> STAGING_DIR 13
> STAGING_DIR_HOST 18
> STAGING_DIR_NATIVE 19
> STAGING_DIR_TARGET 18
> STAGING_ETCDIR_NATIVE 3
> STAGING_EXECPREFIXDIR 1
> STAGING_INCDIR 39
> STAGING_INCDIR_NATIVE 6
> STAGING_LIBDIR 42
> STAGING_LIBDIR_NATIVE 9
> STAMP 3 The directory that holds
files to keep track of what was built.
> SYSROOT_DESTDIR 12
> TARGETARCH 1
> TARGETFPU 1
> TARGETOS 1
> TARGET_AR_KERNEL_ARCH 1
> TARGET_CC_ARCH 5 FIXME
> TARGET_CC_ARCH_ 1
> TARGET_CC_KERNEL_ARCH 2
> TARGET_CPPFLAGS 3
> TARGET_LDFLAGS 1
> TARGET_LD_KERNEL_ARCH 2
> TARGET_PREFIX 23 The prefix for the cross
compile toolchain. E.g arm-linux- .
> TARGET_SYS 19 The target system is
composed out of TARGET_ARCH,TARGET_VENDOR and TARGET_OS.
> TARGET_VENDOR 7 FIXME
> TOPDIR 3
> XORG_PN 33
>
>
>
>
>
--
Darren Hart
Yocto Linux Kernel
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2010-12-10 19:10 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-12-07 22:12 RFC: Undocumented Recipe Variables Script Darren Hart
2010-12-07 22:38 ` Richard Purdie
2010-12-07 22:57 ` Darren Hart
2010-12-08 1:27 ` Darren Hart
2010-12-09 13:53 ` Richard Purdie
2010-12-10 19:10 ` Darren Hart
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.