No Tags

Frequently used words (click to add to your profile)

javaandroidc++linuxc#windowsobjective-ccocoaqtpython誰得phprubygameguibathyscaphec計画中(planning stage)翻訳omegatframeworktwitterdomtestvb.netdirectxゲームエンジンbtronarduinopreviewer

Recent Chamber Activity


Recent Wiki Changes


Wiki Guide

Side Bar

MinGW Package Builder Tool

  • R/O
  • R/O (HTTP)
  • R/W (SSH)
  • R/W (HTTPS)

What is mingw-pkg?

Initially developed as a tool for use by MinGW Project Maintainers, mingw-pkg is a modular Bourne shell script application suite, which may be used to facilitate the construction of binary packages such as those which are distributed from the MinGW.OSDN software repositories; the content of each distributable package is determined by parsing of a machine-readable "package specification" file, which is also designed to be readily "human-intelligible".

Facilitated by the bundled mingw-port command, in addition to its originally intended function, mingw-pkg also provides the build time infrastructure, for deployment by regular MinGW users, which is required to build those MinGW contributed packages which are distributed in the form of mingw-ports; as such it supersedes the old mingwPORT and mgwport package building frameworks.


mingw-pkg [option ] ... [var=value ] ... action ...

mingw-port [option ] ... pkgname-version

logmsg [option ] ... [changelog-path ]


The mingw-pkg command provides the primary user interface to the application suite; controlled by a selection of action keywords, and directed by a package specification file, it affords the following capabilities:

  • Import of source code from an upstream project archive, and preparation of a local source code tree.
  • Optional integration with mercurial or git, for management of local changes to the upstream source code.
  • Directed application of a sequence of patches, optionally managed by Mercurial Queues, or Git-MQ, to the local source code tree.
  • Directed configuration, in accordance with options specified in the package specification file, to create a working build tree based on the local source code tree.
  • Compilation of code, within the build tree, under optional direction by the package specification file.
  • Installation of the "as-built" working code, optionally staging for distribution.
  • Preparation of (optionally signed) MinGW-specific package sets, for distribution; (requires either mercurial or git integration).

The mingw-port command is implemented on top of mingw-pkg. Specifically intended for building packages which are published as mingw-ports, it performs the following sequence of operations:

  • Acquires the mingw-port package file, downloading from the MinGW.OSDN archive site if necessary, and unpacks it, to initialize a local source code tree.
  • Acquires the upstream source code archive, as directed by the package specification contained within the mingw-port package, and unpacks it, to complete instantiation of the local source code tree.
  • Applies any sequence of patches, which may be included within the mingw-port package, to the local source code tree.
  • Configures a working build tree, as directed by configuration options specified in the package specification file from the mingw-port package.
  • Compiles the source code, as directed by the configuration of the working build tree.

The logmsg command is a utility script. It reads the topmost entry from a ChangeLog file, in standard GNU ChangeLog format, and reformats it in a style suitable for use as a Mercurial or Git commit log message, or patch header message. It also provides a separate, optional capability to extract the user identification, from the topmost ChangeLog entry, for possible use as the author identification for a Mercurial or Git commit.

Release Files

FilenameSizeTimeDownload count
mingw-pkg-1.0-rc-2-src.tar.xz46.44 k2020-08-24 03:41:1228
mingw-pkg-1.0-rc-2-bin.tar.xz.sig5872020-08-24 03:41:1123
mingw-pkg-1.0-rc-2-bin.tar.xz23.69 k2020-08-24 03:41:1129
mingw-pkg-1.0-rc-2-src.tar.xz.sig5872020-08-24 03:41:1132
mingw-pkg-1.0-rc-1-bin.tar.xz22.3 k2020-04-15 03:22:4133
mingw-pkg-1.0-rc-1-src.tar.xz44.88 k2020-04-15 03:22:3438
mingw-pkg-1.0-rc-1-bin.tar.xz.sig5872020-04-15 03:22:2642
mingw-pkg-1.0-rc-1-src.tar.xz.sig5872020-04-15 03:22:2026
pthreads-win32-2.10-mingw32-port.tar.xz25.68 k2018-01-24 01:56:4970
pthreads-win32-2.10-pre.tar.xz318.76 k2018-01-17 22:14:5559

Recent Commits

Rev.TimeAuthorMessage RSS
3db4e23b2022-03-13 05:04:37Keith MarshallOptimize program configuration procedure. * src/modules/...
e61d07792022-03-12 19:30:54Keith MarshallIdentify mkspec target directory more intelligently. * s...
287045332022-03-12 08:32:28Keith MarshallAdd mkspec "--edit" and "--force-overwrite" options. * s...
124bb57b2022-03-11 05:46:28Keith MarshallAvoid accidental overwrite of pkgspec files. * src/modul...
9f4f712a2022-03-11 04:31:57Keith MarshallEncapsulate component package examples within comments. ...
62159e132022-03-09 23:43:21Keith MarshallHonour "--identity" option for specification file name. ...
5abdb0c82022-03-09 06:58:56Keith MarshallAvoid duplication of diagnostic message functions. * src...
80a77de82022-03-07 22:02:27Keith MarshallDon't track autoconf backup files in SCM. * .hgignore (*...
31e1a0102022-03-07 21:51:44Keith MarshallVerify accessibility of git and hg root directories. * s...
ab99dcb22022-03-06 07:38:46Keith MarshallImprove source directory identification mechanisms. * sr...

Recently Updated Tickets

No tickets