libtgvoip icon indicating copy to clipboard operation
libtgvoip copied to clipboard

Fix Makefile

Open bakatrouble opened this issue 5 years ago • 8 comments

Makefile templates are missing video/VideoPacketSender and video/VideoFEC includes

bakatrouble avatar Oct 24 '19 20:10 bakatrouble

This PR fixes https://github.com/grishka/libtgvoip/issues/96

zevlg avatar Oct 25 '19 08:10 zevlg

@andy-shev

Makefile.in mustn't be part of repository

That's not dogma. There are several approaches to Autotools with version control systems. See comparisons:

  1. https://www.gnu.org/software/automake/manual/automake.html#CVS
  2. https://www.gnu.org/software/gettext/manual/gettext.html#Files-under-Version-Control

mymedia2 avatar Jan 06 '21 11:01 mymedia2

I've seen many repositories include configure. This way you don't need to run anything to generate it and don't need any build-time dependencies.

grishka avatar Jan 06 '21 11:01 grishka

I've seen many repositories include configure. This way you don't need to run anything to generate it and don't need any build-time dependencies.

If they are all wrong, why should be you? https://en.wikipedia.org/wiki/Cargo_cult_programming

And to my point: VCS and release tarball are different in this case. when you build your release with make dist (https://www.gnu.org/software/automake/manual/html_node/Preparing-Distributions.html) you will get everything needed. Simply learn your tools (as I already mentioned somewhere else in this repo) :-)

andy-shev avatar Jan 07 '21 10:01 andy-shev

The idea is that you clone the repo, run ./configure && make and that's it. Including configure is simply making it more convenient for your users by not requiring them to make sense of your build system. And making my project convenient for my users is my number one priority.

grishka avatar Jan 07 '21 10:01 grishka

The idea is that you clone the repo, run ./configure && make and that's it. Including configure is simply making it more convenient for your users by not requiring them to make sense of your build system. And making my project convenient for my users is my number one priority.

I have updates my comment above. For your convenience repeating here the additional part:

And to my point: VCS and release tarball are different in this case. when you build your release with make dist (https://www.gnu.org/software/automake/manual/html_node/Preparing-Distributions.html) you will get everything needed. Simply learn your tools (as I already mentioned somewhere else in this repo) :-)

To @mymedia2: See above as well. Feel free to ask additional questions if you have something to be cleared.

andy-shev avatar Jan 07 '21 10:01 andy-shev

@andy-shev but your link says nothing about version control systems. Why do not you admit a workflow with generated files in Git? It is discussed in Automake docs.

mymedia2 avatar Jan 07 '21 19:01 mymedia2

@andy-shev but your link says nothing about version control systems. Why do not you admit a workflow with generated files in Git? It is discussed in Automake docs.

It's suboptimal to have generated files under VCS. User will regenerate them anyway (you never know what the actual version of autotools on the user's side). I see only disadvantages of this. And on top of that the standard de facto is to produce releases. If you do tags in VCS it's user's responsibility to generate necessary files on their side.

andy-shev avatar Jan 07 '21 20:01 andy-shev