1 How to prepare wxGTK distribution
2 =================================
7 This note explains what should be done, step by step, to prepare the packages
8 for a wxGTK distribution. Note that the same instructions should be used for
9 the other Unix-based ports including wxMotif, wxX11 and wxBase.
11 See distrib/msw/makerpm for a script that embodies some of the steps
14 1. Preparing the sources
15 ------------------------
17 a) Do a fresh checkout using the command
19 svn checkout http://svn.wxwidgets.org/svn/wx/wxWidgets/trunk wxWidgets
21 b) Create a build directory under wxWidgets, e.g. I use "gtk-release",
22 "cd" to it and run configure: the options don't really matter, you can use
25 ../configure -C --without-subdirs
27 to make it run a bit faster.
29 c) Then type "make -j1 dist bzip-dist-only". This should create the
32 wxGTK-${version}.tar.bz2
33 wxGTK-demos-${version}.tar.bz2
34 wxGTK-samples-${version}.tar.bz2
35 wxGTK-${version}.tar.gz
36 wxGTK-demos-${version}.tar.gz
37 wxGTK-samples-${version}.tar.gz
39 where version is something like 2.3.2.
41 Note 1: "-j1" is needed now because make dist target is broken and doesn't
42 allow parallelizing, if your make is aliased to "make -j4" (like
43 mine), it simply won't work.
45 Note 2: there are also dist-only and bzip-dist targets, the "-only" suffix
46 means to just create the archive supposing that the files
47 themselves are already under _dist_dir/wxGTK-${version} where
48 "make dist" creates them
53 Note that we didn't check if the library actually could be built -- this is
54 because it is done during this step, during the RPM generation. If, for
55 whatever reason, you don't build the RPMs, you must have checked previously
56 that the library could be built -- nothing worse than a release which doesn't
59 The rest of this section applies to a system with RPM installed (Redhat in my
62 a) Setting up the RPM tree: you should have the RPM tree set up properly
63 before doing anything else. If you are going to build the RPMs as root,
64 you already have one under /usr/src/redhat and can just build there.
65 Otherwise you may do it (without root rights) in any directory RPM_ROOT.
66 RPM_ROOT should have the following subdirectories: BUILD, RPMS, SOURCES,
67 SPECS and SRPMS. RPMS should contain i386, i686 and noarch. You should
68 also create the file ~/.rpmmacros containing at least a line like this:
69 "%_topdir /biton/zeitlin/rpm" (replace the directory with $RPM_ROOT, of
72 In either case, put the file wxGTK-${version}.tar.bz2 in SOURCES
73 subdirectory and wxGTK.spec in SPECS one (hint: you can just link them from
74 there -- like this you won't forget to update them after redoing "make
77 b) Start RPM build by going to RPM_ROOT directory and typing "rpm -ba
78 SPECS/wxGTK.spec". It may be a good idea to append "2>&1 | tee wxGTK.out"
79 (or "|& tee" if you're using the one true shell ;-) as it might be not
80 easy to detect errors in the verbose rpm output if anything goes wrong.
82 Then wait (and pray that nothing goes wrong because if anything does
83 you'll have to restart from the very beginning because rpm doesn't allow
84 to short circuit the package generation).
86 If everything goes well, this should produce many files in SRPMS and
87 RPMS/i386 subdirectories.
89 Use "rpm -ba --with gtk2" to build GTK+2 version of wxGTK and use
90 "rpm -ba --with gtk2 --with unicode" to build GTK+2 Unicode build
91 (these are defaults, you can use --without option to change this).
93 Note: you may want to set the environment variable SMP to 3 or 4 on an
94 SMP machine to speed up the build (it uses "make -j$SMP" if the
97 c) Test the resulting RPMs: install them using "rpm -i" (or "rpm -U) as usual
98 and try to build some samples using makefile.unx ("make -f makefile.unx")
99 so that they use wx-config in the PATH and not from the build tree
104 This is explained in more details in debian/README.HowToBuild.txt.
107 4. Uploading the files
108 ----------------------
110 All files should be uploaded (via FTP) to several locations.
112 a) incoming.sourceforge.net, go to project admin page on sf.net and choose
113 add/edit releases for more details
115 b) ftp://biolpc22.york.ac.uk/pub (Julian has the password)
117 5. Announcing the release
118 -------------------------
120 + update www.wxwidgets.org
123 - http://freshmeat.net/projects/wxwidgets/
124 - hit "new release" at the top
125 - follow the step by step
127 + wx-announce mailing list: mailto:wx-announce@lists.wxwidgets.org
129 The standard announcement text is in docs/publicity/announce.txt
132 - http://www.gnomefiles.org/app.php/wxWidgets
133 (only for stable releases, probably need Robert's account)
136 - http://www.macnn.com
137 - Contact or Contribute or something
140 - http://www.macrumors.com
141 - Contact or Contribute or something
143 + Apple Developers Connection:
144 mailto: adcnews@apple.com
147 Interesting for wxUniversal.
149 + The Python mailing list: