Browse Source

Merge pull request #199 from rafael2k/master

refactor debian packaging split binaries, libraries, headers
deb-packaging
mstroh76 7 months ago
committed by GitHub
parent
commit
faf5084992
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
13 changed files with 87 additions and 73 deletions
  1. +3
    -4
      debian/changelog
  2. +1
    -1
      debian/compat
  3. +31
    -22
      debian/control
  4. +23
    -12
      debian/copyright
  5. +2
    -3
      debian/libwiringpi-dev.install
  6. +0
    -1
      debian/libwiringpi2.install
  7. +0
    -2
      debian/libwiringpi2.shlibs
  8. +1
    -0
      debian/libwiringpi3.install
  9. +2
    -0
      debian/libwiringpi3.shlibs
  10. +20
    -25
      debian/rules
  11. +1
    -0
      debian/source/format
  12. +2
    -0
      debian/wiringpi.docs
  13. +1
    -3
      debian/wiringpi.install

+ 3
- 4
debian/changelog View File

@@ -1,6 +1,5 @@
wiringpi (2.26~iwj) rpi-unstable; urgency=low
wiringpi (3.2-1) stable; urgency=low

* Initial version with real Debian source package build.

-- Ian Jackson <ijackson@chiark.greenend.org.uk> Sat, 12 Sep 2015 18:31:35 +0100
* New maintainers. Support for Pi 5 and many improvements.

-- Rafael Diniz <rafael@rhizomatica.org> Tue, 26 Mar 2024 22:31:31 +0000

+ 1
- 1
debian/compat View File

@@ -1 +1 @@
8
10

+ 31
- 22
debian/control View File

@@ -1,29 +1,38 @@
Source: wiringpi
Section: electronics
Priority: optional
Maintainer: Ian Jackson <ijackson@chiark.greenend.org.uk>
Standards-Version: 3.8.0
Homepage: https://github.com/WiringPi/WiringPi
Build-Depends: debhelper (>= 8)

Package: libwiringpi2
Maintainer: The WiringPi Community <wiringpi@gc2.at>
Build-Depends: debhelper (>= 10)
Standards-Version: 4.1.2
Section: libs
Architecture: armhf
Homepage: https://wiringpi.com/
Vcs-Browser: https://github.com/WiringPi/WiringPi/

Package: libwiringpi-dev
Section: libdevel
Architecture: any
Multi-Arch: same
Depends: libwiringpi3 (= ${binary:Version}), ${misc:Depends}
Description: Raspberry Pi library for controlling GPIO devices
A Raspberry Pi specific library for querying and controlling the GPIO pins,
and a variety of devices that connect to them from C, C++, or BASIC.
.
This package contains the development files (headers, etc.) for compiling
applications against libwiringPi.

Package: libwiringpi3
Architecture: any
Multi-Arch: same
Depends: ${shlibs:Depends}, ${misc:Depends}
Description: GPIO librariees for Raspberry Pi (runtime).
Runtime for the popular wiringPi library.
Description: Raspberry Pi library for controlling GPIO devices
A Raspberry Pi specific library for querying and controlling the GPIO pins,
and a variety of devices that connect to them from C, C++, or BASIC.
.
This package contains the shared libraries libwiringPi and libwiringPiDev.

Package: wiringpi
Architecture: armhf
Architecture: any
Multi-Arch: foreign
Depends: ${shlibs:Depends}, ${misc:Depends}
Description: gpio utility for Raspberry Pi
The wiringPi gpio command line utility, for GPIO access on a
Raspberry Pi from the command line.

Package: libwiringpi-dev
Architecture: armhf
Depends: libwiringpi2 (= ${binary:Version}), libc6-dev, ${misc:Depends}
Suggests: wiringpi
Description: GPIO development library for Raspberry Pi
Development libraries to allow GPIO access on a Raspberry Pi from C
and C++ programs.
Description: Raspberry Pi tool for controlling GPIO devices
A command line utility for querying and controlling the GPIO pins from the
shell.

+ 23
- 12
debian/copyright View File

@@ -1,15 +1,26 @@
wiringPi is Copyright (C) 2012-2015 Gordon Henderson.
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Upstream-Name: wiringpi
Source: https://github.com/WiringPi/WiringPi

wiringPi is free software; you can redistribute it and/or modify it
under the terms of the GNU Lesser General Public License, as published
by the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
Files: *
Copyright: 2009-2018 Gordon Henderson <projects@drogon.net>
2024 The WiringPi Community <wiringpi@gc2.at>
License: LGPL-3.0+

wiringPi is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Lesser General Public License for more details.

