All,
Finally have a bit of time to dive back in. The out-of-source change couldn't have hit at a worse time - end of 1st quarter and TAX time :( Still have 10 days to 2-weeks of commitment there.
Changing the PKGBUILDS to work with the out-of-source requirement will be simple - thankfully, but I want to know what is the preferred way to specify which Qt version to use. Building tqtinterface tonight, I am presented with:
#################################################
You must select a Qt version, like this:
cmake -DQT_VERSION=3 [arguments...] or cmake -DUSE_QT3=ON [arguments...]
Before I change everything -- which one is the preferred way that will work best with future changes with the Qt4 implementation? Does the change also deprecate:
-DWITH_QT3=ON \
Also, Calvin, Baho, I'm going to try the following to satisfy the OOS build requirement (eg.):
build() { <snip> cd $srcdir msg "Creating out-of-source build directory: ${srcdir}/build" mkdir -p build cd build
msg "Starting cmake..." cmake ${srcdir}/${_svnmod} \ -DCMAKE_INSTALL_PREFIX=/opt/qt \ -DQT_VERSION=3 \ -DWITH_QT3=ON \ -DQT_LIBRARY_DIRS=/opt/qt/lib \ -DCMAKE_SKIP_RPATH=ON || return 1 make }
Let me know on the preferred Qt designation...
On 04/03/2011 12:17 AM, David C. Rankin wrote:
All,
Finally have a bit of time to dive back in. The out-of-source change couldn't have hit at a worse time - end of 1st quarter and TAX time :( Still have 10 days to 2-weeks of commitment there.
Changing the PKGBUILDS to work with the out-of-source requirement will be simple - thankfully, but I want to know what is the preferred way to specify which Qt version to use. Building tqtinterface tonight, I am presented with:
#################################################
You must select a Qt version, like this:
cmake -DQT_VERSION=3 [arguments...] or cmake -DUSE_QT3=ON [arguments...]
Before I change everything -- which one is the preferred way that will work best with future changes with the Qt4 implementation? Does the change also deprecate:
-DWITH_QT3=ON \
Also, Calvin, Baho, I'm going to try the following to satisfy the OOS build requirement (eg.):
build() {
<snip> cd $srcdir msg "Creating out-of-source build directory: ${srcdir}/build" mkdir -p build cd build
msg "Starting cmake..." cmake ${srcdir}/${_svnmod} \ -DCMAKE_INSTALL_PREFIX=/opt/qt \ -DQT_VERSION=3 \ -DWITH_QT3=ON \ -DQT_LIBRARY_DIRS=/opt/qt/lib \ -DCMAKE_SKIP_RPATH=ON || return 1 make }
Let me know on the preferred Qt designation...
For tqtinterface here is the build scripts
excerpt from the Makefile
tqtinterface: sudo mkdir -vp $(CHROOTDIR)/root/trinity.source sudo rm -rf $(CHROOTDIR)/root/trinity.source/ sudo rsync -var $(CHROOTDIR)/trinity.source/dependencies/tqtinterface $(CHROOTDIR)/root/trinity.source sudo chmod -R o+rw $(CHROOTDIR)/root/trinity.source dependencies/tqtinterface/Builder.sh @touch $@
Builder.sh
#!/bin/bash -e _pgm=${0##*/} # whoami _path=${0%/*} # fetch directory name = module name _pwd=$(pwd) _chroot="/home/build" _date=$(date +%F)"-"$(date +%R) _repos="/home/build/root/repo" _pkgname="*.pkg.tar*" # Check parameters [ -d ${_path} ] || ( echo "Missing directory: ${_path}";exit 2 ) [ -f "${_path}/PKGBUILD" ] ||( echo "Missing PKGBUILD";exit 3 ) # Build package cd ${_path} ( sudo /usr/sbin/mkarchroot -u ${_chroot}/root 2>&1 | tee -a ${_date}-build.log && exit ${PIPESTATUS} ) ( sudo /usr/sbin/makechrootpkg -c -r ${_chroot} 2>&1 | tee -a ${_date}-build.log && exit ${PIPESTATUS} ) # Namcap package _pkg=$(find . -name "${_pkgname}" -print) [ -f ${_pkg} ] || ( echo "Missing package: ${_pkgname}";exit 4 ) ( /usr/bin/namcap ${_pkg} 2>&1 | tee ${_date}-namcap.log && exit ${PIPESTATUS} ) ( /bin/tar -tf ${_pkg} 2>&1 | tee ${_date}-filelist.log && exit ${PIPESTATUS} ) # Mv and add to repo mv -vf ${_pkg} ${_repos} /usr/bin/repo-add ${_repos}/local.db.tar.gz ${_repos}/${_pkg} exit 0
The PKGBUILD
# $Id$ # Maintainer: Baho Utot baho-utot@columbus.rr.com _module=tqtinterface _source="/trinity.source" pkgname=${_module} pkgver=0 pkgrel=0 arch=(i686 x86_64) url="http://trinity.pearsoncomputing.net" license=(GPL2) groups=(trinity) pkgdesc="Trinity - ${_module}" depends=(qt3) makedepends=(pkgconfig cmake autoconf subversion libxi libxft libxrandr libxcursor libxinerama mesa) source=() #options=(!makeflags) _pwd=$(pwd) _builddir=BUILD build() { cd ${_source}/${_module} pkgver=$(svnversion) msg "SVN checkout of revision $pkgver -- Complete." msg "Setting PATH, CMAKE and Trinity Environment variables" export _prefix="/usr" cd ${_pwd} mkdir -vp ${_pwd}/${_builddir} cd ${_pwd}/${_builddir} msg "Starting cmake..." cmake ${_source}/${_module}/ \ -DCMAKE_INSTALL_PREFIX=${_prefix} \ -DQT_VERSION=3 \ -DQT_INCLUDE_DIR=/usr/include/qt # -DCMAKE_VERBOSE_MAKEFILE=ON \ make }
package() { cd ${_source}/${_module} pkgver=$(svnversion) msg "Packaging - $pkgname-$pkgver" cd ${_pwd}/${_builddir} make DESTDIR="$pkgdir/" install }
On 3 April 2011 00:17, David C. Rankin drankinatty@suddenlinkmail.com wrote:
All,
Finally have a bit of time to dive back in. The out-of-source change couldn't have hit at a worse time - end of 1st quarter and TAX time :( Still have 10 days to 2-weeks of commitment there.
Changing the PKGBUILDS to work with the out-of-source requirement will be simple - thankfully, but I want to know what is the preferred way to specify which Qt version to use. Building tqtinterface tonight, I am presented with:
#################################################
You must select a Qt version, like this:
cmake -DQT_VERSION=3 [arguments...] or cmake -DUSE_QT3=ON [arguments...]
Before I change everything -- which one is the preferred way that will work best with future changes with the Qt4 implementation? Does the change also deprecate:
-DWITH_QT3=ON \
Also, Calvin, Baho, I'm going to try the following to satisfy the OOS build requirement (eg.):
build() { <snip> cd $srcdir msg "Creating out-of-source build directory: ${srcdir}/build" mkdir -p build cd build
msg "Starting cmake..." cmake ${srcdir}/${_svnmod} \ -DCMAKE_INSTALL_PREFIX=/opt/qt \ -DQT_VERSION=3 \ -DWITH_QT3=ON \ -DQT_LIBRARY_DIRS=/opt/qt/lib \ -DCMAKE_SKIP_RPATH=ON || return 1 make }
Let me know on the preferred Qt designation...
-- David C. Rankin, J.D.,P.E.
David,
Looks good to me, creating a build folder with in the srcdir is probably the best thing to do.
Calvin Morrison
On 04/03/2011 08:43 AM, Calvin Morrison wrote:
[putolin]
David,
Looks good to me, creating a build folder with in the srcdir is probably the best thing to do.
Calvin Morrison
You may want to have a look at my build system.
http://www.3111skyline.com/dl/dt/trinity/arch/dev/baho/
You should be able to build to any location by changing the _prefix variable.
You should also be building in a clean chroot environment to prevent unwanted dependencies.
Baho,
While you have a excellent build script, we cannot forget the PKGBUILDs are universal, and that we should be able to build them easily without the build scripts :)
I do think that we should be building in chroots, I believe that is how the Arch Devs do it for packages in [core], to ensure there is no breakages.
Calvin Morrison
On 3 April 2011 09:48, Baho Utot baho-utot@columbus.rr.com wrote:
On 04/03/2011 08:43 AM, Calvin Morrison wrote:
[putolin]
David,
Looks good to me, creating a build folder with in the srcdir is probably the best thing to do.
Calvin Morrison
You may want to have a look at my build system.
http://www.3111skyline.com/dl/dt/trinity/arch/dev/baho/
You should be able to build to any location by changing the _prefix variable.
You should also be building in a clean chroot environment to prevent unwanted dependencies.
To unsubscribe, e-mail: trinity-devel-unsubscribe@lists.pearsoncomputing.net For additional commands, e-mail: trinity-devel-help@lists.pearsoncomputing.net Read list messsages on the Web archive: http://trinity-devel.pearsoncomputing.net/ Please remember not to top-post: http://trinity.pearsoncomputing.net/mailing_lists/#top-posting
On 04/03/2011 09:56 AM, Calvin Morrison wrote:
Baho,
While you have a excellent build script, we cannot forget the PKGBUILDs are universal, and that we should be able to build them easily without the build scripts :)
Well yes in principal.... When 3.5.13 is released then you will be able to build the intented way. But for svn and the out of source building method I don't beleve you can have a universal PKGBUILD as you need a place for the svn tree.
If you look at my kdebase subdirectory you will see that I have a PKGBUILD.src which packages up the svn tree for kdebase then the PKGBUILD can be as it should. I abandoned that way because I would first need to create source tar balls then fixup the PKGBUILDS to use them, then build. It couldn't be automated easily. If one employs Davids (not that there is anything wrong with it) method then you hit the svn server every time you build a module, I didn't want to cause excessive traffic to the svn server so I came up with my present methods. I hit the svn server once daily and then build the entire tree.
The system gives you a way to build the svn tree daily/hourly or whatever. Mine is based on a cron entry.
When we get a stable release that is complete like trinity-3.5.12 then I am going to use those tar balls. I really didn't have a choice because of the autotool problem, I can only use the cmake system because arch is so cutting/bleeding edge. The svn tree will give you a useable trinity desktop ( I am using it now ) ..... just not one without the bells and whisels.
[putolin]
On 04/03/2011 07:43 AM, Calvin Morrison wrote:
David,
Looks good to me, creating a build folder with in the srcdir is probably the best thing to do.
Calvin Morrison
That's the way Arch has done KDE4 so I just took their format and naming convention to go ahead and build consistency into the Trinity PKGBUILDs.
It seems to work fine -- just be sure you change the package() function to package from the ${srcdir}/build dir. :p
On 04/03/2011 07:27 PM, David C. Rankin wrote:
On 04/03/2011 07:43 AM, Calvin Morrison wrote:
David,
Looks good to me, creating a build folder with in the srcdir is probably the best thing to do.
Calvin Morrison
That's the way Arch has done KDE4 so I just took their format and naming convention to go ahead and build consistency into the Trinity PKGBUILDs.
It seems to work fine -- just be sure you change the package() function to package from the ${srcdir}/build dir. :p
Have you checked it when building in a clean chroot?
It will fail/not work if you choose to build in a clean chroot because I don't think it will copy the source tree to the clean chroot.