Bug#795237: gpsshogi FTBFS: undefined reference to `osl::OslConfig::openingBook and others

2015-08-13 Thread Steve Langasek
Package: gpsshogi
Version: 0.6.0-3+nmu1
Followup-For: Bug #795237
User: ubuntu-de...@lists.ubuntu.com
Usertags: origin-ubuntu wily ubuntu-patch

The build failure here is not a bug in gpsshogi; this is that libosl needs
to be rebuilt with g++5 before gpsshogi is buildable.

However, what is a bug in gpsshogi is that it hard-codes a dependency on
libosl1.  libosl has an ABI-breaking change with g++5, and since it has
reverse-dependencies (gpsshogi), it should undergo a package name
transition.  There is currently no transition bug filed for libosl (probably
because libosl failed to build in the rebuild test), but once this is done
gpsshogi will be broken because of this hard-coded dependency.

Please do not hard-code dependencies on shared libraries.  If the shlibs
declarations for a library you depend on are incorrect, please fix them in
the library.

-- 
Steve Langasek   Give me a lever long enough and a Free OS
Debian Developer   to set it on, and I can move the world.
Ubuntu Developerhttp://www.debian.org/
slanga...@ubuntu.com vor...@debian.org
diff -Nru gpsshogi-0.6.0/debian/changelog gpsshogi-0.6.0/debian/changelog
diff -Nru gpsshogi-0.6.0/debian/control gpsshogi-0.6.0/debian/control
--- gpsshogi-0.6.0/debian/control	2015-08-12 11:30:45.0 -0700
+++ gpsshogi-0.6.0/debian/control	2015-08-13 10:49:09.0 -0700
@@ -10,7 +10,7 @@
 
 Package: gpsshogi
 Architecture: i386 amd64
-Depends: ${shlibs:Depends}, ${misc:Depends}, libosl1 (= 0.6.0), gpsshogi-data (= ${source:Version})
+Depends: ${shlibs:Depends}, ${misc:Depends}, gpsshogi-data (= ${source:Version})
 Description: Shogi playing program based on OpenShogiLib
  GPSShogi is a Shogi playing program based on OpenShogiLib and won the 19th
  World Computer Shogi Championship. This package contains several binaries to


Bug#795237: gpsshogi FTBFS: undefined reference to `osl::OslConfig::openingBook and others

2015-08-12 Thread Martin Pitt
Package: gpsshogi
Severity: serious
Version: 0.6.0-3+nmu1

gpsshogi FTBFS in current sid:

| gpsusi.cc:906:48: warning: ignoring return value of 'FILE* freopen(const 
char*, const char*, FILE*)', declared with attribute warn_unused_result 
[-Wunused-result]
| freopen(error_log_file.c_str(), w, stderr);
| ^
| g++ -Wl,--as-needed `dpkg-buildflags --get LDFLAGS`  gpsshogi.o 
-lboost_thread -lboost_program_options -lpthread -losl -lboost_date_time 
-lboost_filesystem -lboost_serialization -lboost_iostreams -lboost_system 
-ltcmalloc_minimal -o gpssho
| gi
| /usr/bin/ld: warning: libboost_program_options.so.1.55.0, needed by 
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/libosl.so, may conflict with 
libboost_program_options.so.1.58.0
| /usr/bin/ld: warning: libboost_filesystem.so.1.55.0, needed by 
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/libosl.so, may conflict with 
libboost_filesystem.so.1.58.0
| /usr/bin/ld: warning: libboost_serialization.so.1.55.0, needed by 
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/libosl.so, may conflict with 
libboost_serialization.so.1.58.0
| /usr/bin/ld: warning: libboost_iostreams.so.1.55.0, needed by 
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/libosl.so, may conflict with 
libboost_iostreams.so.1.58.0
| /usr/bin/ld: warning: libboost_system.so.1.55.0, needed by 
/usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/libosl.so, may conflict with 
libboost_system.so.1.58.0
| gpsshogi.o: In function `makeWeightedBook()':
| /«PKGBUILDDIR»/bin/gpsshogi.cc:53: undefined reference to 
`osl::OslConfig::openingBook(std::__cxx11::basic_stringchar, 
std::char_traitschar, std::allocatorchar  const)'
| gpsshogi.o: In function `benchmark(osl::game_playing::SearchPlayer, 
std::__cxx11::basic_stringchar, std::char_traitschar, std::allocatorchar  
const, int)':
| /«PKGBUILDDIR»/bin/benchmark.h:37: undefined reference to 
`osl::record::csa::CsaFile::CsaFile(std::__cxx11::basic_stringchar, 
std::char_traitschar, std::allocatorchar  const)'
| /«PKGBUILDDIR»/bin/benchmark.h:47: undefined reference to 
`osl::record::csa::show[abi:cxx11](osl::Move)'
| /«PKGBUILDDIR»/bin/benchmark.h:58: undefined reference to 
`osl::record::csa::show[abi:cxx11](osl::Move)'
| gpsshogi.o: In function `play(int, char**)':
| /«PKGBUILDDIR»/bin/gpsshogi.cc:153: undefined reference to 
`osl::OslConfig::configuration[abi:cxx11]()'
| /«PKGBUILDDIR»/bin/gpsshogi.cc:266: undefined reference to 
`osl::record::csa::CsaFile::CsaFile(std::__cxx11::basic_stringchar, 
std::char_traitschar, std::allocatorchar  const)'
| gpsshogi.o: In function `makeWeightedBook()':
| /«PKGBUILDDIR»/bin/gpsshogi.cc:53: undefined reference to 
`osl::OslConfig::openingBook(std::__cxx11::basic_stringchar, 
std::char_traitschar, std::allocatorchar  const)'
| /«PKGBUILDDIR»/bin/gpsshogi.cc:53: undefined reference to 
`osl::OslConfig::openingBook(std::__cxx11::basic_stringchar, 
std::char_traitschar, std::allocatorchar  const)'
| /«PKGBUILDDIR»/bin/gpsshogi.cc:53: undefined reference to 
`osl::OslConfig::openingBook(std::__cxx11::basic_stringchar, 
std::char_traitschar, std::allocatorchar  const)'
| /«PKGBUILDDIR»/bin/gpsshogi.cc:53: undefined reference to 
`osl::OslConfig::openingBook(std::__cxx11::basic_stringchar, 
std::char_traitschar, std::allocatorchar  const)'
| gpsshogi.o: In function `OpeningOptions::OpeningOptions()':
| /«PKGBUILDDIR»/bin/options.h:141: undefined reference to 
`osl::OslConfig::home(std::__cxx11::basic_stringchar, std::char_traitschar, 
std::allocatorchar  const)'
| /usr/lib/gcc/x86_64-linux-gnu/5/../../../../lib/libosl.so: undefined 
reference to `boost::gregorian::greg_month::get_month_map_ptr()'
| collect2: error: ld returned 1 exit status

Full build log attached for convenience.

Thanks,

Martin
-- 
Martin Pitt| http://www.piware.de
Ubuntu Developer (www.ubuntu.com)  | Debian Developer  (www.debian.org)


gpsshogi_0.6.0-3+nmu1_amd64-20150812-0859.build.gz
Description: application/gzip


signature.asc
Description: Digital signature