Justin Karneges | 26 Jul 2012 10:53
Favicon
Gravatar

one-button builds

It is finally possible to build and package Psi, with dependencies, using a 
single command. At the moment this only works for Mac, but it will soon work 
for Windows as well.

  export QTDIR=/path/to/qt
  cd admin/build && make VERSION=somestring

With the exception of Qt (which you're assumed to have, and you must set 
QTDIR), this will automatically download all other dependencies prior to 
compiling. Notably you no longer have to hand-edit version strings in files. 
Files containing version numbers are generated.

Most of the dependency packages are downloaded from psi-im.org [1]. What's 
nice is many of these packages are generally built in a similar one-button 
fashion via scripts from the psideps repo.

Everything is being built as 32-bit + 64-bit x86. For Mac, a universal binary 
is made. For Windows, there will be two packages, one for each arch. Minimum 
OS targets are Mac 10.5 and Windows XP.

What's left: psimedia package for Windows, and then Psi itself for Windows. 
Once this is done, I'll be restoring the daily snapshots and putting out 0.15-
beta2.

At some point I also want to script the Windows installer, but generally we 
have not used installers for daily snapshots or betas, so this won't be a 
blocker.

Justin

(Continue reading)

Justin Karneges | 31 Jul 2012 22:28
Favicon
Gravatar

Re: one-button builds

On Thursday, July 26, 2012 01:53:25 AM Justin Karneges wrote:
> It is finally possible to build and package Psi, with dependencies, using a
> single command. At the moment this only works for Mac, but it will soon
> work for Windows as well.
> 
>   export QTDIR=/path/to/qt
>   cd admin/build && make VERSION=somestring

This now works for Windows. You have to set QTDIR64/QTDIR32 instead of QTDIR. 
See admin/build/README and the README of the psideps repo for details.

Additionally, it is possible to reuse these conveniences to prepare a 
development environment. This makes it easier to start hacking on Psi. For 
example, I'm currently developing and testing on Windows 64-bit, so I've run:

  QTDIR64=/c/qt/4.8.2-w64 admin/build/devconfig.sh x86_64

This command downloads all dependencies into psi/admin/build/deps, runs 
configure to point to all of them, and then generates the "devenv" file with all 
the environment variables you'd need for Psi to work (e.g. PATH, 
DYLD_FRAMEWORK_PATH, PSI_MEDIA_PLUGIN, etc) without having to create a 
distribution.

Whenever you want to hack on Psi, open up a shell and run:

  . admin/build/devenv

Now you can build like normal:

  mingw32-make
(Continue reading)


Gmane