Merge lp:~thomas-voss/platform-api/add-package-config into lp:platform-api

Proposed by Thomas Voß
Status: Merged
Approved by: Ricardo Salveti
Approved revision: 74
Merged at revision: 84
Proposed branch: lp:~thomas-voss/platform-api/add-package-config
Merge into: lp:platform-api
Prerequisite: lp:~thomas-voss/platform-api/fix-cmake-setup
Diff against target: 187 lines (+39/-18)
14 files modified
CMakeLists.txt (+2/-1)
data/CMakeLists.txt (+8/-0)
data/ubuntu-platform-api.pc.in (+9/-0)
debian/libplatform-api-headers.install (+1/-1)
debian/libplatform-api-headers.links (+1/-0)
debian/libplatform-api1-dev.install (+1/-0)
debian/rules (+0/-10)
include/ubuntu/CMakeLists.txt (+11/-0)
include/ubuntu/application/CMakeLists.txt (+1/-1)
include/ubuntu/application/sensors/CMakeLists.txt (+1/-1)
include/ubuntu/application/sensors/event/CMakeLists.txt (+1/-1)
include/ubuntu/application/ui/CMakeLists.txt (+1/-1)
include/ubuntu/application/ui/input/CMakeLists.txt (+1/-1)
include/ubuntu/ui/CMakeLists.txt (+1/-1)
To merge this branch: bzr merge lp:~thomas-voss/platform-api/add-package-config
Reviewer Review Type Date Requested Status
Didier Roche-Tolomelli Approve
PS Jenkins bot continuous-integration Approve
Ricardo Salveti (community) Approve
Thomas Voß (community) Approve
Ricardo Mendoza (community) Approve
Review via email: mp+168642@code.launchpad.net

Commit message

 * Add a pkgconfig file for the platform API
 * Adjust installation of header files to account for version

Description of the change

 * Add a pkgconfig file for the platform API
 * Adjust installation of header files to account for version

To post a comment you must log in.
Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :
review: Approve (continuous-integration)
Revision history for this message
Didier Roche-Tolomelli (didrocks) wrote :

the -dev package is multi-arched: same
So, the pkgconfig file should be installed in: /usr/lib/(triplet)/pkgconfig rather than /usr/lib/pkgconfig.

Otherwise good, work, the header having major version doesn't make my eyes bleeding :)

review: Needs Fixing
69. By Thomas Voß

 * Adjust pkgconfig installation to account for architecture triplet.

Revision history for this message
Thomas Voß (thomas-voss) wrote :

> the -dev package is multi-arched: same
> So, the pkgconfig file should be installed in: /usr/lib/(triplet)/pkgconfig
> rather than /usr/lib/pkgconfig.
>

Fixed.

> Otherwise good, work, the header having major version doesn't make my eyes
> bleeding :)

Thx :)

Revision history for this message
Didier Roche-Tolomelli (didrocks) wrote :

Perfect! approved for me :)

review: Approve
Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :
review: Approve (continuous-integration)
70. By Thomas Voß

[ Gerry Boland ]
* Add mir suport.
[ Robert Carr ]
* Add mir suport.
[ Ubuntu daily release ]
* Automatic snapshot from revision 69
[ Ricardo Mendoza ]
* Allow remote App Manager to take care of signalling processes.
[ Ubuntu daily release ]
* Automatic snapshot from revision 67

Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :
review: Approve (continuous-integration)
Revision history for this message
Ricardo Mendoza (ricmm) wrote :

Builds, runs, work fine on flipped container with Mir and hybris.

review: Approve
Revision history for this message
Ricardo Salveti (rsalveti) wrote :

76 +Architecture: any
85 +Architecture: any

As we don't have hybris for powerpc I'm not sure if moving to any is the right choice.

138 - DESTINATION include/ubuntu/application/sensors/event
139 + DESTINATION include/ubuntu-${UBUNTU_PLATFORM_API_VERSION_MAJOR}/application/sensors/event

150 - DESTINATION include/ubuntu/application/ui
151 + DESTINATION include/ubuntu-${UBUNTU_PLATFORM_API_VERSION_MAJOR}/application/ui