On all Debian and Raspbian systems, a copy of the GNU Lesser General
Public License version 3 can be found in
`/usr/share/common-licenses/LGPL-3'.
License: LGPL-3.0+
This package is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 3 of the License, or (at your option) any later version.
.
This package is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
.
You should have received a copy of the GNU Lesser General Public License
along with this program. If not, see <https://www.gnu.org/licenses/>.
.
On Debian systems, the complete text of the GNU Lesser General
Public License can be found in "/usr/share/common-licenses/LGPL-3".

+ 2
- 3
debian/libwiringpi-dev.install View File

@@ -1,3 +1,2 @@
debian/tmp/usr/include
debian/tmp/usr/lib/*.so
examples usr/share/doc/libwiringpi-dev
usr/include/*
usr/lib/*/lib*.so

+ 0
- 1
debian/libwiringpi2.install View File

@@ -1 +0,0 @@
debian/tmp/usr/lib/lib*.so.*

+ 0
- 2
debian/libwiringpi2.shlibs View File

@@ -1,2 +0,0 @@
libwiringPi 2 libwiringpi2
libwiringPiDev 2 libwiringpi2

+ 1
- 0
debian/libwiringpi3.install View File

@@ -0,0 +1 @@
usr/lib/*/lib*.so.*

+ 2
- 0
debian/libwiringpi3.shlibs View File

@@ -0,0 +1,2 @@
libwiringPi 3 libwiringpi3
libwiringPiDev 3 libwiringpi3

+ 20
- 25
debian/rules View File

@@ -1,19 +1,22 @@
#!/usr/bin/make -f
# See debhelper(7) (uncomment to enable)
# output every command that modifies files on the build system.
#export DH_VERBOSE = 1

.PHONY: build
# These won't do anything until the Makefiles are fixed
#export DEB_BUILD_MAINT_OPTIONS = hardening=+all
#export DEB_CFLAGS_MAINT_APPEND = -Wall -pedantic
#export DEB_LDFLAGS_MAINT_APPEND = -Wl,--as-needed

VERSION:=$(shell cat VERSION)
export VERSION

soname:=$(shell echo $${VERSION%%.*})
WIRINGPI_SONAME_SUFFIX:=.$(soname)
export soname
MAJOR:=$(shell echo $${VERSION%%.*})
WIRINGPI_SONAME_SUFFIX:=.$(MAJOR)
export WIRINGPI_SONAME_SUFFIX

build:
dh $@

override_dh_auto_configure:
%:
dh $@

override_dh_prep:
dh_prep -Xdebian/tmp
@@ -21,29 +24,21 @@ override_dh_prep:
dirs:
dh_installdirs -A
mkdir debian/tmp
set -e; for p in `dh_listpackages`; do \
(cd debian/$$p; find -type d) | \
set -e; for pkg in `dh_listpackages`; do \
(cd debian/$$pkg; find -type d) | \
(cd debian/tmp; xargs mkdir -p) \
done
mkdir -p debian/tmp/usr/lib/$(DEB_TARGET_GNU_TYPE)/

override_dh_clean:
dh_clean
WIRINGPI_SUDO= bash -xe ./build clean
WIRINGPI_SUDO= sh -xe ./build clean

override_dh_auto_build: dirs
V=1 LDCONFIG=: WIRINGPI_SUDO= WIRINGPI_SUID=0 \
DESTDIR=`pwd`/debian/tmp/usr \
PREFIX= WIRINGPI_SUDO= \
bash -xe ./build

override_dh_auto_install:
dh_install
set -ex; for l in libwiringPi libwiringPiDev; do \
ln -sf $$l.so.$${VERSION} \
debian/libwiringpi$$soname/usr/lib/$$l.so.$$soname; \
ln -sf $$l.so.$${VERSION} \
debian/libwiringpi-dev/usr/lib/$$l.so; \
DESTDIR=`pwd`/debian/tmp/usr PREFIX= sh -xe ./build
mv `find debian/tmp/usr/lib -type f` debian/tmp/usr/lib/$(DEB_TARGET_GNU_TYPE)/
set -ex; for lib in `find debian/tmp/usr/lib/$(DEB_TARGET_GNU_TYPE)/ -type f`; do \
ln -s $${lib##*/} $${lib%%.$(VERSION)}; \
ln -s $${lib##*/} $${lib%%.$(VERSION)}.$(MAJOR); \
done

%:
dh $@

+ 1
- 0
debian/source/format View File

@@ -0,0 +1 @@
3.0 (quilt)

+ 2
- 0
debian/wiringpi.docs View File

@@ -0,0 +1,2 @@
README.md
People

+ 1
- 3
debian/wiringpi.install View File

@@ -1,4 +1,2 @@
debian/tmp/usr/bin
debian/tmp/usr/man usr/share
README.TXT usr/share/doc/wiringpi
People usr/share/doc/wiringpi
debian/tmp/usr/share

Loading…
Cancel
Save