taskFreeciv - Tasks: task #7599, Windows packages for 2.4.0-beta1

Show feedback again

You are not allowed to post comments on this tracker with your current authentification level.

task #7599: Windows packages for 2.4.0-beta1

Submitted by:  Jacob Nevins <jtn>
Submitted on:  Sun Jun 17 18:00:10 2012  
Should Start On: Fri Aug 10 23:00:00 2012Should be Finished on: Sat Aug 18 23:00:00 2012
Category: NonePriority: 5 - Normal
Status: DonePrivacy: Public
Percent Complete: 0%Assigned to: Christian Prochaska <cproc>
Open/Closed: ClosedEffort: 0.00
Planned Release: 2.4.0-beta1

(Jump to the original submission Jump to the original submission)

Sat Apr 20 14:23:47 2013, comment #16:

(The Windows Gtk3 build story continues in task #7681.)

Jacob Nevins <jtn>
Project Administrator
Sun Aug 12 17:07:27 2012, comment #15:

Thanks for the quick turnaround!

Tried the SQLite support on Windows -- worked fine. :)

Jacob Nevins <jtn>
Project Administrator
Sat Aug 11 22:09:15 2012, comment #14:

.tar.bz2 is now up at download.gna.org... all yours :)

Jacob Nevins <jtn>
Project Administrator
Sat Aug 11 21:00:23 2012, comment #13:

cproc's patch applied under the auspices of patch #3498.

Jacob Nevins <jtn>
Project Administrator
Sat Aug 11 14:16:35 2012, comment #12:

