https://github.com/wincent/buildtools
Build scripts and configuration for use across all Wincent projects
https://github.com/wincent/buildtools
Last synced: 10 months ago
JSON representation
Build scripts and configuration for use across all Wincent projects
- Host: GitHub
- URL: https://github.com/wincent/buildtools
- Owner: wincent
- License: bsd-2-clause
- Created: 2009-05-13T21:51:01.000Z (about 17 years ago)
- Default Branch: master
- Last Pushed: 2024-03-28T21:20:19.000Z (about 2 years ago)
- Last Synced: 2025-01-05T15:43:34.511Z (over 1 year ago)
- Language: Shell
- Homepage: http://www.wincent.com/a/products/buildtools/
- Size: 252 KB
- Stars: 2
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.txt
- License: LICENSE.txt
Awesome Lists containing this project
README
BUILDTOOLS INTRODUCTION
The Wincent Buildtools (from here on referred to as "buildtools") is a
collection of scripts, tools and configuration files used in the build
processes of a number of Wincent products (for a full product listing see
https://wincent.dev/). buildtools is licensed under the simplified BSD
license (see the file, LICENSE.txt).
I maintain these tools as a separate package for two reasons: firstly, because
they allow frequently-used tools and configuration information to be stored in a
central location rather than replicated across projects, and secondly, because
I wanted to release the source code to some software I was developing under the
GPL (specifically, WOTest), so it made sense to release the toolset required to
build the software under the same terms.
There are two non-standard executables that some buildtools scripts depend
on (they expect to find them in the PATH), "wincent-strings-util" and
"wincent-icon-util". The former, Wincent Strings Utility, is a separate project,
licensed under the GPL. More information can be obtained from the project
website. The latter, Wincent Icon Utility, is also a separate project licensed
under the GPL but there is no project website for it at the moment.
SOURCE CODE REPOSITORY
The official buildtools Git repository can be cloned using:
git clone git://git.wincent.dev/buildtools.git
At the time of writing, there are three branches in the repository:
- master: cutting edge development corresponding to the latest version of Mac
OS X (currently Mac OS X 10.6 Snow Leopard)
- maint: stable development line, usually only a few commits behind "master"
- leopard: maintenance branch, unlikely to receive many updates
As buildtools serves as support for other products, buildtools "releases" as
such are never tagged. You will, however, find tags such as "Synergy-3.5a5"
which are used to record which version of buildtools was used to build the
other product.
INSTRUCTIONS FOR USE
The purpose and operation of most of the scripts are self-explanatory. The
scripts have been designed for use with Wincent projects and require a specific
filesystem layout (as described below). Use with Wincent projects should be
straightforward; use in other contexts may require modifications to be made.
ABOUT THE FILESYSTEM LAYOUT
These buildtools are designed to work with multiple projects sharing a common
directory structure, including a shared built products directory and a shared
build intermediates directory. The base layout used by Wincent consists of the
following directories at the topmost level:
build
build-intermediates
Project folders also sit at the topmost level. Most Wincent products use the
following layout for project folders:
Project/src
Project/extra
Files checked out from the repository (generally all those necessary to build
the project) are stored in the "src" subdirectory. All other ancillary
materials (generally nothing necessary to build the project), if any, are
stored in the "extra" subdirectory.
The buildtools themselves are generally included in each project via the Git
submodule mechanism, inside the "src" folder for the project:
Project/src/buildtools
This layout ensures that all projects have the same relative paths to the build
and build-intermediates directories; that is, from the "src" directory of each
project the relative paths are:
../../build
../../build-intermediates
AUTHOR
Greg Hurrell
greg@hurrell.net
https://wincent.dev/