Skip to content
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

Linux multi arch #10359

Merged
merged 5 commits into from Sep 6, 2016

Conversation

@wsnipex
Copy link
Member

commented Aug 29, 2016

fixes #16858

supersedes #10348

This PR enables our cmake build system to automatically detect and use the correct library install dirs on various linux distributions. E.g. lib/x86_64-linux-gnu on debian, lib64 on Redhat based distros.
Its therefore possible to install 32 and 64bit kodi side by side and simplifies packaging.
On debian based distros this will only really show when CMAKE_INSTALL_PREFIX=/usr

The downside is that all binary addons need the following debian packaging change: wsnipex/pvr.vdr.vnsi@a9a2c3b

Test builds of this branch are available on mirrors, I'd appreciate feedback from all platforms that I didn't break anything (serious), but specially linux including rpi.

@hudokkow

This comment has been minimized.

Copy link
Member

commented Aug 29, 2016

The downside is that all binary addons need the following debian packaging change

Only commenting to cc/ me and to say: Ouch! (No time to look at the code or update a couple of addons and test.)

@@ -117,7 +117,7 @@ endif()

# Optional dependencies
set(optional_deps MicroHttpd MySqlClient SSH XSLT
Alsa UDEV DBus Avahi
Alsa UDEV DBus Avahi SmbClient

This comment has been minimized.

Copy link
@akva2

akva2 Aug 30, 2016

Contributor

Option missing.

This comment has been minimized.

Copy link
@wsnipex

wsnipex Aug 30, 2016

Author Member

enable switch for optional deps was changed in fe50635

This comment has been minimized.

Copy link
@akva2

akva2 Aug 30, 2016

Contributor

Right - to the better from the looks of it.

@fetzerch

This comment has been minimized.

Copy link
Member

commented Aug 31, 2016

Changes look ok, unfortunately I won't be able to test before the weekend.

@wsnipex wsnipex referenced this pull request Sep 5, 2016
@wsnipex wsnipex merged commit 07b0f62 into xbmc:master Sep 6, 2016
1 of 2 checks passed
1 of 2 checks passed
continuous-integration/travis-ci/pr The Travis CI build failed
Details
continuous-integration/appveyor/pr AppVeyor build succeeded
Details
@@ -12,6 +12,9 @@ endif()
if(NOT @APP_NAME_UC@_LIB_DIR)
set(@APP_NAME_UC@_LIB_DIR @APP_LIB_DIR@)
endif()
if(NOT @APP_NAME_UC@_DATA_DIR)
set(@APP_NAME_UC@_DATA_DIR @APP_DATA_DIR@)

This comment has been minimized.

Copy link
@MilhouseVH

MilhouseVH Sep 7, 2016

Contributor

@APP_DATA_DIR@ is not being set when project/cmake/KodiConfig.cmake is created - is there something I should be setting? The default /usr/share vallue should be used, but isn't, so @APP_DATA_DIR@ is being written to the generated project/cmake/KodiConfig.cmake: http://sprunge.us/ENaK

Any ideas?

@hudokkow

This comment has been minimized.

Copy link
Member

commented Sep 7, 2016

Just ran it and mine shows

if(NOT KODI_DATA_DIR)
set(KODI_DATA_DIR /home/hudo/dev/tmp/master/share/kodi)
endif()

but I call cmake with -DCMAKE_INSTALL_PREFIX=foobar

How are you calling the config step?

@hudokkow

This comment has been minimized.

Copy link
Member

commented Sep 7, 2016

Nope, that's not it. Calling without -DCMAKE_INSTALL_PREFIX=foobar sets it /usr/local/share/kodi, as it should.

@MilhouseVH

This comment has been minimized.

Copy link
Contributor

commented Sep 7, 2016

We're still using configure, and project/cmake/KodiConfig.cmake is generated by configure from project/cmake/KodiConfig.cmake.in, right? But @APP_DATA_DIR@ isn't being output correctly.

@MilhouseVH

This comment has been minimized.

Copy link
Contributor

commented Sep 7, 2016

Try:

./configure --prefix=/usr --libdir=/usr/foobar --datarootdir=/usr/foobar2

then look at project/cmake/KodiConfig.cmake:

if(NOT KODI_PREFIX)
  set(KODI_PREFIX /usr)
endif()
if(NOT KODI_INCLUDE_DIR)
  set(KODI_INCLUDE_DIR /usr/include/kodi)
endif()
if(NOT KODI_LIB_DIR)
  set(KODI_LIB_DIR /usr/foobar/kodi)
endif()
if(NOT KODI_DATA_DIR)
  set(KODI_DATA_DIR @APP_DATA_DIR@)
endif()

Not that it should be necessary to set a value for --datarootdir, as the default ${prefix}/share will work for us, but whatever value is set is ignored.

@hudokkow

This comment has been minimized.

Copy link
Member

commented Sep 7, 2016

@APP_DATA_DIR@ is missing from configure.ac (https://github.com/xbmc/xbmc/blob/master/configure.ac#L2229)

@wsnipex

This comment has been minimized.

Copy link
Member Author

commented Sep 7, 2016

right, I must have forgotten that when I changed it in cmake. Will fix tomorrow

bkuhls added a commit to bkuhls/buildroot that referenced this pull request Sep 9, 2016
bkuhls added a commit to bkuhls/buildroot that referenced this pull request Sep 9, 2016
bkuhls added a commit to bkuhls/buildroot that referenced this pull request Sep 9, 2016
bkuhls added a commit to bkuhls/buildroot that referenced this pull request Sep 10, 2016
bkuhls added a commit to bkuhls/buildroot that referenced this pull request Sep 11, 2016
bkuhls added a commit to bkuhls/buildroot that referenced this pull request Sep 11, 2016
bkuhls added a commit to bkuhls/buildroot that referenced this pull request Jan 27, 2017
Needed after xbmc/xbmc#10359

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
bkuhls added a commit to bkuhls/buildroot that referenced this pull request Jan 28, 2017
Needed after xbmc/xbmc#10359

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
bkuhls added a commit to bkuhls/buildroot that referenced this pull request Jan 28, 2017
Needed after xbmc/xbmc#10359

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
bkuhls added a commit to bkuhls/buildroot that referenced this pull request Jan 29, 2017
Needed after xbmc/xbmc#10359

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
bkuhls added a commit to bkuhls/buildroot that referenced this pull request Jan 29, 2017
Needed after xbmc/xbmc#10359

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
bkuhls added a commit to bkuhls/buildroot that referenced this pull request Jan 30, 2017
Needed after xbmc/xbmc#10359

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
bkuhls added a commit to bkuhls/buildroot that referenced this pull request Jan 31, 2017
Needed after xbmc/xbmc#10359

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
bkuhls added a commit to bkuhls/buildroot that referenced this pull request Jan 31, 2017
Needed after xbmc/xbmc#10359

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
bkuhls added a commit to bkuhls/buildroot that referenced this pull request Jan 31, 2017
Needed after xbmc/xbmc#10359

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
bkuhls added a commit to bkuhls/buildroot that referenced this pull request Jan 31, 2017
Needed after xbmc/xbmc#10359

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
bkuhls added a commit to bkuhls/buildroot that referenced this pull request Feb 1, 2017
Needed after xbmc/xbmc#10359

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
bkuhls added a commit to bkuhls/buildroot that referenced this pull request Feb 1, 2017
Needed after xbmc/xbmc#10359

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
bkuhls added a commit to bkuhls/buildroot that referenced this pull request Feb 1, 2017
Needed after xbmc/xbmc#10359

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
bkuhls added a commit to bkuhls/buildroot that referenced this pull request Feb 2, 2017
Needed after xbmc/xbmc#10359

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
bkuhls added a commit to bkuhls/buildroot that referenced this pull request Feb 2, 2017
…y addons

Needed after xbmc/xbmc#10359

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
bkuhls added a commit to bkuhls/buildroot that referenced this pull request Feb 3, 2017
…y addons

Needed after xbmc/xbmc#10359

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
bkuhls added a commit to bkuhls/buildroot that referenced this pull request Feb 4, 2017
…y addons

Needed after xbmc/xbmc#10359

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
bkuhls added a commit to bkuhls/buildroot that referenced this pull request Feb 4, 2017
…y addons

Needed after xbmc/xbmc#10359

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
bkuhls added a commit to bkuhls/buildroot that referenced this pull request Feb 4, 2017
…y addons

Needed after xbmc/xbmc#10359

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
bkuhls added a commit to bkuhls/buildroot that referenced this pull request Feb 4, 2017
…y addons

Needed after xbmc/xbmc#10359

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
bkuhls added a commit to bkuhls/buildroot that referenced this pull request Feb 6, 2017
…y addons

Needed after xbmc/xbmc#10359

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
bkuhls added a commit to bkuhls/buildroot that referenced this pull request Feb 8, 2017
…y addons

Needed after xbmc/xbmc#10359

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
bkuhls added a commit to bkuhls/buildroot that referenced this pull request Feb 9, 2017
…y addons

Needed after xbmc/xbmc#10359

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
bkuhls added a commit to bkuhls/buildroot that referenced this pull request Feb 11, 2017
Needed after xbmc/xbmc#10359

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
bkuhls added a commit to bkuhls/buildroot that referenced this pull request Feb 11, 2017
…y addons

Needed after xbmc/xbmc#10359

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
bkuhls added a commit to bkuhls/buildroot that referenced this pull request Feb 12, 2017
Needed after xbmc/xbmc#10359

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
bkuhls added a commit to bkuhls/buildroot that referenced this pull request Feb 13, 2017
Needed after xbmc/xbmc#10359

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
bkuhls added a commit to bkuhls/buildroot that referenced this pull request Feb 14, 2017
Needed after xbmc/xbmc#10359

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
bkuhls added a commit to bkuhls/buildroot that referenced this pull request Feb 16, 2017
Needed after xbmc/xbmc#10359

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
bkuhls added a commit to bkuhls/buildroot that referenced this pull request Feb 17, 2017
Needed after xbmc/xbmc#10359

Signed-off-by: Bernd Kuhls <bernd.kuhls@t-online.de>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
6 participants
You can’t perform that action at this time.