To get the newest version version: 1) apt-get install git 2) git clone https://git.gitorious.org/debian-bootstrap/gsoc2013.git If you want to test the toolchain, just run: ./run-cross.sh {your package sign key} If this is your first time running sbuild, the script might return error and you should restart your session, so your user are going to be in the sbuild group. After that, just re-execute the command and it will run without problems. Note that the userdir module from apache should be loaded. This is required to have a local repository in the users public_html accessible through http://127.0.0.1/~$USER/ Note that the secret key of the key you are using to sign the packages must be available in the user home that is running the scripts. The files run-native.sh and run-cross.sh are examples of the execution of both scripts. By running ./run-cross.sh the script should be able to setup an crossbuild environment and run the automated bootstrap scripts. The steps performed by the scripts are: 1) Install required dependencies 2) Prepare the repositories locally (except the snapshot repository) 3) Create the chroot environment that will be used to crossbuild 4) Start the building process Observe that the crossbuild of all packages is not yet possible due to some bugs in the packages related with crossbuild and multiarch. Also, there is a need to solve some cyclic build dependencies using the staged build. Following is a short description of the directory and files of the repository: README --> This file run-cross.sh --> An example script using the scripts of this repostory (cross case) run-native.sh --> An example script using the scripts of this repostory (native case) autobootstrap/ --> Scripts and other files related with the development add-ma-foreign.pl --> Script to automatically add a multiarch foreign field in a source package. botch_build_order.sh --> Script the generates a buld order using botch. Not ready yet. create-chroot.sh --> Script that creates a chroot environment ready to be used by the automated bootstrap script. order1.lst --> This is a native build order obtained runnong botch. This is a cycle free build order order2.lst --> This is a native build order obtained running botch. This build order has cycles autobootstrap.pl --> This is the script that automatically builds/crossbuilds packages bug.workaround --> This file is a way found to workaround the bug 722880. make-patch.pl --> Script that automatically create patch for a source package. autobootstrap/repositories/ --> Keep the default repository configurations prepare_repos.sh --> script to prepare all repositories to be used in the autobuild process botch/ --> not used yet. It should keep a script to get and build botch in the folder builds/ --> Keep log of some builds. builds/Error/ --> build/crossbuild errors log folder patches: --> Keeps patches to packages patches/snapshot-20130703T215444Z/ --> specific folder for the 20130703T215444Z snapshot crossbuild/ --> patches that enable crossbuild multiarch/ --> patches that enable multiarch nativebuild/ --> patches that enable native builds ### OLD The directory ./patches contains patches that need to be applied to Debian source packages before bootstrapping can work. This includes simple additions of a multiarch field to certain binary packages up to changes introducing a build profile. The filename contains the source package name followed by the Debian bug report number under which the patch is filed in the bts. The directory ./botch contains a git submodule of botch as botch itself is not yet available as a Debian package. The script run.sh executes the following steps: - for all source packages for which there exists a patch: download, patch and build the source package - fill a local repository with the new versions of those binary and source packages - setup schroot and sbuild for cross building - use botch to generate a build order - use sbuild to cross compile source packages in the given order
G
Gsoc2013
c20fb6f3
·
by