These are not the same packages as the ones from various
distributions' repositories. These packages carry an higher
internal revision level in order to prevent them from getting
upgraded by the distribution packaging. This packaging exists
in order to have a convenient way of updating after a release
without waiting for the distribution's package to get
built.
Note
If a distribution package is already installed it should
be removed completely before switching to the upstream
version (dnf remove or apt purge). Preserve any existing
configuration files, beforehand, in order to reconfigure
the package.
Note
These packages use their own, generic, installation
layout that may deviate slightly from the package
installation conventions that's preferred by the
distributions.
It is not necessary to unpack this tarball in order to
build this tarball.
Run “dnf install
rpm-build” if it's not installed already,
then:
If this fails due to any missing dependencies, install
them. This builds the main “courier-unicode”
package with runtime libraries, and the “courier-unicode-devel” package with
link libraries and header files.
Setting the “compat 1” flag during an RPM build
produces a differently-named “compatibility”
runtime package, with its version as part of the package's
name. The compatibility package gets installed together
with the newer version of this library that introduces a
binary ABI change. This supports a transition period during
which other software that's built to the compatibility
package's ABI version continue to load the compatibility
package's library at runtime, while new software can be
built against the newer ABI.
Run “apt install
devscripts debhelper”, if it's not installed
already. Create an empty directory, and copy/move the
tarball into it:
Unpack the tarball and cd into the unpacked
subdirectory:
Run the courier-debuild script,
which is a wrapper for debuild, and forwards its
parameters to it:
Note
The above steps must be followed strictly. The
courier-debuild script
expects the distributed tarball in its parent
directory.
This eventually produces a deb subdirectory with .deb
packages that can be installed with "dpkg -i":
-
The “libcourier-unicode-dev” package
contains the development libraries and header files,
for building other packages that use the Courier
Unicode Library.
-
The “libcourier-unicode<N>
”
package contains the runtime library.
Setting the DEBGCC
environment variable selects a non-default gcc version.
Note
All Courier packages should be built using the same
version of gcc.
The library uses a stock configure script, make and make install command that
respects the DESTDIR
setting to
create an installation image in the directory specified by
DESTDIR
.
Note
make
install does not take any explicit action
to uninstall any older version of the library, or remove
any files from an older version that do not exist any more
in the new version. Use the created installation image to
prepare an installable package in a native package format
for your operating system distribution. Use your
distribution's native package manager to properly install
and update this library.
Maintainer Mode (see README in the
git repository to set up)
make rpm or
make deb, as
appropriate, will:
-
Increment an internal release number.
-
Run make
dist.
-
Proceed and build a new release, creating the native
packages in the rpm or deb subdirectory.
-
Execute either $HOME/bin/rpmrepos.sh
or $HOME/bin/debrepos.sh.
This can be a script that does nothing, or it's
intended to be the maintainer's script that pushes out
the packages to a repository.