! Please note that this is a snapshot of our old Bugzilla server, which is read only since May 29, 2020. Please go to gitlab.xfce.org for our new server !
Please keep Thunar Git functional (compilable). TPA Plugin failures!
Status:
RESOLVED: FIXED

Comments

Description Ali Akcaagac 2018-01-23 10:30:57 CET
make[3]: Entering directory '/home/aakcaagac/Documents/thunar-master/plugins/thunar-tpa'
make[3]: *** No rule to make target 'thunar-tpa-bindings.c', needed by 'distdir'.  Stop.
make[3]: Leaving directory '/home/aakcaagac/Documents/thunar-master/plugins/thunar-tpa'
make[2]: *** [Makefile:593: distdir] Error 1
make[2]: Leaving directory '/home/aakcaagac/Documents/thunar-master/plugins'
make[1]: *** [Makefile:874: distdir] Error 1
make[1]: Leaving directory '/home/aakcaagac/Documents/thunar-master'
make: *** [Makefile:972: dist] Error 2

From this nights Thunar Git.

Please note that the Git checkout was converted into a dist file via "make dist". Probably one of the old "forgetting to include in makefile" issues (I haven't checked this time)...
Comment 1 alexxcons editbugs 2018-01-23 17:06:39 CET
Compiles for me .. however I did not try "make dist" so far .. I'll take a try later
Comment 2 Ali Akcaagac 2018-01-23 19:03:32 CET
The bugreport wasn't about compiling. It was about "make dist" not being able to create a distributable tarball from Thunar.

autoconf --prefix=/usr
works

make
works

make dist
fails

But looking at the Makefile.am inside the plugins/*tpa* directory also uncovers, that there are still remaining bits of DBUS (variables) left. But somewhere there, inside said Makefile.am there may be the issue that "make dep" complains about said *.c file missing...
Comment 3 Ali Akcaagac 2018-01-23 19:04:05 CET
Created attachment 7557 
Output of autogen
Comment 4 Ali Akcaagac 2018-01-23 19:04:56 CET
Created attachment 7558 
Output of make
Comment 5 Ali Akcaagac 2018-01-23 19:05:37 CET
Created attachment 7559 
Output of make dist
Comment 6 Ali Akcaagac 2018-01-23 19:06:38 CET
Xfce needs an entry inside Jenkins to allow "make dist" verifications. Otherwise it's hard keeping track of all the steps manually.
Comment 7 alexxcons editbugs 2018-01-23 22:14:29 CET
> Please keep Thunar Git functional (compilable). TPA Plugin failures!
If I look at the title, actually your report was about compiling ...

Just took a try:
make clean
autogen.sh
make 
make dist

all runs fine for me

Removed remaining DBUS stuff in makefile --> thanks!
Added missing"\" to as well have thunar-tpa-bindings.h inside libthunar_tpa_la_SOURCES

make clean
autoconf 
make
make dist

as well runs fine.

Now have Thunar-1.7.0git-66447f11.tar.bz2 with thunar-tpa-bindings.h inside, which was missing before.
... maybe that was the problem. Can you please re-check ?
Comment 8 alexxcons editbugs 2018-01-23 22:27:55 CET
autoconf --prefix=/usr
> autoconf: error: invalid option `--prefix=/usr'
> Try `autoconf --help' for more information.

--> maybe you want me to run autogen.sh `--prefix=/usr' ?
 .. does it matter here, if I dont want to install ?
Comment 9 Ali Akcaagac 2018-01-23 23:04:59 CET
No, the --prefix=/usr doesn't matter in this particular case.

Though try this:

1) Start from a fresh checkout of Thunar from master...
2) autogen.sh
3) make dist

Run make dist instantly after autogen.sh.

From what I belive the following may happen:

You may end up in an error saying "thunar-tpa-bindings.c" can't be found.

There is (or may) be a difference if you did this:

1) Start from a fresh checkout of Thunar from master...
2) autogen.sh
3) make
4) make dist

Between step 3 and 4, the thunar-tpa-bindings.c might have been generated from the thunar-tpa-bindings.xml (if I recall correclty... writing from my memories right now).

If you issue a make dist right after autogen.sh (the steps listed first), then make dist may fail, because the thunar-tpa-bindings.c file is NOT YET created. The target within the Makefile.am probably needs to generate the matching *.c file first.

My previous comment #2 was only meant to state, that, if you simply enter a "make", that everything compiles as you said earlier...

But I also need to make clear, that I have Xfce Git installed. So basicly all libraries, core apps etc. that makes Xfce, is based from Git. So there are no remaining bits of Xfce 4.12...

---

I am right now checking out a clean Thunar from Git (including your last cleanings of the Makefile.am)...

Let's redo what I have posted here

First the steps above 1-3 (at the beginning of the comment)

autogen.sh -> works
make dist -> fails

make[3]: *** No rule to make target 'thunar-tpa-bindings.c', needed by 'distdir'.  Stop.

---

Now trying steps 1-4 from aboce (at the middle of the comment). Checking out again.

autogen.sh -> works
make -> works
make dist -> works

As I thought. The file "thunar-tpa-bindings.c" is generated during the "make" and therefore "make dist" doesn't complain and generates the Thunar.tar.bz2 release file.

Though It has to be possible to run a "make dist" from a clean Git checkout right after issuing "autogen.sh && make dist".

I believe, there is a variable missing within the dist part because a "make dist" also issues a "build" before it generates the Thunar.tar.bz2 release file.

I only like to mention this, because there are tons of "automated" processes outside (debian, gentoo, fedora and co.) that rely on generating release files by issuing only "autogen.sh && make dist".

---

If you look at the thunar-uca plugin, then you see that it also generates a *.c file from a *.xml file (issuing codegen iirc)... In the Makefile.am you see that it also has a line saying:

resource_files = $(shell $(GLIB_COMPILE_RESOURCES) --sourcedir=$(srcdir) --generate-dependencies $(srcdir)/thunar-uca.gresource.xml)

Which also got added to thunar-uca.gresource.c as a variable. I believe that something like this is missing for the tpa plugin's Makefile.am and therefore make dist wasn't able to build a dist file without running "make" first. But running "make" first should not be mandatory acording the autoconf package...
Comment 10 Ali Akcaagac 2018-01-23 23:18:57 CET
(In reply to alexxcons from comment #8)
> autoconf --prefix=/usr
> > autoconf: error: invalid option `--prefix=/usr'
> > Try `autoconf --help' for more information.
> 
> --> maybe you want me to run autogen.sh `--prefix=/usr' ?
>  .. does it matter here, if I dont want to install ?

Of course it has to be autogen.sh ... Sorry that was a typo ... and no: adding the prefix doesn't matter...
Comment 11 Git Bot editbugs 2018-01-23 23:40:34 CET
Alexander Schwinn referenced this bugreport in commit 05abad13c4eaca487209738881af127a57dd739a

missing codegen for "make dist" in thunar-tpa (bug #14190)

https://git.xfce.org/xfce/thunar/commit?id=05abad13c4eaca487209738881af127a57dd739a
Comment 12 alexxcons editbugs 2018-01-23 23:44:54 CET
Ok, now that I can reproduce, I can fix it :)

.. looks like "make dist" enables the MAINTAINER_MODE in which codegen only was run for the header

Sorry for causing make dist trouble  .. next time I am prepared !
Comment 13 Ali Akcaagac 2018-01-24 11:12:07 CET
Works... Thanks... Schönen Tag noch :)

Bug #14190

Reported by:
Ali Akcaagac
Reported on: 2018-01-23
Last modified on: 2018-01-24

People

Assignee:
Xfce Bug Triage
CC List:
3 users

Version

Version:
unspecified

Attachments

Output of autogen (22.08 KB, text/plain)
2018-01-23 19:04 CET , Ali Akcaagac
no flags
Output of make (464.18 KB, text/plain)
2018-01-23 19:04 CET , Ali Akcaagac
no flags
Output of make dist (20.27 KB, text/plain)
2018-01-23 19:05 CET , Ali Akcaagac
no flags

Additional information