On Mon, 2010-05-17 at 00:10 +0400, Alexey Loukianov wrote: > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA1 > > Good day.
alike > > I've been using OpenWRT build system for making specialized firmwares for > various D-Link routers for about a year. The need to build up a fresh firmware > arises from time to time so it is common for me to get into a situation when > checked out local working copy lags several months behind trunk's HEAD. > > Common problem that usually arises in process of bumping working copy to the > current HEAD is the task of keeping .config file up with the introduced > changes. > Somewhere in the past I've been told by somebody on the dd-wrt forums that the > correct procedure of "upgrading" config file to the newer SVN revision is to > use > the sequence like this: > > # make clean > # svn update > # make oldconfig > > Is this the right way? How to cope with updates to the packages from OpenWRT > feeds? OpenWRT is ever-changing project, and it is perfectly normal to switch > kernel versions on a regular basis. Will the config file updated using "make > oldconfig" automatically follow the changes in the default versions of the > kernel/gcc/uClibc for the selected target platform? <make oldconfig> drops out obsolete parameters and will ask you how to handle new ones (n/y/m). kernel-parameters are not part of the file - the equivalent call would be <make kernel_oldconfig> (saved in target/linux/*/config-*). > > Second thing that seems unclear to me is the feeds management system. > "make package/symlinks" approach was told to be obsolete on a some page in the > "new" wiki, and it is now recommended to use the "feeds" script instead. > > As far as my understanding is correct this script basically does three sorts > of > things: > 1. svn checkout/update for the feeds defined in feeds.conf when called with > "update" as the second argument. This operation does not create/update any of > the symlinks in the packages/feeds/*. > 2. List the packages in the checked out revision of the feed or search checked > out feeds for a specified package (list/search as second argument). > 3. Create/remove symlinks in packages/feeds/* when called with > install/uninstall > as the second argument. > > Thus, to correctly update and install all packages in all feeds the command > sequence might look like this: > > # ./scripts/feeds uninstall -a > # ./scripts/feeds update -a > # ./scripts/feeds install -a > > Am I right? Is it required to do "make oldconfig" afterwards? That's the way. This will update the feeds from the corresponding repositories listed in feeds.conf / feeds.conf.default respectively. As said before, <make oldconfig> will now drop obsolete entries and ask you what to do with new ones (=new packages). > > Third question is concerning the possibility of the so-called "parallel > build". > Accordingly to the recent SVN logs, there were some commits that fix a number > of > issues related to the parallel build. Most notably, one of the log entries > instructs user to modify 21st line of the include/host-build.mk to look like > "override MAKEFLAGS=$(MAKE_JOBS)" in order to enable parallel build for the > target toolchain. Does it mean that it is safe now to use something like "make > - -j6" on milticore CPU host in order to gain huge speedups of the build > process? > Will it work normally when used in conjunction with the host CCACHE? It _should_ work, however I still experience raise-conditions because of e.g. missing/wrong dependencies. For production use I do not recommend parallel builds, as binaries _may_ differ. > > Another rumor that I've been told by some man on the forums was that the > correct > way to made OpenWRT build proceed with a parallel build is to head on to the > "Advanced development options" in the menuconfig and specify the desired > number > of the make jobs there (instead of using "make -jN"). As far as I can see, > there's no appropriate option for specifying make job count in that submenu > today. Was the advice wrong or am I missing something? Just use "make -jX", however be aware that OpenWrt will not pass this option to the corresponding builds of single packages. It will "just" parallelize the build of multiple openwrt-packages, not building a single package itself. > > Thanks in advance for the answers. You're welcome mirko > > - -- > Best regards, > Alexey Loukianov mailto:mooro...@mail.ru > System Engineer, Mob.:+7(926)218-1320 > *nix Specialist > > -----BEGIN PGP SIGNATURE----- > Version: GnuPG v1.4.7 (GNU/Linux) > Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ > > iQEVAwUBS/BROfB9BOdTkBULAQIM+QgAneY8fHcAiFvrYISVpKtVRI7yJp+pILQj > 1Fq2NPGrFwmgeYS6ZCWkTL/LbIEhVr4w5rNdfJ0SkayUMDPCoZT6Zgk+kC/A1IqJ > 0AWq4pK8Iyekt029s48MsQFUr6dKQX0r0ceq7Wk2/dMfI7X3I7EoyDkuhm6bmuse > vN2XevSLdVFd5eIq+fEyd5eOgTJvzYc4UyLDLuOYDBI2aQFmt2aiYGYw85xqSh2p > v/eJMdx2j/euQTjaRe6qbU4rgc0UE+iHe3GkCXjUyFHrgnArL6dzjsy2yYzXDql7 > KS+Rged9uoIJKKRc/D26mUq1KwEB03b6lMYiyBCpbulHWPxo6ceqZw== > =6jlY > -----END PGP SIGNATURE----- > _______________________________________________ > openwrt-devel mailing list > openwrt-devel@lists.openwrt.org > https://lists.openwrt.org/mailman/listinfo/openwrt-devel -- This email address is used for mailinglist purposes only. Non-mailinglist emails will be dropped automatically. If you want to get in contact with me personally, please mail to: mirko.vogt <at> nanl <dot> de _______________________________________________ openwrt-devel mailing list openwrt-devel@lists.openwrt.org https://lists.openwrt.org/mailman/listinfo/openwrt-devel