164 - DESTINATION include/ubuntu/application/ui/input
165 + DESTINATION include/ubuntu-${UBUNTU_PLATFORM_API_VERSION_MAJOR}/application/ui/input

175 - DESTINATION include/ubuntu/ui
176 + DESTINATION include/ubuntu-${UBUNTU_PLATFORM_API_VERSION_MAJOR}/ui

Before moving this forward, please have MRs for all the consumers as well (or create a temporarily link while you get the rest fixed).

Otherwise this will create a ton of FTBFS.

review: Needs Fixing
Revision history for this message
Thomas Voß (thomas-voss) wrote :

> 76 +Architecture: any
> 85 +Architecture: any
>
> As we don't have hybris for powerpc I'm not sure if moving to any is the right
> choice.

I will cross-check with didrocks.

>
> 138 - DESTINATION include/ubuntu/application/sensors/event
> 139 + DESTINATION
> include/ubuntu-${UBUNTU_PLATFORM_API_VERSION_MAJOR}/application/sensors/event
>
> 150 - DESTINATION include/ubuntu/application/ui
> 151 + DESTINATION
> include/ubuntu-${UBUNTU_PLATFORM_API_VERSION_MAJOR}/application/ui
>
> 164 - DESTINATION include/ubuntu/application/ui/input
> 165 + DESTINATION
> include/ubuntu-${UBUNTU_PLATFORM_API_VERSION_MAJOR}/application/ui/input
>
> 175 - DESTINATION include/ubuntu/ui
> 176 + DESTINATION include/ubuntu-${UBUNTU_PLATFORM_API_VERSION_MAJOR}/ui
>
> Before moving this forward, please have MRs for all the consumers as well (or
> create a temporarily link while you get the rest fixed).
>

I would rather prefer not releasing this version as there are likely more packaging changes coming down the pipe. I'm happy to provide patches for the consumers, but I would propose to do that in one go after we are happy with the packaging of the platform API.

> Otherwise this will create a ton of FTBFS.

Agreed :)

review: Approve
Revision history for this message
Ricardo Salveti (rsalveti) wrote :

You could change and have a temporarily link to still be compatible with current costumers, otherwise having MRs for everyone at the same time might be just too painful.

71. By Thomas Voß

 * Add unversioned header directory as link to keep consumers working for now.

Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :
review: Needs Fixing (continuous-integration)
72. By Thomas Voß

[ Ricardo Mendoza ]
* Add guards for NULL sensors.
[ Ubuntu daily release ]
* Automatic snapshot from revision 79
[ Didier Roche ]
* minor cosmetic cleanups as we detect the archs we can't build for in
  daily release now.
[ Ubuntu daily release ]
* Automatic snapshot from revision 77
[ Ricardo Mendoza ]
* GCC 4.8 introduces a change for ARM AAPCS calling conventions, this
  breaks ABI for us because the Android library is built with GCC 4.7.
  Revert to building platform-api with GCC 4.7 until we can update the
  Android build. .
