|
From: | Jump, Lance |
Subject: | Re: [Ltib] One step, CMO build |
Date: | Mon, 30 Sep 2013 15:59:44 +0000 |
Designation:
Non-Finmeccanica >> Is it possible to archive (in SVN, for example) a complete package that >> allows LTIB to rebuild from “source” with a single command using the >> libraries that were archived at the time of archive? >> >> The situation is this. The developers will configure LTIB (kernel, RFS …) and >> download all packages needed. At some point, they will check this into an >> archive so that the Configuration Management Organization (CMO) can >> check it out and build it. >> >> The CMO build will have no access to the internet and the personnel, who >> are not familiar with LTIB, will want to invoke a script that does everything – >> even setting up /opt/freecale -- with no interaction. >> >> I have been able to do some this, such as setting up a local package pool and >> using preconfigure, but I cannot accomplish the whole thing without some >> manual interaction and/or retaining a significant amount of the build by- >> products. >> >> Ideally, I would like to save nothing more than the original source (LTIB and >> packages) and small number of configuration files. Then have a script that >> takes these and performs the complete build. > > Obviously you only want to save the LTIB source (and local package pool > with appropriate configuration in .ltibrc to point to it) in SVN and have the > CMO machine check it out and build "from scratch". Of course you have to > assume that the CMO build machine has all the necessary host packages to > complete the build (i.e. build-essentials, etc) as well as grants the "build > user" appropriate sudo permissions. Yes, the CMO build machine would have to be configured. For now, I am experimenting using the development machine as the CMO machine and first running the build interactively there. > > Given that you could write a script that automates the process via: > > 1) check out latest version of the LTIB source directory (that contains the > local package pool that has copies of everything the build pulls from the > global package pool) > 2) rm -rf /opt/freescale > 3) rm -rf rpm > 4) sudo rm -rf rootfs* > 5) rm -f .host_warning* > 6) rm -f .tc_* > 7) ./ltib -b --preconfig config/platform/<platform>/<defconfig> > > Where "<platform>" is the platform directory and "<defconfig>" is the > default LTIB configuration file. > Note the ".tc_*" is the trigger file telling LTIB to skip installing the toolchain > package and ".host_warning*" is the trigger file telling LTIB to skip building > its host packages - hence removing them forces LTIB to repeat those steps. > > This should pretty much build LTIB completely from scratch... > The process I tried is similar to the above, except I also start with an empty working directory. So, steps 3 through 6 are implicit. I create the working directory by unpacking the original ltib skeleton. At that point, everything
is there (including the packages in the LPP) and I can run LTIB interactively. However, I do not see how to run it without user interaction. I have tried various combinations of "-b" and "--preconfig" with various saved configurations files. But I can't seem to get the magic set. Below are some that I have tried
(ltib/ is a saved run and ../ltib is the fresh working copy): cp .ltibrc ../ltib cp ltib/config/main.lkc ../ltib/config/ cp ltib/.config ../ltib/ cp ltib/config/.config ../ltib/config/ cp ltib/config/platform/imx/.config ../ltib/config/platform/imx/ cp ltib/config/platform/imx/defconfig.dev ../ltib/config/platform/imx/ cp ltib/config/platform/imx/imx6_defconfig.dev ../ltib/config/platform/imx/imx6_defconfig I am not sure which of these files I need, if I left out some crucial ones or included some that cause problems.
3.3.042312 |
[Prev in Thread] | Current Thread | [Next in Thread] |