I do think we should commit this installer patch for beta1 (and bug #20005, as I've said there). Out-of-the-box authentication on Windows is one of the headline features in 2.4, and the patch can only break Windows installer builds, of which we don't have a big history of testing to overturn, and it has been tested.

If no-one else gets there soon (hours), I'll commit file #16290 (blindly) before building the tarball.

Jacob Nevins <jtn>
Project Administrator
Thu Aug 9 22:44:33 2012, comment #11:

> the attached patch makes the installer Makefile build Freeciv
> with SQLite support.

This would require also bug #20005 patch to achieve anything. I've had no chance to test this. Both patches have been submitted over 36h of review period ago, but I'm not very excited about relatively big untested change being committed just before release (even beta one). I vote for leaving this to beta2 (but as I admit that it would go in according to review process, count that as half vote only - single decidedly 'yes' vote wins over it)

Marko Lindqvist <cazfi>
Project Administrator
Fri Aug 3 17:19:19 2012, comment #10:

> 6. Optional, but desired, dependency: SQLite.

I've added SQLite to the MinGW build environment (http://download.gna.org/freeciv/packages/windows/gnuwin32/gnuwin32-2012-08-03.7z) and the attached patch makes the installer Makefile build Freeciv with SQLite support. It seems to work after manually copying database.lua to the hardcoded location in the MinGW build environment (see bug #20005).

Christian Prochaska <cproc>
Project AdministratorIn charge of this item.
Thu Aug 2 12:12:56 2012, comment #9:

> Point 2, cazfi has since ported the installer scripts to S2_4
> and tested them.

Before anyone gets up false hopes that I can do actual development and maintenance of Windows Installer, let's clarify that this was more like just enabling something cproc had made possible:
I touched installer build scripts under version control only, to include curl. That wouldn't be possible if curl wasn't already part of installer script build environment cproc had uploaded to http://download.gna.org/freeciv/packages/windows/gnuwin32/

Marko Lindqvist <cazfi>
Project Administrator
Sun Jul 29 12:55:18 2012, comment #8:

> the beta isn't imminent...

It's getting that way now -- as announced, I plan to release the beta1 source on the weekend of August 11-12.

Jacob Nevins <jtn>
Project Administrator
Tue Jul 17 00:22:31 2012, comment #7:

So, point 1 is slain.
Point 2, cazfi has since ported the installer scripts to S2_4 and tested them.

New one:

7. Optional dependency: MagickWand, for saving map images. (Without this it'll only be possible to save PPM files, which aren't immediately useful to most Windows users.)
Don't know how awkward this is going to be to include.

Jacob Nevins <jtn>
Project Administrator
Mon Jul 16 23:50:27 2012, comment #6:

I'm (now) inclined to agree -- let's plan for Gtk2 on Windows for now.

(Would be good to build a Windows Gtk3 client sometime during the 2.4 cycle just so we're not going into it cold with 2.5, but it can wait until Gtk3 libraries actually exist :)

Jacob Nevins <jtn>
Project Administrator
Thu Jun 28 09:45:55 2012, comment #5:

> By default I'd like to try for Gtk3.

As much as I'd want people to test gtk3-client to find all the problems, official stable release has different goals. 2.4 gtk3-client has no functionality that gtk2-client has not. gtk3-client has some (minor, but still) bugs that gtk2-client has not. Gtk2-client is more finished product, and that's what counts on official stable release. As we are shipping gtk libraries ourselves, I presume that it wont be any harder to provide gtk2-client than gtk3-client for the lifetime of 2.4.

Marko Lindqvist <cazfi>
Project Administrator
Tue Jun 26 23:41:14 2012, comment #4:

Oops, missed the other main reason I raised this bug:

6. Optional, but desired, dependency: SQLite. Patch #3287 will make this usable as a database backend (as an alternative to MySQL), and we'd very much like the Windows build to include it, so that Windows users will for the first time be able to run authenticated servers with standard builds.
It looks like a very light dependency that should cause no trouble -- see here.

Jacob Nevins <jtn>
Project Administrator
Sun Jun 17 19:53:21 2012, comment #3:

Another link to watch: https://live.gnome.org/GTK+/Win32
Lots of dated content, but Dieter Verfaillie (new maintainer?) has edited relatively recently.

Jacob Nevins <jtn>
Project Administrator
Sun Jun 17 19:46:11 2012, comment #2:

Oh, rats.

Bit of digging: there is hope for official Windows binaries, but they're not available yet and work doesn't look overly fast.

2011-03: Tor (tml) says he's not maintaining it any more (source: SO)
2011-05: OpenSUSE Build System binaries
suggested as an alternative
2011-11: A new maintainer?, Alexander Larsson, reports Gtk2 binary releases have resumed, and talks about work in progress towards Gtk3
2012-03: Alex reports more work on Gtk3; "We hope to have window binaries out for [Gtk+ 3.4.0] soon"
2012-04: Alex says "dieterv is working on the binaries. Not sure when they will be finished..."
2012-06: Alex says "I know dieter is working on an official win32 binary release, but I don’t know the status of it."

So I guess we can either:

  • wait patiently for the official Gtk3 binaries; or
  • try to use the OpenSUSE binaries; or
  • ship the Gtk2 client
Jacob Nevins <jtn>
Project Administrator
Sun Jun 17 18:28:16 2012, comment #1:

> 1. Need to work out which Gtk client we're shipping for Windows
> -- Gtk2 or Gtk3.

If I have understood correctly, official Windows builds use gtk+ bundles from http://www.gtk.org/download/win32.php (to see also old available versions see http://ftp.gnome.org/pub/gnome/binaries/win32/gtk+/ )

There seems to be no gtk3 version of the bundles at the moment, current is 2.24.

Marko Lindqvist <cazfi>
Project Administrator
Sun Jun 17 18:00:10 2012, original submission:

Don't panic, the beta isn't imminent...

However, I want somewhere to note Windows-specific extra work that's going to be needed for the first 2.4.0 release, in plenty of time. (The task end date is not meaningful.)

So far I've thought of the following. (See also doc/README.packaging.)

1. Need to work out which Gtk client we're shipping for Windows -- Gtk2 or Gtk3. (There doesn't seem to be any point packaging both.)
By default I'd like to try for Gtk3. That presumably means work for you getting Gtk3 libraries and so on for Windows. Might be a good idea to start putting together a test build from head of S2_4, so we can work out the kinks.
(But if we go for Gtk3, don't throw away ability to build Gtk2 for Windows just yet; we may need it as a backup plan -- I'm not sure how heavily exercised the Gtk3 client has been so far.)

2. Installer scripts.
For a start, we should get the installer material onto the S2_4 branch (and trunk) -- bug #19088 only put it on S2_3. Then I expect it will need some tweaks.

3. New mandatory dependency: libcurl (for HTTP).

4. Optional new dependency: liblzma (for .xz compressed files). Not too bothered if we don't get this.

5. Don't bother to try to build the Qt client yet; it doesn't do anything.

Jacob Nevins <jtn>
Project Administrator


Attached Files


   bug dependencies, task dependencies.

Items that depend on this one: None found


Carbon-Copy List
  • -unavailable- added by cproc (Posted a comment)
  • -unavailable- added by cazfi (Posted a comment)
  • -unavailable- added by jtn (Submitted the item)

    Do you think this task is very important?
    If so, you can click here to add your encouragement to it.
    This task has 0 encouragements so far.

    Only logged-in users can vote.


    Error: not logged in



    Follow 10 latest changes.

    Date Changed By Updated Field Previous Value => Replaced By
    Sun Aug 12 14:40:45 2012cprocStatusNone=>Done
    Sun Aug 12 01:13:53 2012jtnDependencies-=>Depends on task #7603
    Sat Aug 11 22:09:15 2012jtnShould Start OnSat Aug 11 23:00:00 2012=>Fri Aug 10 23:00:00 2012
    Fri Aug 3 17:21:08 2012cprocAttached File-=>Added windows_installer_sqlite3-S2_4-20120803.diff, #16290
    Fri Aug 3 17:19:19 2012cprocDependencies-=>Depends on bugs #20005
    Sun Jul 29 12:55:18 2012jtnShould Start OnSat Jun 16 23:00:00 2012=>Sat Aug 11 23:00:00 2012
      Should be Finished onMon Dec 31 00:00:00 2012=>Sat Aug 18 23:00:00 2012
      StatusNeed Info=>None
      SummaryWindows packages for 2.4.0-beta1 (placeholder)=>Windows packages for 2.4.0-beta1
    Show feedback again

    Back to the top

    Powered by Savane 3.1-cleanup