A distribution tarball is easier to use but possibly limited to a certain Linux distribution and sometimes even to a certain version of said distribution.
autogen.sh makes things more flexible but at the cost of needing a more complex setup before you can use your project.
My approach to this problem is to have a script which
installs all dependencies or at least directs people to where they can get them
creates all system specific files
builds the whole project
runs the tests
creates distribution tarballs
I use the same script to build the dist tarballs, so the script is a) useful and b) executed often to keep it healthy.
A distribution tarball is easier to use but possibly limited to a certain Linux distribution and sometimes even to a certain version of said distribution.
autogen.shmakes things more flexible but at the cost of needing a more complex setup before you can use your project.My approach to this problem is to have a script which
I use the same script to build the dist tarballs, so the script is a) useful and b) executed often to keep it healthy.