3 Copyright (C) 2022- Free Software Foundation, Inc.
5 Copying and distribution of this file, with or without modification,
6 are permitted in any medium without royalty provided the copyright
7 notice and this notice are preserved.
9 The following contributions warranted legal paper exchanges with the
10 Free Software Foundation.
13 This is the README file for distribution of build-srcpkg.
14 build-srcpkg include many script lib files, and some utility programs,
20 there are two part of build-srcpkg
22 @ build-pkg, for srcpkg compiling. it implement features as Makefile.
23 @ devutils, for srcpkg developping. to following with devspec in develop,
24 it helps developer do standard operation in devspec automatically.
29 build-pkg is writen by full standard shell script, so that it can be
30 compiled in system that only install compiler and shell program.
31 some of srcpkg need advaced script and libs to compile, that means it must
32 be built in a full linux system. build procedure in LFS shows that, before
33 construct a mini rootfs, it should build perl, python, and other misc
35 if a srcpkg build by build-pkg, it need few software to be built. it's
36 better for a srcpkg compiling, especially for the low-level system src pkgs.
42 devutils include many programs used in developping.
44 @ code serial, for code auto processing & generating.
45 @ tagdoc, devtask, for demand management & develop procedure management of
48 # format code in standard coding sytle.
49 # generating & synchronizing design doc file with src code.
50 # check if the structure of srcpkg dirs are following with devspec. website can
51 grab info from standard srcpkg dir structure, and generating srcpkg info on
53 # register a git space on web, it need many info to be input manually on web.
54 we can use util program to register space in cmd line.
55 # genpkg generating binary installable pkgs in a general form. the syntax of
56 install pkg include sh script, texture config/info file, and general compress
57 file. other format of install pkg generate file from this archive. it's a
58 middle file between srcpkg and install pkg.
59 # generate webpages in auto, sync to remote by cmd.
60 # ..., many other utility programs in developping.
62 most of procedures in develop are putted in term cmd line. it's easy to be
63 integrated into others, such as buildroot, IDE, website.
67 this is a program sub-set for pkg-builder. pkg-builder contains programs
68 for c/cpp src code compiling, devutils contain util script program for
70 the util set contains program like scripttest, it makes testing dirs and files
71 for testing item by using a catalog struct file, and run testing item one by
72 one. it helps developer to generate testing dir framwork, avoid copying testing
73 file and modify file name. it can save testing output content as standard stdout
74 txt file, compare with stdio output when testing script running.
75 one of the util program called codegen, it generate code dirs and c/cpp code
76 by a catalog sturct describe file. the catalog struct file describe src directory
77 struct, and src module/file, and variables & functions that contained in a module.
78 it helps developer to generate src file automatically by using code templete file,
79 avoid copy src templete file, and modify file name and text content repeatly.
80 it uses catalog struct text, which is more like a draft text wroted by programmer,
81 to generate code framework.
82 the developing util is a soft pkg, which contains util program used in
83 developping. whatever features needed in developping, put the corresponding
84 program into this soft pkg. but it only use bash shell script and binary program.
85 some of developping utils is used for pkg building, integrate them into
86 src pkg build software pkg-builder. such as pkg name generating, version id
88 those developping utils program is wroted for console environment, some
89 application need graphic ui, it uses tui instead of gui.
90 all the script program is written by shell script, or it should say bash script.
91 and i hope all the script program is written by shell script, it can decrease
92 more soft pkg dependence. if the feature is more complex, use binary executables
108 # package dirs and files
111 put some gnu doc file into doc dir.
112 @ bin, shell script program dir.
113 @ shlib, shell script library dir.
114 @ src, c/cpp src code dir.
115 @ doc/design-doc, the code design doc for build-srcpkg.
116 @ doc/manual-doc, usage doc of build-srcpkg.
117 @ doc, contains copyright、author、changelog ... etc, that a gnu project needed.
123 the first edition of soft pkg only contain one program.
128 * pkginst(paths.shlib),
136 featrues in developping:
138 * codegen, generate code dirs and files by catalog text automatically, generate src code
139 by src templete file.
146 * symbname, namming check of var & func & type & macro & filename.
149 * modify, if some of the text words generated by codegen contains wrong spelling, this util
150 helps developer to change text words in a directory of src files.
154 * docgen, use script from gnu build-aux util set. it help developer to generate virouse
156 * dbglogview, dispatch log text which is formated as a syntax, and display log data,
157 generate log event and invoking corresponding proc function.
158 * cargs, generate program paramter processing code in c/cpp.
159 * shargs, generate program paramter processing code in sh script.
160 * todolist, a program used for developping task manger between different developers through
161 E-mail, and also writing tasklist text by developer.
163 * cunit/cppunit, reference src from cunit/cppunit, used for unit testing of c/cpp src code.
164 * LVC a version control utils in local file system based on RCCS. manage code in non network
177 * gnutils/build-aux/gendoc.sh