Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in / Register
Toggle navigation
L
libzmq
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Packages
Packages
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
submodule
libzmq
Commits
f9b0945c
Commit
f9b0945c
authored
Jan 20, 2019
by
Luca Boccassi
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Problem: have to check ABI compatibility manually
Solution: automate it on Travis
parent
331fee4b
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
48 additions
and
0 deletions
+48
-0
.travis.yml
.travis.yml
+8
-0
ci_build.sh
builds/abi-compliance-checker/ci_build.sh
+40
-0
No files found.
.travis.yml
View file @
f9b0945c
...
...
@@ -124,6 +124,14 @@ matrix:
-
libnorm-dev
-
libpgm-dev
-
libsodium-dev
-
env
:
BUILD_TYPE=abi-compliance-checker
os
:
linux
dist
:
xenial
addons
:
apt
:
packages
:
-
abi-dumper
-
abi-compliance-checker
sudo
:
false
...
...
builds/abi-compliance-checker/ci_build.sh
0 → 100755
View file @
f9b0945c
#!/usr/bin/env bash
set
-x
cd
../../
mkdir
tmp
BUILD_PREFIX
=
$PWD
/tmp
CONFIG_OPTS
=()
CONFIG_OPTS+
=(
"CFLAGS=-I
${
BUILD_PREFIX
}
/include -g -Og"
)
CONFIG_OPTS+
=(
"CPPFLAGS=-I
${
BUILD_PREFIX
}
/include"
)
CONFIG_OPTS+
=(
"CXXFLAGS=-I
${
BUILD_PREFIX
}
/include -g -Og"
)
CONFIG_OPTS+
=(
"LDFLAGS=-L
${
BUILD_PREFIX
}
/lib"
)
CONFIG_OPTS+
=(
"PKG_CONFIG_PATH=
${
BUILD_PREFIX
}
/lib/pkgconfig"
)
CONFIG_OPTS+
=(
"--prefix=
${
BUILD_PREFIX
}
"
)
CONFIG_OPTS+
=(
"--enable-drafts=no"
)
function
print_abi_api_breakages
()
{
echo
"ABI breakages detected:"
cat
compat_reports/libzmq/
${
LATEST_VERSION
}
_to_HEAD/abi_affected.txt | c++filt
echo
"API breakages detected:"
cat
compat_reports/libzmq/
${
LATEST_VERSION
}
_to_HEAD/src_affected.txt | c++filt
exit
1
}
./autogen.sh
./configure
"
${
CONFIG_OPTS
[@]
}
"
make
VERBOSE
=
1
-j5
abi-dumper src/.libs/libzmq.so
-o
${
BUILD_PREFIX
}
/libzmq.head.dump
-lver
HEAD
git clone
--depth
1
-b
latest_release https://github.com/zeromq/libzmq.git latest_release
cd
latest_release
LATEST_VERSION
=
$(
git describe
--abbrev
=
0
--tags
)
./autogen.sh
./configure
"
${
CONFIG_OPTS
[@]
}
"
make
VERBOSe
=
1
-j5
abi-dumper src/.libs/libzmq.so
-o
${
BUILD_PREFIX
}
/libzmq.latest.dump
-lver
${
LATEST_VERSION
}
abi-compliance-checker
-l
libzmq
-d1
${
BUILD_PREFIX
}
/libzmq.latest.dump
-d2
${
BUILD_PREFIX
}
/libzmq.head.dump
-list-affected
||
print_abi_api_breakages
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment