By default, Bugzilla does not search the list of RESOLVED bugs.
You can force it to do so by putting the upper-case word ALL in front of your search query, e.g.: ALL tdelibs
We recommend searching for bugs this way, as you may discover that your bug has already been resolved and fixed in a later release.
Bug 2494 - Build issue: tdebindings (smoke) FTBFS when not using TDE hwlib
Summary: Build issue: tdebindings (smoke) FTBFS when not using TDE hwlib
Status: RESOLVED FIXED
Alias: None
Product: TDE
Classification: Unclassified
Component: non-core programs (show other bugs)
Version: R14.0.x [Trinity]
Hardware: Other Linux
: P5 normal
Assignee: Michele Calgaro
URL:
Depends on:
Blocks: R14.0.13
  Show dependency treegraph
 
Reported: 2015-08-01 09:12 CDT by Francois Andriot
Modified: 2022-05-03 02:09 CDT (History)
5 users (show)

See Also:
Compiler Version:
TDE Version String:
Application Version:
Application Name:


Attachments
tdelibs : disable non-existent class headers when tdehwlib is disabled (824 bytes, patch)
2015-08-01 09:15 CDT, Francois Andriot
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Francois Andriot 2015-08-01 09:12:31 CDT
Hello, when tdelibs is built without tdehwlib, there is a FTBFS in smoke:

52s] x_12.cpp: In function 'void xcall_TDEIO__NetAccess(short int, void*, Smoke::StackItem*)':
[  752s] x_12.cpp:2109: warning: unused variable 'xself'
[  753s] x_12.cpp: In member function 'void x_TDEInstance::x_8(Smoke::StackItem*) const':
[  753s] x_12.cpp:17352: error: 'const class x_TDEInstance' has no member named 'hardwareDevices'
[  753s] x_12.cpp: In member function 'void x_TDEInstance::x_9(Smoke::StackItem*) const':
[  753s] x_12.cpp:17357: error: 'const class x_TDEInstance' has no member named 'networkManager'
[  754s] make[1]: *** [x_12.lo] Error 1
[  754s] make[1]: Leaving directory `/usr/src/redhat/BUILD/trinity-tdebindings-14.0.1/smoke/tde'
[  754s] make: *** [all-recursive] Error 1
Comment 1 Francois Andriot 2015-08-01 09:15:08 CDT
Created attachment 2547 [details]
tdelibs : disable non-existent class headers when tdehwlib is disabled

A first problem exists in tdelibs: the classes "TDEHardwareDevices" and "TDEGlobalNetworkManager" should be conditional in "tdecore/tdeglobal.h".
See attached patch.
Comment 2 Francois Andriot 2015-08-01 10:24:10 CDT
Alas, it looks the smoke code is autogenerated using the "kalyptus" utility, which is itself provided in tdebindings.

It looks like kalyptus is reading all include files in /opt/trinity/include/tde/*.h , and ignores the potential #ifdef .
So, even adding "#ifdef __TDE_HAVE_TDEHWLIB" will not do the trick...


For now, I have to hack in tdelibs post-installation to delete the code during package build:

sed -i "tdecore/kinstance.h" \
    -i "tdecore/tdeglobal.h" \
    -e "/#ifdef __TDE_HAVE_TDEHWLIB/,/#endif/d"
Comment 3 Slávek Banko 2016-10-16 13:44:50 CDT
I'm afraid that for this problem at this moment there is no good solution available, but only "hack", as stated in comment 2. The solution should be rework tdehw library, as proposed in the bug 2706.
Comment 4 Michele Calgaro 2022-04-28 09:19:44 CDT
Proposed fix here:
https://mirror.git.trinitydesktop.org/gitea/TDE/tdebindings/pulls/10
Comment 5 Michele Calgaro 2022-05-03 02:09:10 CDT
This has been resolved in the PR linked above.

@Francois: please test and confirm. If you still have issues, please reopen this bug report.