EnglishFrenchSpanish

Ad


OnWorks favicon

dh_ada_library - Online in the Cloud

Run dh_ada_library in OnWorks free hosting provider over Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator

This is the command dh_ada_library that can be run in the OnWorks free hosting provider using one of our multiple free online workstations such as Ubuntu Online, Fedora Online, Windows online emulator or MAC OS online emulator

PROGRAM:

NAME


dh_ada_library - help packaging Ada libraries for Debian

SYNOPSIS


dh_ada_library [debhelper options] [[variable=value ...] project.gpr] ...

DESCRIPTION


dh_ada_library is a debhelper program that handles some common tasks in packaging
libraries written in the Ada programming language.

Each project.gpr argument designates a GNAT project file building a shared library
provided by the source package. Since using environment variables in such projects is
common practice, a list of variable assignments may be provided before each project.

dh_ada_library reads each project file and extracts the following information from it:
library name, imported projects, source directories, library directory, object directory
(containing ALI files) and linker options (both Leading_Library_Options and
Library_Options). Then it parses debian/control to check that three package names exist
conforming to the Coexistence Not Allowed naming scheme described in the Debian Policy for
Ada and extracts the ALI files version (aliversion)) and the shared library version
(soversion). Then, dh_ada_library processes each of the three packages as follows:

Runtime library package
dh_ada_library installs the shared library (mode 644) into the package then runs dh_strip
with options storing its debugging information into the -dbg package.

If the shared library declares its stack executable, dh_ada_library generates a lintian
override for the runtime library package about GNAT using trampolines for exception
handling. dh_lintian is run first so that it will not overwrite the override file later.

Debugging symbols (-dbg) package
The ada:Depends, ada:Recommends, ada:Suggests substitution variables receive values
reflecting that the -dbg package depends on the library package, recommends the -dev
package and suggests the gnat package.

Versions <= 5.3 used to replace the documentation directory with a symbolic link to the
one in the runtime library package, but usage has shown that linking directories caused
upgrade problems. If a binary package built with such a version has been released, the
source package should add maintainer scripts as described in
https://wiki.debian.org/MissingCopyrightFile.

Development package (-dev)
First, dh_ada_library installs the usual development symbolic link (*.so->
*.so.soversion), ALI files (mode 444) and sources (mode 644) into the -dev package.
Languages other than Ada listed in the project file are taken into account, whether they
have been previously dealt with by gprbuild, or ignored by gnatmake and compiled
separately. Then it looks for a file named libLIBRARY_NAME.a (the static library) in the
current directory or its subdirectories and installs this file (mode 644) into the -dev
package.

A second project file, intended for use by programs linking against the library, is
generated and installed into the -dev package. The Linker package of the new project
inherits any -l or -L linker options from Leading_Library_Options and Library_Options
attributes of the build project file.

Each renaming exception is transmitted to the generated project.

dh_ada_library runs dh_strip before installing the static library so that the latter keeps
its debugging information.

The ada:Depends substitution variable receives a value reflecting that the package depends
on gnat, gnat-X.Y and the library package. For each imported library project recognized,
either as already processed or installed on the build system by dpkg-query, a dependency
is added into ada:Depends and the generated project is added the corresponding with line.
In the case of an already processed project within the same source package, the dependency
mandates an exact binary:Version, ensuring that all static libraries are compiled with
compatible options.

REMARKS


This program does not belong to the debhelper suite. To activate it, please run the dh
sequencer with the --with ada-library option.

The Library_Version project attribute is purposedly ignored. Instead, the soname is
guessed from the library package name. For projects needing an external variable
definition to set this attribute, any arbitrary value may be given. This will often allow
the maintainer to use a simple debian/ada_libraries file instead of a debhelper override
or an environment variable exportation.

Both libraries and ALI files are installed into /usr/lib/DEB_HOST_MULTIARCH, the project
and sources into /usr/share/ada/adainclude. This implies that the -dev package cannot be
declared Multi-Arch: same as the content of the project (and maybe of generated sources)
will vary across architectures.

Use dh_ada_library online using onworks.net services


Free Servers & Workstations

Download Windows & Linux apps

  • 1
    VASSAL Engine
    VASSAL Engine
    VASSAL is a game engine for creating
    electronic versions of traditional board
    and card games. It provides support for
    game piece rendering and interaction,
    and...
    Download VASSAL Engine
  • 2
    OpenPDF - Fork of iText
    OpenPDF - Fork of iText
    OpenPDF is a Java library for creating
    and editing PDF files with a LGPL and
    MPL open source license. OpenPDF is the
    LGPL/MPL open source successor of iText,
    a...
    Download OpenPDF - Fork of iText
  • 3
    SAGA GIS
    SAGA GIS
    SAGA - System for Automated
    Geoscientific Analyses - is a Geographic
    Information System (GIS) software with
    immense capabilities for geodata
    processing and ana...
    Download SAGA GIS
  • 4
    Toolbox for Java/JTOpen
    Toolbox for Java/JTOpen
    The IBM Toolbox for Java / JTOpen is a
    library of Java classes supporting the
    client/server and internet programming
    models to a system running OS/400,
    i5/OS, o...
    Download Toolbox for Java/JTOpen
  • 5
    D3.js
    D3.js
    D3.js (or D3 for Data-Driven Documents)
    is a JavaScript library that allows you
    to produce dynamic, interactive data
    visualizations in web browsers. With D3
    you...
    Download D3.js
  • 6
    Shadowsocks
    Shadowsocks
    A fast tunnel proxy that helps you
    bypass firewalls This is an application
    that can also be fetched from
    https://sourceforge.net/projects/shadowsocksgui/.
    It ha...
    Download Shadowsocks
  • More »

Linux commands

Ad