Age | Commit message (Collapse) | Author | Files | Lines |
|
options
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
|
|
Features:
- Visit the supplied paths to git modules
- Accepts a list of paths in the format produced by build.sh -L
- Tag and version names picked-up from Makefile
- Determine the web section from the module git URL
- It only releases tarballs it has created from the git module
- Timely feedback, extensive error checking and final report
- Leave module untouched if already released
- Preview what will happen with --dry-run
- Generate the announce e-mail
- Update the jhbuild moduleset
Caveats:
- Autotagging is mandatory to implement project policies
and gracefully ignores additional tags.
- Cmd line interface not backward compatible mainly for autotagging
- Intel video driver and xcb will use conforming tags from now on
- Local changes in the module are not tolerated
- For jhbuild moduleset, readlink has been removed as it is not portable
Alternative solutions are considered.
Usage examples:
util/modular/release.sh app/xdm lib/libX11-1.1.3 xserver
In this example, libX11-1.1.3 would be at branch 1.1.3 and could be released
in the same batch run with libX11 master.
Design
-------
The development process ends with a module whose last commit is a
version bump in the fdo repository. All testing is assumed to have been done,
including distcheck.
The user is not asked to do anything with git tags. No harm done if user tags
the module with the correct tag name. Any non conforming tag will be ignored.
Modules can have multiple tags, only the conforming one will be used to
generate and release tarballs.
The srcipt runs 'make dist' to create the tarball. We don't have to prompt
the user for the tar name, the version number or the web section name.
The web section is determined from the git module URL. Special cases like
mesa or xcb are handled.
Interface
---------
Where "path" is a relative path to a git module, including '.'.
Options:
--distcheck Use 'distcheck' rather than 'dist' to create tarballs
--dry-run Does everything except tagging and uploading tarballs
--force Force overwriting an existing release
--help Display this help and exit successfully
--modfile <file> Release the git modules specified in <file>
--moduleset <file> The jhbuild moduleset full pathname to be updated
--no-quit Do not quit after error; just print error message
--user <name> Username of your fdo account if not configured in ssh
Environment variables defined by the "make" program and used by release.sh:
MAKE The name of the make command [make]
MAKEFLAGS: Options to pass to all \$(MAKE) invocations
Usage Scenarios
----------------
Due to a change to the m4 macro, all font packages need to released.
util/modular/build.sh -L | grep font/ > myList.txt
util/modular/release.sh --modfile myList.txt
A developer is asking a buddy to relase a few protocols and libraries.
He sends the list in an e-mail. Once all is done on disk:
edit myList.txt (or save from e-mail)
util/modular/release.sh --no-quit --modfile myList.txt
A single app needs to be released for an important bug fix
cd app/xdm
../../util/modular/release.sh .
Supports libdrm and xkeybboard-config:
util/modular/release.sh xkeyboard-config mesa/drm
Reviewed-by: Jeremy Huddleston <jeremyhu@apple.com>
Tested-by: Jeremy Huddleston <jeremyhu@apple.com>
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
|
|
Signed-off-by: Dave Airlie <airlied@redhat.com>
|
|
Seems to be harmless, just noisy message:
git/util/modular/build.sh[1323]: [: argument expected
sh -x shows it was coming from expanding:
if [ X"$BUILT_MODULES_FILE" != X -a -r $BUILT_MODULES_FILE ]
to:
+ [ X '!=' X -a -r ]
Adding quotes ensures the shell sees an empty argument instead of none.
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Reviewed-by: Gaetan Nadon <memsize@videotron.ca>
|
|
The '--autoresume' option tells the build to continue on with where it last
left off while building a set of modules. The '-o' option tells the build to
build just the one module. These two options don't make a lot of sense when
specified together. This patch looks for the scenario where both these
options are specified and errors out since there is a good chance the build
will not behave as the user expects.
Signed-off-by: Trevor Woerner <twoerner@gmail.com>
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
|
|
The --autoresume <file> option allows a user to specify a <file> into which
the build prints each module/component it has built. When a subsequent build
is restarted with <file>, the build can skip all previously built modules,
start with the last one (which is assumed to have failed previously), and
continue on.
The -n option allows a build to continue with subsequent modules even if
one or more of the modules fails to build correctly.
With this change, in addition to updating the --autoresume <file> with the
name of the module/component just built, <file> is also updated with the
status of the build. Therefore if you use -n you will have an --autoresume
<file> which lists the build status of all the modules you wanted to build.
A subsequent build using the --autoresume <file> will scan <file> looking
for failures and attempt to build them before continuing on with the build
from the end of the list.
Signed-off-by: Trevor Woerner <twoerner@gmail.com>
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
|
|
This driver was removed from xorg.modules in commit
ee55165c87833ffb4f73e3984158576ff7e0df58 with the
following commit message:
This hasn't been usable for multiple years and obviously nobody
cares about fixing it, so remove it from the default set, so
the tinderbox stops reporting it as a failure.
Signed-off-by: Trevor Woerner <twoerner@gmail.com>
|
|
Miscellaneous cleanups of the help text that is printed.
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Trevor Woerner <twoerner@gmail.com>
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
|
|
When "no stop" option -n is given, all the failed modules were written
to the autoresume file. Upon resuming, they were skipped.
This patch makes it such that only a successfully built module
is added to the file.
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
|
|
Allow a user to specify per-component configure options by
providing them in the --modfile file. Any text remaining on
a line following a given module/component is assumed to be
options which will be passed to the configuration script.
Signed-off-by: Trevor Woerner <twoerner@gmail.com>
|
|
Not all "expr" implementations have a "substr" string argument.
"According to the POSIX standard, the use of string arguments length,
substr, index, or match produces undefined results."
http://www.freebsd.org/cgi/man.cgi?query=expr&apropos=0&sektion=0&manpath=
FreeBSD+9.0-RELEASE&arch=default&format=html
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
|
|
Remove a dependency on the xf86-video-xgi driver which was removed in
commit ee55165c87833ffb4f73e3984158576ff7e0df58
Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
|
|
This hasn't been usable for multiple years and obviously nobody
cares about fixing it, so remove it from the default set, so
the tinderbox stops reporting it as a failure.
Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
|
|
|
|
|
|
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
|
|
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Reviewed-by: Jeremy Huddleston <jeremyhu@apple.com>
|
|
Signed-off-by: Søren Sandmann <ssp@redhat.com>
|
|
Remove them from the build script, they may not work against the server.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
|
|
Straightforward addition of new xcb/util-* submodules - note that they
rely on git submodules, so if you aren't using this script to clone &
pull, you'll need to do the git submodule init & git submodule update
yourself.
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Reviewed-by: Gaetan Nadon <memsize@videotron.ca>
|
|
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
|
|
Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
|
|
This driver cannot build without spice-protocol which is an external
dependency. All packages in build.sh are expected to build without
manual interventions.
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
|
|
The building of makedepend was moved earlier as it is required
by mesa, but was moved before proto upon which it depends.
Reported-by: Fred Liu <Fred_Liu@issi.com>
Reviewed-by: Dan Nicholson <dbn.lists@gmail.com>
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
|
|
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
|
|
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
|
|
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
|
|
Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
|
|
Signed-off-by: Jeremy Huddleston <jeremyhu@apple.com>
|
|
All three arguments are required. Otherwise git-rev-list will abort the
script silently.
Signed-off-by: Dirk Wallenstein <halsmit@t-online.de>
Reviewed-by: Dan Nicholson <dbn.lists@gmail.com>
Signed-off-by: Julien Cristau <jcristau@debian.org>
|
|
Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
Reviewed-by: Dan Nicholson <dbn.lists@gmail.com>
|
|
To find the auxiliary script that updates a moduleset, consider the case
where the main script is accessed through a symlink, and resolve that
first.
Signed-off-by: Dirk Wallenstein <halsmit@t-online.de>
Reviewed-by: Dan Nicholson <dbn.lists@gmail.com>
|
|
|
|
In order to keep the katamari moduleset up to date with current tarball
information, have release.sh update the file when new releases are made.
This is enabled by passing a module file with --moduleset.
Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
Reviewed-by: Dirk Wallenstein <halsmit@t-online.de>
|
|
update-moduleset.sh takes the sha1sum and tarball and updates the module
definition in a given moduleset. This should make keeping the stable
moduleset easier.
The module name mangling list was reached by grepping for all the
package names in the moduleset.
Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
Reviewed-by: Dirk Wallenstein <halsmit@t-online.de>
|
|
Add a moduleset for the 7.6 katamari based on xorg.modules and
module-list.txt. This uses the module list from 7.6 with gzipped
tarballs and sha1sums from announce emails (when available).
Modules not included in the katamari have been given their most recent
release. It might be a good idea to group typical addons such as xinit
in an "extras" metamodule.
Originally some modules had autogen-sh="configure" specified in their
definitions. This forced configure to be used even if autogen.sh was
present. This has been fixed in jhbuild commit ff2211e6.
Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
|
|
xf86-video-impact has been broken for a while and isn't built by
build.sh. Move it to the unmaintained metamodule until someone cares.
Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
Reviewed-by: Dirk Wallenstein <halsmit@t-online.de>
|
|
A few of the non-X.Org modules such as pixman and libdrm were mixed in
with the X.Org libraries. Instead, they should be at the top of the
moduleset with the rest of the external modules such as fontconfig.
This also adds comments to mark each section separately.
Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
Reviewed-by: Dirk Wallenstein <halsmit@t-online.de>
|
|
The driver metamodule was separated from the module definitions by the
font section.
Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
Reviewed-by: Dirk Wallenstein <halsmit@t-online.de>
|
|
The rest of the X.Org font modules aren't built as part of the xorg-fonts
metamodule, but they should be buildable from jhbuild.
Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
Reviewed-by: Dirk Wallenstein <halsmit@t-online.de>
|
|
The font modules seemed to be in a random order and had inconsistent
names. adobe-75dpi corresponds to the tarball font-adobe-75dpi, yet
fonts-cursor corresponds to the tarball font-cursor-misc. Instead, the
tarball names will be used.
Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
Reviewed-by: Dirk Wallenstein <halsmit@t-online.de>
|
|
Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
Reviewed-by: Dirk Wallenstein <halsmit@t-online.de>
|
|
If they're good enough to make a X.Org release, they're good enough to
be build tested.
Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
Reviewed-by: Dirk Wallenstein <halsmit@t-online.de>
|
|
Since the openchrome driver is being distributed in the katamari, it
makes sense to build it here even if it's not under X.Org.
The openchrome svn setup is a little unusual. Rather than having the
code in it's own project subdirectory, it's directly in the root "svn"
directory. If "svn" is used as the branch module, jhbuild will use the
trunk or branches directories as directed by the revision attribute.
Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
Reviewed-by: Dirk Wallenstein <halsmit@t-online.de>
|
|
This is also part of the katamari, so include it in the xorg-apps
metamodule.
Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
Reviewed-by: Dirk Wallenstein <halsmit@t-online.de>
|
|
Currently xcb/util is the first package to use a git submodule.
When cloning, the script will init and update the submodule.
Older versions of git do not have --recursive option for git clone.
When using -p (pull rebase), the script will update the submodule.
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
|
|
All the other modules depend on the one with the "libxtrans" id.
Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
Reviewed-by: Dirk Wallenstein <halsmit@t-online.de>
|
|
Since all the modules use fdo's git, the moduleset can be a lot cleaner.
Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
Reviewed-by: Dirk Wallenstein <halsmit@t-online.de>
|
|
Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
Reviewed-by: Dirk Wallenstein <halsmit@t-online.de>
|
|
This is not needed since xlsclients commits 223851b6 and FIXME removed
the usage of xcb-atom.
Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
|