-
Notifications
You must be signed in to change notification settings - Fork 95
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
add meson support #691
Open
christianrauch
wants to merge
4
commits into
ros-infrastructure:master
Choose a base branch
from
christianrauch:meson
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
add meson support #691
Changes from all commits
Commits
Show all changes
4 commits
Select commit
Hold shift + click to select a range
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
@[for change_version, change_date, changelog, main_name, main_email in changelogs]@(Package) (@(change_version)@(DebianInc)@(Distribution)) @(Distribution); urgency=high | ||
|
||
@(changelog) | ||
|
||
-- @(main_name) <@(main_email)> @(change_date) | ||
|
||
@[end for] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
@(debhelper_version) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
Source: @(Package) | ||
Section: misc | ||
Priority: optional | ||
Maintainer: @(Maintainer) | ||
Build-Depends: debhelper (>= @(debhelper_version).0.0), @(', '.join(BuildDepends)) | ||
Homepage: @(Homepage) | ||
Standards-Version: 4.6.0 | ||
|
||
Package: @(Package) | ||
Architecture: any | ||
Depends: ${shlibs:Depends}, ${misc:Depends}, @(', '.join(Depends)) | ||
@[if Conflicts]Conflicts: @(', '.join(Conflicts))@\n@[end if]@ | ||
@[if Replaces]Replaces: @(', '.join(Replaces))@\n@[end if]@ | ||
Description: @(Description) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,11 @@ | ||
Format: Bloom subset of https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ | ||
Upstream-Name: @(Name) | ||
@[if BugTracker]Upstream-Contact: @(BugTracker)@\n@[end if]@ | ||
@[if Source]Source: @(Source)@\n@[end if]@ | ||
@[for License, Text in Licenses]@ | ||
|
||
Files: See file headers in repository for details | ||
Copyright: See package copyright in source code for details | ||
License: @(License) | ||
@(Text) | ||
@[end for]@ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
[git-buildpackage] | ||
upstream-tag=@(release_tag) | ||
upstream-tree=tag |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,52 @@ | ||
#!/usr/bin/make -f | ||
# -*- makefile -*- | ||
# Sample debian/rules that uses debhelper. | ||
# This file was originally written by Joey Hess and Craig Small. | ||
# As a special exception, when this file is copied by dh-make into a | ||
# dh-make output file, you may use that output file without restriction. | ||
# This special exception was added by Craig Small in version 0.37 of dh-make. | ||
|
||
# Uncomment this to turn on verbose mode. | ||
export DH_VERBOSE=1 | ||
# TODO: remove the LDFLAGS override. It's here to avoid esoteric problems | ||
# of this sort: | ||
# https://code.ros.org/trac/ros/ticket/2977 | ||
# https://code.ros.org/trac/ros/ticket/3842 | ||
export LDFLAGS= | ||
export PKG_CONFIG_PATH=@(InstallationPrefix)/lib/pkgconfig | ||
# Explicitly enable -DNDEBUG, see: | ||
# https://github.com/ros-infrastructure/bloom/issues/327 | ||
export DEB_CXXFLAGS_MAINT_APPEND=-DNDEBUG | ||
|
||
# Solve shlibdeps errors in REP136 packages that use GNUInstallDirs: | ||
export DEB_HOST_MULTIARCH := $(shell dpkg-architecture -qDEB_HOST_MULTIARCH) | ||
|
||
DEB_HOST_GNU_TYPE ?= $(shell dpkg-architecture -qDEB_HOST_GNU_TYPE) | ||
|
||
%: | ||
dh $@@ -v --buildsystem=meson --builddirectory=.obj-$(DEB_HOST_GNU_TYPE) | ||
|
||
override_dh_auto_configure: | ||
if [ -f "@(InstallationPrefix)/setup.sh" ]; then . "@(InstallationPrefix)/setup.sh"; fi && \ | ||
dh_auto_configure -- \ | ||
--prefix="@(InstallationPrefix)" \ | ||
--cmake-prefix-path="@(InstallationPrefix)" \ | ||
--libdir=lib \ | ||
--libexecdir=lib | ||
|
||
override_dh_auto_build: | ||
if [ -f "@(InstallationPrefix)/setup.sh" ]; then . "@(InstallationPrefix)/setup.sh"; fi && \ | ||
dh_auto_build | ||
|
||
override_dh_auto_test: | ||
echo -- Running tests. Even if one of them fails the build is not canceled. | ||
if [ -f "@(InstallationPrefix)/setup.sh" ]; then . "@(InstallationPrefix)/setup.sh"; fi && \ | ||
dh_auto_test || true | ||
|
||
override_dh_shlibdeps: | ||
if [ -f "@(InstallationPrefix)/setup.sh" ]; then . "@(InstallationPrefix)/setup.sh"; fi && \ | ||
dh_shlibdeps -l$(CURDIR)/debian/@(Package)/@(InstallationPrefix)/lib/:$(CURDIR)/debian/@(Package)/@(InstallationPrefix)/lib/${DEB_HOST_MULTIARCH} | ||
|
||
override_dh_auto_install: | ||
if [ -f "@(InstallationPrefix)/setup.sh" ]; then . "@(InstallationPrefix)/setup.sh"; fi && \ | ||
dh_auto_install |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
3.0 (@(format)) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,6 @@ | ||
@[if format and format == 'quilt']@ | ||
# Automatically add upstream changes to the quilt overlay. | ||
# http://manpages.ubuntu.com/manpages/trusty/man1/dpkg-source.1.html | ||
# This supports reusing the orig.tar.gz for debian increments. | ||
auto-commit | ||
@[end if] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,80 @@ | ||
%bcond_without tests | ||
%bcond_without weak_deps | ||
|
||
%global __os_install_post %(echo '%{__os_install_post}' | sed -e 's!/usr/lib[^[:space:]]*/brp-python-bytecompile[[:space:]].*$!!g') | ||
%global __provides_exclude_from ^@(InstallationPrefix)/.*$ | ||
%global __requires_exclude_from ^@(InstallationPrefix)/.*$ | ||
|
||
Name: @(Package) | ||
Version: @(Version) | ||
Release: @(RPMInc)%{?dist}%{?release_suffix} | ||
Summary: ROS @(Name) package | ||
|
||
License: @(License) | ||
@[if Homepage and Homepage != '']URL: @(Homepage)@\n@[end if]@ | ||
Source0: %{name}-%{version}.tar.gz | ||
@[if NoArch]@\nBuildArch: noarch@\n@[end if]@ | ||
|
||
@[for p in Depends]Requires: @p@\n@[end for]@ | ||
@[for p in BuildDepends]BuildRequires: @p@\n@[end for]@ | ||
@[for p in Conflicts]Conflicts: @p@\n@[end for]@ | ||
@[for p in Replaces]Obsoletes: @p@\n@[end for]@ | ||
@[for p in Provides]Provides: @p@\n@[end for]@ | ||
@[if TestDepends]@\n%if 0%{?with_tests} | ||
@[for p in TestDepends]BuildRequires: @p@\n@[end for]@ | ||
%endif@\n@[end if]@ | ||
@[if Supplements]@\n%if 0%{?with_weak_deps} | ||
@[for p in Supplements]Supplements: @p@\n@[end for]@ | ||
%endif@\n@[end if]@ | ||
|
||
%description | ||
@(Description) | ||
|
||
%prep | ||
%autosetup -p1 | ||
|
||
%build | ||
# override macro | ||
%define __meson_auto_features auto | ||
# In case we're installing to a non-standard location, look for a setup.sh | ||
# in the install tree and source it. It will set things like | ||
# CMAKE_PREFIX_PATH, PKG_CONFIG_PATH, and PYTHONPATH. | ||
if [ -f "@(InstallationPrefix)/setup.sh" ]; then . "@(InstallationPrefix)/setup.sh"; fi | ||
# call meson executable instead of using the 'meson' macro to use default paths | ||
%__meson setup \ | ||
--prefix="@(InstallationPrefix)" \ | ||
--cmake-prefix-path="@(InstallationPrefix)" \ | ||
--libdir=lib \ | ||
--libexecdir=lib \ | ||
%{_vpath_builddir} | ||
%meson_build | ||
|
||
%install | ||
# In case we're installing to a non-standard location, look for a setup.sh | ||
# in the install tree and source it. It will set things like | ||
# CMAKE_PREFIX_PATH, PKG_CONFIG_PATH, and PYTHONPATH. | ||
if [ -f "@(InstallationPrefix)/setup.sh" ]; then . "@(InstallationPrefix)/setup.sh"; fi | ||
%meson_install | ||
|
||
%if 0%{?with_tests} | ||
%check | ||
# Look for a Makefile target with a name indicating that it runs tests | ||
TEST_TARGET=$(%__ninja -C %{_vpath_builddir} -t targets | sed "s/^\(test\|check\):.*/\\1/;t f;d;:f;q0") | ||
if [ -n "$TEST_TARGET" ]; then | ||
# In case we're installing to a non-standard location, look for a setup.sh | ||
# in the install tree and source it. It will set things like | ||
# CMAKE_PREFIX_PATH, PKG_CONFIG_PATH, and PYTHONPATH. | ||
if [ -f "@(InstallationPrefix)/setup.sh" ]; then . "@(InstallationPrefix)/setup.sh"; fi | ||
%meson_test || echo "RPM TESTS FAILED" | ||
else echo "RPM TESTS SKIPPED"; fi | ||
%endif | ||
|
||
%files | ||
@[for lf in LicenseFiles]%license @lf@\n@[end for]@ | ||
@(InstallationPrefix) | ||
|
||
%changelog@ | ||
@[for change_version, (change_date, main_name, main_email) in changelogs] | ||
* @(change_date) @(main_name) <@(main_email)> - @(change_version) | ||
- Autogenerated by Bloom | ||
@[end for] |
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for this correction. Markdown and RST files in ros-infrastructure projects use "semantic line breaks" with one sentence per line.
So the preferred fix would be:
However in #702 I've expanded and rephrased this section so if this PR merges first then I'll correct it there after resolving any potential conflicts so this does not block.