Opened 4 years ago

Closed 2 years ago

Last modified 12 months ago

#7105 closed defect (fixed)

DEBIAN: Dist files not usable.

Reported by: SF/jcmanciot Owned by: csnover
Priority: blocker Component: Port: Linux
Keywords: has-upstream-patch Cc:
Game:

Description

With commit 55cb41798af925c55a95c767ac686c52fdfbf26f on Ubuntu 15.10 4.2.0-34:

echo -----------
echo Configuring
echo -----------
./configure --enable-all-engines --enable-updates --enable-optimizations

echo -------------------------------------------------------
echo "Copying Debian control folder in the expected location"
echo -------------------------------------------------------
rsync -av dists/debian .

echo --------
echo Building
echo --------
dpkg-buildpackage -m"Jean-Christophe Manciot <manciot.jeanchristophe@gmail.com>"

...
   dh_auto_test
make -j1 test

make[1]: Entering directory '/home/actionmystique/Program-Files/Ubuntu/Games/ScummVM/git-scummvm'
./test/cxxtest/cxxtestgen.py --runner=StdioPrinter --no-std --no-eh --include=./test/cxxtest_mingw.h -o test/runner.cpp test/common/str.h test/common/hashmap.h test/common/fixedstack.h test/common/stream.h test/common/memoryreadstream.h test/common/seekablesubreadstream.h test/common/queue.h test/common/memorywritestream.h test/common/array.h test/common/list.h test/common/subreadstream.h test/common/math.h test/common/pack.h test/common/memoryreadstreamendian.h test/common/rational.h test/common/algorithm.h test/common/hash-str.h test/common/serializer.h test/common/bitstream.h test/common/bufferedreadstream.h test/common/ptr.h test/common/bufferedseekablereadstream.h test/common/tokenizer.h test/common/endian.h test/common/func.h test/common/util.h test/common/rendermode.h test/common/stack.h test/common/md5.h test/common/huffman.h test/common/rect.h test/audio/helper.h test/audio/audiostream.h test/audio/raw.h test/audio/timestamp.h
LINK test/runner
common/libcommon.a(system.o): In function Common::Singleton<GUI::EventRecorder>::instance()': /home/actionmystique/Program-Files/Ubuntu/Games/ScummVM/git-scummvm/./common/singleton.h:70: undefined reference toCommon::Singleton::_singleton'
common/libcommon.a(system.o): In function Common::Singleton<GUI::EventRecorder>::makeInstance()': /home/actionmystique/Program-Files/Ubuntu/Games/ScummVM/git-scummvm/./common/singleton.h:52: undefined reference toGUI::EventRecorder::EventRecorder()'
common/libcommon.a(system.o): In function Common::Singleton<GUI::EventRecorder>::instance()': /home/actionmystique/Program-Files/Ubuntu/Games/ScummVM/git-scummvm/./common/singleton.h:71: undefined reference toCommon::Singleton::_singleton'
common/libcommon.a(system.o): In function OSystem::getSavefileManager()': /home/actionmystique/Program-Files/Ubuntu/Games/ScummVM/git-scummvm/common/system.cpp:165: undefined reference toGUI::EventRecorder::getSaveManager(Common::SaveFileManager)'
/home/actionmystique/Program-Files/Ubuntu/Games/ScummVM/git-scummvm/common/system.cpp:165: undefined reference to `GUI::EventRecorder::getSaveManager(Common::SaveFileManager
)'
collect2: error: ld returned 1 exit status
test/module.mk:32: recipe for target 'test/runner' failed
make[1]: [test/runner] Error 1
make[1]: Leaving directory '/home/actionmystique/Program-Files/Ubuntu/Games/ScummVM/git-scummvm'
dh_auto_test: make -j1 test returned exit code 2
debian/rules:4: recipe for target 'build' failed
make:
[build] Error 2
dpkg-buildpackage: error: debian/rules build gave error exit status 2

Ticket imported from: bugs/7105.

Change History (11)

comment:1 by wjp, 4 years ago

You'll currently have to pass --disable-eventrecorder to ./configure if you want to run make test.

comment:2 by SF/jcmanciot, 4 years ago

Unfortunately, it does not work because configure is run again with different options:

dh build
   dh_testdir
   debian/rules override_dh_auto_configure
make[1]: Entering directory '/home/actionmystique/Program-Files/Ubuntu/Games/ScummVM/git-scummvm'
./configure --prefix=/usr --datadir=/usr/share/scummvm --enable-release
Running ScummVM configure...
Looking for C++ compiler... g++
Checking for compiler version... 5.2.1, ok
Building as C++11... no
Checking for whether -Wglobal-constructors work... no
Checking endianness... little
Checking 64-bitness... yes
Type with 1 byte... char
Type with 2 bytes... short
Type with 4 bytes... int
Type with 8 bytes... long
Alignment required... no
Checking host CPU architecture... x86_64
Checking hosttype... linux-gnu
Looking for sdl-config... /usr/bin/sdl-config
Checking if host is POSIX compliant... yes
Checking whether to have a verbose build... no
Checking whether building plugins was requested... no
Checking for Ogg Vorbis... yes
Checking for Tremor... no (Ogg Vorbis/Tremor support is mutually exclusive)
Checking for FLAC >= 1.0.1... yes
Checking for MAD... yes
Checking for ALSA >= 0.9... yes
Checking for libjpeg >= v6b... yes
Checking for PNG >= 1.2.8... yes
Checking for libtheoradec >= 1.0... no
Checking for libfaad... no
Checking for SEQ MIDI... yes
Checking for sndio... no
Checking for TiMidity... yes
Checking for zlib... yes
Checking for libmpeg2 >= 0.4.0... yes
Checking for Sparkle... no
Checking for FluidSynth... yes
Checking for readline... skipping (text console disabled)
Checking for libunity... no
Looking for freetype-config... /usr/bin/freetype-config
Checking for FreeType2... yes
Checking for OpenGL... yes
Building translation support... yes (with runtime language detection)
Building taskbar integration support... no
Building Bink video support... yes
Building updates support... no
Backend... sdl (1.2.15), 16bit color, savegame timestamp, HQ scalers, MT-32 emu, **event recorder**

This means that the dists/debian/rules should be modified as long as it is necessary.

comment:3 by SF/jcmanciot, 4 years ago

Also, dists/debian/changelog is way behind.

comment:4 by lordhoto, 4 years ago

Summary: Cannot build 1.8.0 due to multiple undefined referencesDEBIAN: Dist files not usable.

comment:5 by SF/jcmanciot, 4 years ago

I am able now to build the debian package.
The log gives an interesting comment:

dh_pysupport: This program is deprecated, you should use dh_python2 instead. Migration guide: http://deb.li/dhs2p

comment:6 by csnover, 2 years ago

Priority: lowblocker

The data in dists seems to have stopped being updated by 1.4. We should figure out for the next release whether the solution is to just pull in from upstream, or just stop maintaining this data ourselves. It would probably be nice to keep this up-to-date so that Buildbot can generate these packages automatically.

Setting to blocker just so a decision about what to do can be made before release.

comment:7 by csnover, 2 years ago

Component: Ports

comment:8 by csnover, 2 years ago

Keywords: has-upstream-patch added

comment:9 by csnover, 2 years ago

Owner: set to csnover

comment:10 by csnover, 2 years ago

Resolution: fixed
Status: newclosed

Thanks for your report! A patch for this issue has been added in commit 4045b9a7b748da83b4ce1acaa1403becfa592505 and will be available in daily builds 1.10.0git-5490 and later.

comment:11 by digitall, 12 months ago

Component: PortsPort: Linux
Note: See TracTickets for help on using tickets.