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 2673

Summary: Inconsistent selection of files for 'automoc'
Product: TDE Reporter: Slávek Banko <slavek.banko>
Component: qt3Assignee: Timothy Pearson <kb9vqf>
Status: NEW ---    
Severity: major CC: bugwatch, kb9vqf, michele.calgaro, slavek.banko
Priority: P5    
Version: R14.1.x [Trinity]   
Hardware: All   
OS: All   
Compiler Version: TDE Version String:
Application Version: Application Name:
Bug Depends on:    
Bug Blocks: 2969    

Description Slávek Banko 2016-07-26 10:55:15 CDT
I'm working on porting an application for TDE and I came across an inconsistent behavior of 'automocing':

1) tqmake: For automoc are selected header files that contain TQ_OBJECT.

2) automake: For automoc are selected header files that contain Q_OBJECT or cpp files that include '*.moc' file.

3) cmake: For automoc are selected cpp files that include '*.moc' file.


It is certainly not good to be fundamentally different behavior.

Ad 1) I believe that this method is completely wrong. TQ_OBJECT is not used anywhere in the entire GIT tree. We need to fix tqmake to use Q_OBJECT instead of TQ_OBJECT. This will require adjustments in Tim's automation scripts.

Ad 2) This is the best way. No modifications are required for automake.

Ad 3) It would be useful to adjust common cmake module to also be able to automoc header files that contain Q_OBJECT.
Comment 1 Timothy Pearson 2016-07-26 17:37:16 CDT
One of the goals, achieved already in the Qt4 / TDE integration application, was to be able to compile a single application that uses both TQt3 and Qt4/Qt5/Qt6.  If we use the same Q_OBJECT string for both versions of moc, at least under Qt4 the result was a compilation failure.
Comment 2 Slávek Banko 2016-07-27 18:07:48 CDT
Oh, I understand. In cases 2 and 3 is used tmoc, which internally permorm renaming Q_OBJECT => TQ_OBJECT. While in tqmake is expected already TQ_OBJECT. The difference of behavior is probably intentional.
Comment 3 Michele Calgaro 2016-12-06 04:22:00 CST
I totally missed this bug before :-(

IMO, since we have made a big effort to rename Qt to TQt, I think we should unify everything and use TQ_OBJECT to be consistent with our "rename policy".
If we need to modify some tools, we should do that.

What do you think?