[ Ubuntu daily release ]
* Automatic snapshot from revision 75
[ Robert Carr ]
* Add missing mir stub (ua_ui_session_properties_set_remote_pid).
[ Ubuntu daily release ]
* Automatic snapshot from revision 73
[ Ubuntu daily release ]
* debian/*symbols: auto-update new symbols to released version
[ Didier Roche ]
* Add a symbol files with unmangled C++ symbols to track ABI.
[ Dmitrijs Ledkovs ]
* Add a symbol files with unmangled C++ symbols to track ABI.
[ Ubuntu daily release ]
* Automatic snapshot from revision 71

Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :
review: Approve (continuous-integration)
Revision history for this message
Ricardo Salveti (rsalveti) wrote :

71 + dh_link include/ubuntu-${UBUNTU_PLATFORM_API_VERSION_MAJOR} include/ubuntu

debian/rules doesn't know about UBUNTU_PLATFORM_API_VERSION_MAJOR.

Also, while you're on it, mind cleaning debian/rules to remove the -DUSE_GLES part?

Follows a suggestion for a fix:
"""
=== added file 'debian/libplatform-api-headers.links'
--- debian/libplatform-api-headers.links 1970-01-01 00:00:00 +0000
+++ debian/libplatform-api-headers.links 2013-07-04 04:43:51 +0000
@@ -0,0 +1,1 @@
+usr/include/ubuntu-1 usr/include/ubuntu

=== modified file 'debian/rules'
--- debian/rules 2013-07-03 07:23:59 +0000
+++ debian/rules 2013-07-04 04:44:23 +0000
@@ -4,19 +4,8 @@

 export CXX=g++-4.7

-gles2_architectures := armhf
-ifeq ($(DEB_HOST_ARCH),$(findstring $(DEB_HOST_ARCH), $(gles2_architectures)))
- use_gles=1
-else
- use_gles=0
-endif
-
 %:
  dh $@

-override_dh_auto_configure:
- dh_auto_configure -- -DUSE_GLES=$(use_gles)
-
 overrid_dh_install:
  dh_install --fail-missing
- dh_link include/ubuntu-${UBUNTU_PLATFORM_API_VERSION_MAJOR} include/ubuntu

"""

You don't need to worry much about the hardcoded major version as this is just a temporary fix while we rebuild/fix the other packages.

review: Needs Fixing
73. By Thomas Voß

 * Remove obsolete USE_GLES mechanisms.
 * Add a links file to create temporary symbolic link for the header directory.

Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :
review: Approve (continuous-integration)
74. By Thomas Voß

 * Install status and unit headers.

Revision history for this message
Ricardo Salveti (rsalveti) wrote :

Good, built qtubuntu, worked fine.

review: Approve
Revision history for this message
PS Jenkins bot (ps-jenkins) wrote :
review: Approve (continuous-integration)
Revision history for this message
Didier Roche-Tolomelli (didrocks) wrote :

looks good to me as well, I can see a small simplification in debian/rules still, but will do it later on :)

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
=== modified file 'CMakeLists.txt'
--- CMakeLists.txt 2013-07-01 14:04:18 +0000
+++ CMakeLists.txt 2013-07-04 06:26:26 +0000
@@ -1,6 +1,6 @@
1cmake_minimum_required(VERSION 2.6)1cmake_minimum_required(VERSION 2.6)
22
3project(ubuntu_platform_api)3project(ubuntu-platform-api)
44
5set(UBUNTU_PLATFORM_API_VERSION_MAJOR 1)5set(UBUNTU_PLATFORM_API_VERSION_MAJOR 1)
6set(UBUNTU_PLATFORM_API_VERSION_MINOR 0)6set(UBUNTU_PLATFORM_API_VERSION_MINOR 0)
@@ -87,6 +87,7 @@
87include_directories(include)87include_directories(include)
88include_directories(android/include)88include_directories(android/include)
8989
90add_subdirectory(data/)
90add_subdirectory(doc/)91add_subdirectory(doc/)
91add_subdirectory(include/)92add_subdirectory(include/)
92add_subdirectory(src/)93add_subdirectory(src/)
9394
=== added directory 'data'
=== added file 'data/CMakeLists.txt'
--- data/CMakeLists.txt 1970-01-01 00:00:00 +0000
+++ data/CMakeLists.txt 2013-07-04 06:26:26 +0000
@@ -0,0 +1,8 @@
1configure_file(
2 ubuntu-platform-api.pc.in ubuntu-platform-api.pc @ONLY
3)
4
5install(
6 FILES ${CMAKE_CURRENT_BINARY_DIR}/ubuntu-platform-api.pc
7 DESTINATION lib/${CMAKE_LIBRARY_ARCHITECTURE}/pkgconfig
8)
0\ No newline at end of file9\ No newline at end of file
110
=== added file 'data/ubuntu-platform-api.pc.in'
--- data/ubuntu-platform-api.pc.in 1970-01-01 00:00:00 +0000
+++ data/ubuntu-platform-api.pc.in 2013-07-04 06:26:26 +0000
@@ -0,0 +1,9 @@
1prefix=@CMAKE_INSTALL_PREFIX@
2exec_prefix=${prefix}
3libdir=${exec_prefix}/lib
4includedir=${exec_prefix}/include
5
6Name: @CMAKE_PROJECT_NAME@
7Description: Ubuntu's platform abstraction layer.
8Version: @UBUNTU_PLATFORM_API_VERSION_MAJOR@.@UBUNTU_PLATFORM_API_VERSION_MINOR@.@UBUNTU_PLATFORM_API_VERSION_PATCH@
9Cflags: -I${includedir}/ubuntu-@UBUNTU_PLATFORM_API_VERSION_MAJOR@
010
=== modified file 'debian/libplatform-api-headers.install'
--- debian/libplatform-api-headers.install 2013-03-20 12:49:06 +0000
+++ debian/libplatform-api-headers.install 2013-07-04 06:26:26 +0000
@@ -1,1 +1,1 @@
1usr/include1usr/include/
22
=== added file 'debian/libplatform-api-headers.links'
--- debian/libplatform-api-headers.links 1970-01-01 00:00:00 +0000
+++ debian/libplatform-api-headers.links 2013-07-04 06:26:26 +0000
@@ -0,0 +1,1 @@
1usr/include/ubuntu-1 usr/include/ubuntu
0\ No newline at end of file2\ No newline at end of file
13
=== modified file 'debian/libplatform-api1-dev.install'
--- debian/libplatform-api1-dev.install 2013-03-20 12:49:06 +0000
+++ debian/libplatform-api1-dev.install 2013-07-04 06:26:26 +0000
@@ -1,1 +1,2 @@
1usr/lib/*/libubuntu_application_api.so1usr/lib/*/libubuntu_application_api.so
2usr/lib/*/pkgconfig/ubuntu-platform-api.pc
23
=== modified file 'debian/rules'
--- debian/rules 2013-06-26 19:21:02 +0000
+++ debian/rules 2013-07-04 06:26:26 +0000
@@ -4,18 +4,8 @@
44
5export CXX=g++-4.75export CXX=g++-4.7
66
7gles2_architectures := armhf
8ifeq ($(DEB_HOST_ARCH),$(findstring $(DEB_HOST_ARCH), $(gles2_architectures)))
9 use_gles=1
10else
11 use_gles=0
12endif
13
14%:7%:
15 dh $@8 dh $@
169
17override_dh_auto_configure:
18 dh_auto_configure -- -DUSE_GLES=$(use_gles)
19
20overrid_dh_install:10overrid_dh_install:
21 dh_install --fail-missing11 dh_install --fail-missing
2212
=== modified file 'include/ubuntu/CMakeLists.txt'
--- include/ubuntu/CMakeLists.txt 2013-06-11 09:40:30 +0000
+++ include/ubuntu/CMakeLists.txt 2013-07-04 06:26:26 +0000
@@ -1,2 +1,13 @@
1set(
2 UBUNTU_HEADERS
3 status.h
4 unit.h
5)
6
7install(
8 FILES ${UBUNTU_HEADERS}
9 DESTINATION include/ubuntu-${UBUNTU_PLATFORM_API_VERSION_MAJOR}
10)
11
1add_subdirectory(application)12add_subdirectory(application)
2add_subdirectory(ui)13add_subdirectory(ui)
3\ No newline at end of file14\ No newline at end of file
415
=== modified file 'include/ubuntu/application/CMakeLists.txt'
--- include/ubuntu/application/CMakeLists.txt 2013-06-11 09:40:30 +0000
+++ include/ubuntu/application/CMakeLists.txt 2013-07-04 06:26:26 +0000
@@ -12,7 +12,7 @@
1212
13install(13install(
14 FILES ${UBUNTU_APPLICATION_HEADERS}14 FILES ${UBUNTU_APPLICATION_HEADERS}
15 DESTINATION include/ubuntu/application15 DESTINATION include/ubuntu-${UBUNTU_PLATFORM_API_VERSION_MAJOR}/application
16)16)
1717
18add_subdirectory(sensors)18add_subdirectory(sensors)
1919
=== modified file 'include/ubuntu/application/sensors/CMakeLists.txt'
--- include/ubuntu/application/sensors/CMakeLists.txt 2013-06-11 09:40:30 +0000
+++ include/ubuntu/application/sensors/CMakeLists.txt 2013-07-04 06:26:26 +0000
@@ -8,7 +8,7 @@
88
9install(9install(
10 FILES ${UBUNTU_APPLICATION_SENSORS_HEADERS}10 FILES ${UBUNTU_APPLICATION_SENSORS_HEADERS}
11 DESTINATION include/ubuntu/application/sensors11 DESTINATION include/ubuntu-${UBUNTU_PLATFORM_API_VERSION_MAJOR}/application/sensors
12)12)
1313
14add_subdirectory(event)14add_subdirectory(event)
15\ No newline at end of file15\ No newline at end of file
1616
=== modified file 'include/ubuntu/application/sensors/event/CMakeLists.txt'
--- include/ubuntu/application/sensors/event/CMakeLists.txt 2013-06-11 09:40:30 +0000
+++ include/ubuntu/application/sensors/event/CMakeLists.txt 2013-07-04 06:26:26 +0000
@@ -7,5 +7,5 @@
77
8install(8install(
9 FILES ${UBUNTU_APPLICATION_SENSORS_EVENT_HEADERS}9 FILES ${UBUNTU_APPLICATION_SENSORS_EVENT_HEADERS}
10 DESTINATION include/ubuntu/application/sensors/event10 DESTINATION include/ubuntu-${UBUNTU_PLATFORM_API_VERSION_MAJOR}/application/sensors/event
11)11)
12\ No newline at end of file12\ No newline at end of file
1313
=== modified file 'include/ubuntu/application/ui/CMakeLists.txt'
--- include/ubuntu/application/ui/CMakeLists.txt 2013-06-11 09:40:30 +0000
+++ include/ubuntu/application/ui/CMakeLists.txt 2013-07-04 06:26:26 +0000
@@ -19,7 +19,7 @@
1919
20install(20install(
21 FILES ${UBUNTU_APPLICATION_UI_HEADERS}21 FILES ${UBUNTU_APPLICATION_UI_HEADERS}
22 DESTINATION include/ubuntu/application/ui22 DESTINATION include/ubuntu-${UBUNTU_PLATFORM_API_VERSION_MAJOR}/application/ui
23)23)
2424
25add_subdirectory(input)25add_subdirectory(input)
26\ No newline at end of file26\ No newline at end of file
2727
=== modified file 'include/ubuntu/application/ui/input/CMakeLists.txt'
--- include/ubuntu/application/ui/input/CMakeLists.txt 2013-06-11 09:40:30 +0000
+++ include/ubuntu/application/ui/input/CMakeLists.txt 2013-07-04 06:26:26 +0000
@@ -5,5 +5,5 @@
55
6install(6install(
7 FILES ${UBUNTU_APPLICATION_UI_INPUT_HEADERS}7 FILES ${UBUNTU_APPLICATION_UI_INPUT_HEADERS}
8 DESTINATION include/ubuntu/application/ui/input8 DESTINATION include/ubuntu-${UBUNTU_PLATFORM_API_VERSION_MAJOR}/application/ui/input
9)9)
10\ No newline at end of file10\ No newline at end of file
1111
=== modified file 'include/ubuntu/ui/CMakeLists.txt'
--- include/ubuntu/ui/CMakeLists.txt 2013-06-11 09:40:30 +0000
+++ include/ubuntu/ui/CMakeLists.txt 2013-07-04 06:26:26 +0000
@@ -1,4 +1,4 @@
1install(1install(
2 FILES ubuntu_ui_session_service.h2 FILES ubuntu_ui_session_service.h
3 DESTINATION include/ubuntu/ui3 DESTINATION include/ubuntu-${UBUNTU_PLATFORM_API_VERSION_MAJOR}/ui
4)4)
5\ No newline at end of file5\ No newline at end of file

Subscribers

People subscribed via source and target branches