[GNC-dev] archive of GnuCash
How is the archive generated that is used as the source for distribution? I pulled the 3.7 source from https://sourceforge.net/projects/gnucash/files/gnucash%20%28stable%29/3.7/ Extracted that file to a folder called LPAD within my $HOME Then on my local git clone I did git archive --format=tar.gz --prefix=gnucash-3.7/ -o ../gnucash-3.7.tar.gz 3.7 (after doing a git checkout 3.7). Extracted that file to a folder called MSRC within my $HOME Did a diff -r on the two and this is the list of differences: (so how do I generate the same archive from the git repository as is on SourceForge?) Only in MSRC/gnucash-3.7/bindings/python/example_scripts: get_quotes.pl Only in MSRC/gnucash-3.7/bindings/python/example_scripts: gnc_convenience.py Only in MSRC/gnucash-3.7/bindings/python/example_scripts: gncinvoicefkt.py Only in MSRC/gnucash-3.7/bindings/python/example_scripts: gncinvoice_jinja.py Only in MSRC/gnucash-3.7/bindings/python/example_scripts: Invoice_2.tex.tmpl Only in MSRC/gnucash-3.7/bindings/python/example_scripts: invoice_export_doxygen.txt Only in MSRC/gnucash-3.7/bindings/python/example_scripts: Invoice.tex.tmpl Only in MSRC/gnucash-3.7/bindings/python/example_scripts: price_database_example.py Only in MSRC/gnucash-3.7/bindings/python/example_scripts: priceDB_test.py Only in MSRC/gnucash-3.7/bindings/python/example_scripts: quotes_historic.py Only in MSRC/gnucash-3.7/bindings/python/example_scripts: str_methods.py Only in LPAD/gnucash-3.7/bindings/python: gnucash_core.c Only in LPAD/gnucash-3.7/bindings/python: gnucash_core_c.py Only in MSRC/gnucash-3.7/borrowed/guile-json: configure.ac Only in MSRC/gnucash-3.7/borrowed/guile-json: env.in Only in MSRC/gnucash-3.7/borrowed/guile-json: INSTALL Only in MSRC/gnucash-3.7/borrowed/guile-json/json: Makefile.am Only in MSRC/gnucash-3.7/borrowed/guile-json: m4 Only in MSRC/gnucash-3.7/borrowed/guile-json: Makefile.am Only in MSRC/gnucash-3.7/borrowed/guile-json: pkg-list.scm.in Only in MSRC/gnucash-3.7/borrowed/guile-json: README Only in MSRC/gnucash-3.7/borrowed/guile-json: tests Only in MSRC/gnucash-3.7/borrowed/gwengui-gtk3: gwengui-gtk3.pc.in Only in LPAD/gnucash-3.7: ChangeLog Only in MSRC/gnucash-3.7: ChangeLog.2006-manual Only in MSRC/gnucash-3.7/common/debug: splint-defs.h Only in LPAD/gnucash-3.7/common: swig-runtime.h Only in LPAD/gnucash-3.7/common/test-core: swig-unittest-support-guile.c Only in LPAD/gnucash-3.7/common/test-core: swig-unittest-support-python.c Only in LPAD/gnucash-3.7/common/test-core: unittest_support.py Only in MSRC/gnucash-3.7: contrib Only in MSRC/gnucash-3.7/data/accounts/hr: acctchrt_eduloan.gnucash-xea Only in MSRC/gnucash-3.7/data/accounts/hr: acctchrt_fixedassets.gnucash-xea Only in MSRC/gnucash-3.7/doc/examples: cibc_checking.qfx Only in MSRC/gnucash-3.7/doc/examples: cibc_visa.qfx Only in MSRC/gnucash-3.7/doc/examples: create-bogus-data.pl Only in MSRC/gnucash-3.7/doc/examples: customers_import.csv Only in MSRC/gnucash-3.7/doc/examples: divx.qif Only in MSRC/gnucash-3.7/doc/examples: downloaded.mt940 Only in MSRC/gnucash-3.7/doc/examples: iif Only in MSRC/gnucash-3.7/doc/examples: rbc_gi.qfx Only in MSRC/gnucash-3.7/doc/examples: reg_doc_example.gnucash Only in MSRC/gnucash-3.7/doc/examples: wamu.qfx Only in LPAD/gnucash-3.7/doc: gnucash.1 Only in MSRC/gnucash-3.7/doc: What_is_Euro_support Only in MSRC/gnucash-3.7: .gitattributes Only in MSRC/gnucash-3.7: .gitignore Only in LPAD/gnucash-3.7/gnucash/gnome: swig-gnome.c Only in MSRC/gnucash-3.7/gnucash/gnome-utils: gnc-tree-model-selection.c Only in MSRC/gnucash-3.7/gnucash/gnome-utils: gnc-tree-model-selection.h Only in LPAD/gnucash-3.7/gnucash/gnome-utils: swig-gnome-utils.c Only in MSRC/gnucash-3.7/gnucash: gnucash-strip-svn-datafile.sh Only in LPAD/gnucash-3.7/gnucash/html: swig-gnc-html.c Only in MSRC/gnucash-3.7/gnucash/import-export/bi-import: regex.txt Only in MSRC/gnucash-3.7/gnucash/report/jqplot: changes.txt Only in MSRC/gnucash-3.7/gnucash/report/jqplot: copyright.txt Only in MSRC/gnucash-3.7/gnucash/report/jqplot: excanvas.js Only in MSRC/gnucash-3.7/gnucash/report/jqplot: excanvas.min.js Only in MSRC/gnucash-3.7/gnucash/report/jqplot: gpl-2.0.txt Only in MSRC/gnucash-3.7/gnucash/report/jqplot: jqPlotCssStyling.txt Only in MSRC/gnucash-3.7/gnucash/report/jqplot: jqPlotOptions.txt Only in MSRC/gnucash-3.7/gnucash/report/jqplot: jquery-1.4.2.min.js Only in MSRC/gnucash-3.7/gnucash/report/jqplot: jquery.jqplot.min.css Only in MSRC/gnucash-3.7/gnucash/report/jqplot: jquery.jqplot.min.js Only in MSRC/gnucash-3.7/gnucash/report/jqplot: MIT-LICENSE.txt Only in MSRC/gnucash-3.7/gnucash/report/jqplot: optionsTutorial.txt Only in MSRC/gnucash-3.7/gnucash/report/jqplot/plugins: jqplot.barRenderer.min.js Only in MSRC/gnucash-3.7/gnucash/report/jqplot/plugins: jqplot.BezierCurveRenderer.min.js Only in MSRC/gnucash-3.7/gnucash/report/jqplot/plugins: jqplot.blockRenderer.min.js Only in MSRC/gnucash-3.7/gnucash/report/jqplot/plugins: jqplot.bubbleRenderer.min.js Only in M
Re: [GNC-dev] archive of GnuCash
> On Nov 12, 2019, at 12:58 PM, Stephen M. Butler wrote: > > How is the archive generated that is used as the source for distribution? > > I pulled the 3.7 source from > https://sourceforge.net/projects/gnucash/files/gnucash%20%28stable%29/3.7/ > > Extracted that file to a folder called LPAD within my $HOME > > Then on my local git clone I did git archive --format=tar.gz > --prefix=gnucash-3.7/ -o ../gnucash-3.7.tar.gz 3.7 (after doing a git > checkout 3.7). > > Extracted that file to a folder called MSRC within my $HOME > > Did a diff -r on the two and this is the list of differences: (so how > do I generate the same archive from the git repository as is on > SourceForge?) > > Only in MSRC/gnucash-3.7/bindings/python/example_scripts: get_quotes.pl > Only in MSRC/gnucash-3.7/bindings/python/example_scripts: gnc_convenience.py > Only in MSRC/gnucash-3.7/bindings/python/example_scripts: gncinvoicefkt.py > Only in MSRC/gnucash-3.7/bindings/python/example_scripts: > gncinvoice_jinja.py > Only in MSRC/gnucash-3.7/bindings/python/example_scripts: Invoice_2.tex.tmpl > Only in MSRC/gnucash-3.7/bindings/python/example_scripts: > invoice_export_doxygen.txt > Only in MSRC/gnucash-3.7/bindings/python/example_scripts: Invoice.tex.tmpl > Only in MSRC/gnucash-3.7/bindings/python/example_scripts: > price_database_example.py > Only in MSRC/gnucash-3.7/bindings/python/example_scripts: priceDB_test.py > Only in MSRC/gnucash-3.7/bindings/python/example_scripts: quotes_historic.py > Only in MSRC/gnucash-3.7/bindings/python/example_scripts: str_methods.py > Only in LPAD/gnucash-3.7/bindings/python: gnucash_core.c > Only in LPAD/gnucash-3.7/bindings/python: gnucash_core_c.py > Only in MSRC/gnucash-3.7/borrowed/guile-json: configure.ac > Only in MSRC/gnucash-3.7/borrowed/guile-json: env.in > Only in MSRC/gnucash-3.7/borrowed/guile-json: INSTALL > Only in MSRC/gnucash-3.7/borrowed/guile-json/json: Makefile.am > Only in MSRC/gnucash-3.7/borrowed/guile-json: m4 > Only in MSRC/gnucash-3.7/borrowed/guile-json: Makefile.am > Only in MSRC/gnucash-3.7/borrowed/guile-json: pkg-list.scm.in > Only in MSRC/gnucash-3.7/borrowed/guile-json: README > Only in MSRC/gnucash-3.7/borrowed/guile-json: tests > Only in MSRC/gnucash-3.7/borrowed/gwengui-gtk3: gwengui-gtk3.pc.in > Only in LPAD/gnucash-3.7: ChangeLog > Only in MSRC/gnucash-3.7: ChangeLog.2006-manual > Only in MSRC/gnucash-3.7/common/debug: splint-defs.h > Only in LPAD/gnucash-3.7/common: swig-runtime.h > Only in LPAD/gnucash-3.7/common/test-core: swig-unittest-support-guile.c > Only in LPAD/gnucash-3.7/common/test-core: swig-unittest-support-python.c > Only in LPAD/gnucash-3.7/common/test-core: unittest_support.py > Only in MSRC/gnucash-3.7: contrib > Only in MSRC/gnucash-3.7/data/accounts/hr: acctchrt_eduloan.gnucash-xea > Only in MSRC/gnucash-3.7/data/accounts/hr: acctchrt_fixedassets.gnucash-xea > Only in MSRC/gnucash-3.7/doc/examples: cibc_checking.qfx > Only in MSRC/gnucash-3.7/doc/examples: cibc_visa.qfx > Only in MSRC/gnucash-3.7/doc/examples: create-bogus-data.pl > Only in MSRC/gnucash-3.7/doc/examples: customers_import.csv > Only in MSRC/gnucash-3.7/doc/examples: divx.qif > Only in MSRC/gnucash-3.7/doc/examples: downloaded.mt940 > Only in MSRC/gnucash-3.7/doc/examples: iif > Only in MSRC/gnucash-3.7/doc/examples: rbc_gi.qfx > Only in MSRC/gnucash-3.7/doc/examples: reg_doc_example.gnucash > Only in MSRC/gnucash-3.7/doc/examples: wamu.qfx > Only in LPAD/gnucash-3.7/doc: gnucash.1 > Only in MSRC/gnucash-3.7/doc: What_is_Euro_support > Only in MSRC/gnucash-3.7: .gitattributes > Only in MSRC/gnucash-3.7: .gitignore > Only in LPAD/gnucash-3.7/gnucash/gnome: swig-gnome.c > Only in MSRC/gnucash-3.7/gnucash/gnome-utils: gnc-tree-model-selection.c > Only in MSRC/gnucash-3.7/gnucash/gnome-utils: gnc-tree-model-selection.h > Only in LPAD/gnucash-3.7/gnucash/gnome-utils: swig-gnome-utils.c > Only in MSRC/gnucash-3.7/gnucash: gnucash-strip-svn-datafile.sh > Only in LPAD/gnucash-3.7/gnucash/html: swig-gnc-html.c > Only in MSRC/gnucash-3.7/gnucash/import-export/bi-import: regex.txt > Only in MSRC/gnucash-3.7/gnucash/report/jqplot: changes.txt > Only in MSRC/gnucash-3.7/gnucash/report/jqplot: copyright.txt > Only in MSRC/gnucash-3.7/gnucash/report/jqplot: excanvas.js > Only in MSRC/gnucash-3.7/gnucash/report/jqplot: excanvas.min.js > Only in MSRC/gnucash-3.7/gnucash/report/jqplot: gpl-2.0.txt > Only in MSRC/gnucash-3.7/gnucash/report/jqplot: jqPlotCssStyling.txt > Only in MSRC/gnucash-3.7/gnucash/report/jqplot: jqPlotOptions.txt > Only in MSRC/gnucash-3.7/gnucash/report/jqplot: jquery-1.4.2.min.js > Only in MSRC/gnucash-3.7/gnucash/report/jqplot: jquery.jqplot.min.css > Only in MSRC/gnucash-3.7/gnucash/report/jqplot: jquery.jqplot.min.js > Only in MSRC/gnucash-3.7/gnucash/report/jqplot: MIT-LICENSE.txt > Only in MSRC/gnucash-3.7/gnucash/report/jqplot: optionsTutorial.txt > Only in MSRC/gnucash-3.7/gnucash/report/jqplot/plugins: > jqplot.barRenderer.min.js > Only in MSRC/gnucash-3.7/g
Re: [GNC-dev] archive of GnuCash
> On Nov 12, 2019, at 2:10 PM, Stephen M. Butler wrote: > > On 11/12/19 1:21 PM, John Ralls wrote: >> >>> On Nov 12, 2019, at 12:58 PM, Stephen M. Butler wrote: >>> >>> How is the archive generated that is used as the source for distribution? >>> <> >>> >> make (or ninja) dist >> >> distcheck will make the tarballs then untar one of them, build, test, and >> clean. It passes only if all of that works and there isn't anything left >> over. >> >> Regards, >> John Ralls > > > After setting GMOCK_ROOT to /usr/src/googletest/googlemock, and doing > make dist, I get: > > CMake Error at doc/CMakeLists.txt:50 (file): > file failed to open for writing (Permission denied): > > /home/steve/Projects/GnuCash/gnucash/doc/tip_of_the_day.list > > > CMake Error at libgnucash/doc/design/CMakeLists.txt:29 (file): > file failed to open for writing (Permission denied): > > /home/steve/Projects/GnuCash/gnucash/libgnucash/doc/design/version.texi > > > CMake Error at libgnucash/doc/design/CMakeLists.txt:30 (file): > file failed to open for writing (Permission denied): > > /home/steve/Projects/GnuCash/gnucash/libgnucash/doc/design/stamp-vti > > > Looks like a lot of files have only the read bit set. Should I reclone > the repository and checkout 3.7 again? Please remember to copy the list on all replies. Since I can't drive your computer I don't know what you've put in /home/steve/Projects/Gnucash/gnucash. Is it a source or a build directory? If it's source, is it from a tarball checkout or a git clone? If it's source and from a git clone, why is make trying to write doc/tip_of_the_day.list into it? Does doc/tip_of_the_day.list already exist? If so, how did it get there, as it's a build product? On the other hand, if it's a build directory (and it should be) why would you think that recloning the source directory would affect the permissions in the build directory? If make is creating files r-r-r then most likely your umask is messed up. Fix that, delete the directory, and re-run cmake. If it's both, don't do that. Suggestion going forward: Name your directories to indicate what's what. For example on Linux where I need build only GnuCash itself I use ~/gnucash-git for the git working directory and ~/gnucash-build for the build directory. If I need to build a bunch of dependencies I'll group them under whatever key parameters define the build and separate the source, build, and install trees, perhaps ~/gnucash-x86_64-maint/src/gnucash-git, ~/gnucash-x86_64-maint/build/gnucash-git, ~/gnucash-x86_64-maint/inst/. Regards, John Ralls ___ gnucash-devel mailing list gnucash-devel@gnucash.org https://lists.gnucash.org/mailman/listinfo/gnucash-devel
Re: [GNC-dev] archive of GnuCash
On 11/12/19 4:25 PM, John Ralls wrote: >> On Nov 12, 2019, at 2:10 PM, Stephen M. Butler wrote: >> >> On 11/12/19 1:21 PM, John Ralls wrote: On Nov 12, 2019, at 12:58 PM, Stephen M. Butler wrote: How is the archive generated that is used as the source for distribution? <> >>> make (or ninja) dist >>> >>> distcheck will make the tarballs then untar one of them, build, test, and >>> clean. It passes only if all of that works and there isn't anything left >>> over. >>> >>> Regards, >>> John Ralls >> >> After setting GMOCK_ROOT to /usr/src/googletest/googlemock, and doing >> make dist, I get: >> >> CMake Error at doc/CMakeLists.txt:50 (file): >> file failed to open for writing (Permission denied): >> >> /home/steve/Projects/GnuCash/gnucash/doc/tip_of_the_day.list >> >> >> CMake Error at libgnucash/doc/design/CMakeLists.txt:29 (file): >> file failed to open for writing (Permission denied): >> >> /home/steve/Projects/GnuCash/gnucash/libgnucash/doc/design/version.texi >> >> >> CMake Error at libgnucash/doc/design/CMakeLists.txt:30 (file): >> file failed to open for writing (Permission denied): >> >> /home/steve/Projects/GnuCash/gnucash/libgnucash/doc/design/stamp-vti >> >> >> Looks like a lot of files have only the read bit set. Should I reclone >> the repository and checkout 3.7 again? > Please remember to copy the list on all replies. > > Since I can't drive your computer I don't know what you've put in > /home/steve/Projects/Gnucash/gnucash. Is it a source or a build directory? If > it's source, is it from a tarball checkout or a git clone? If it's source and > from a git clone, why is make trying to write doc/tip_of_the_day.list into > it? Does doc/tip_of_the_day.list already exist? If so, how did it get there, > as it's a build product? It's a git clone. I've done some debian package builds that were supposed to go into ./.build -- who knows what might have gone wrong a time or two (or more). > > On the other hand, if it's a build directory (and it should be) why would you > think that recloning the source directory would affect the permissions in the > build directory? If make is creating files r-r-r then most likely your umask > is messed up. Fix that, delete the directory, and re-run cmake. > If it's both, don't do that. I was already coming to the point of creating the orig.tar.gz file and using that in another location for doing the debian package creation. So, with red face, ya, I did both. > > Suggestion going forward: Name your directories to indicate what's what. For > example on Linux where I need build only GnuCash itself I use ~/gnucash-git > for the git working directory and ~/gnucash-build for the build directory. If > I need to build a bunch of dependencies I'll group them under whatever key > parameters define the build and separate the source, build, and install > trees, perhaps ~/gnucash-x86_64-maint/src/gnucash-git, > ~/gnucash-x86_64-maint/build/gnucash-git, ~/gnucash-x86_64-maint/inst/. OK. We'll start with a clean clone and then attempt to create the tarball of 3.7. When that works we'll figure out the next step. Just to be sure I'm on the correct page, after the git clone: cd into the clone git checkout 3.7 make dist And that should generate gnucash-3.7.orig.tar.gz (I presume in the parent directory). > > Regards, > John Ralls > > -- Stephen M Butler, PMP, PSM stephen.m.butle...@gmail.com kg...@arrl.net 253-350-0166 --- GnuPG Fingerprint: 8A25 9726 D439 758D D846 E5D4 282A 5477 0385 81D8 ___ gnucash-devel mailing list gnucash-devel@gnucash.org https://lists.gnucash.org/mailman/listinfo/gnucash-devel
Re: [GNC-dev] archive of GnuCash
> On Nov 12, 2019, at 4:39 PM, Stephen M. Butler wrote: > > On 11/12/19 4:25 PM, John Ralls wrote: >>> On Nov 12, 2019, at 2:10 PM, Stephen M. Butler wrote: >>> >>> On 11/12/19 1:21 PM, John Ralls wrote: > On Nov 12, 2019, at 12:58 PM, Stephen M. Butler wrote: > > How is the archive generated that is used as the source for distribution? > <> > make (or ninja) dist distcheck will make the tarballs then untar one of them, build, test, and clean. It passes only if all of that works and there isn't anything left over. Regards, John Ralls >>> >>> After setting GMOCK_ROOT to /usr/src/googletest/googlemock, and doing >>> make dist, I get: >>> >>> CMake Error at doc/CMakeLists.txt:50 (file): >>> file failed to open for writing (Permission denied): >>> >>>/home/steve/Projects/GnuCash/gnucash/doc/tip_of_the_day.list >>> >>> >>> CMake Error at libgnucash/doc/design/CMakeLists.txt:29 (file): >>> file failed to open for writing (Permission denied): >>> >>>/home/steve/Projects/GnuCash/gnucash/libgnucash/doc/design/version.texi >>> >>> >>> CMake Error at libgnucash/doc/design/CMakeLists.txt:30 (file): >>> file failed to open for writing (Permission denied): >>> >>>/home/steve/Projects/GnuCash/gnucash/libgnucash/doc/design/stamp-vti >>> >>> >>> Looks like a lot of files have only the read bit set. Should I reclone >>> the repository and checkout 3.7 again? >> Please remember to copy the list on all replies. >> >> Since I can't drive your computer I don't know what you've put in >> /home/steve/Projects/Gnucash/gnucash. Is it a source or a build directory? >> If it's source, is it from a tarball checkout or a git clone? If it's source >> and from a git clone, why is make trying to write doc/tip_of_the_day.list >> into it? Does doc/tip_of_the_day.list already exist? If so, how did it get >> there, as it's a build product? > > It's a git clone. I've done some debian package builds that were > supposed to go into ./.build -- who knows what might have gone wrong a > time or two (or more). > >> >> On the other hand, if it's a build directory (and it should be) why would >> you think that recloning the source directory would affect the permissions >> in the build directory? If make is creating files r-r-r then most likely >> your umask is messed up. Fix that, delete the directory, and re-run cmake. >> If it's both, don't do that. > I was already coming to the point of creating the orig.tar.gz file and > using that in another location for doing the debian package creation. > So, with red face, ya, I did both. >> >> Suggestion going forward: Name your directories to indicate what's what. For >> example on Linux where I need build only GnuCash itself I use ~/gnucash-git >> for the git working directory and ~/gnucash-build for the build directory. >> If I need to build a bunch of dependencies I'll group them under whatever >> key parameters define the build and separate the source, build, and install >> trees, perhaps ~/gnucash-x86_64-maint/src/gnucash-git, >> ~/gnucash-x86_64-maint/build/gnucash-git, ~/gnucash-x86_64-maint/inst/. > > OK. We'll start with a clean clone and then attempt to create the > tarball of 3.7. When that works we'll figure out the next step. Just > to be sure I'm on the correct page, after the git clone: > > cd into the clone > > git checkout 3.7 > > make dist > No. Anything involving make, ninja, cmake, gcc, clang, guild, etc. is a build operation and should happen in a build directory. So after getting the clone to the commit you want and assuming that the clone is in a directory named gnucash.git: mkdir ../gnucash-build && cd ../gnucash-build cmake -DWHATEVER_OPTIONS ../gnucash.git make dist Regards, John Ralls ___ gnucash-devel mailing list gnucash-devel@gnucash.org https://lists.gnucash.org/mailman/listinfo/gnucash-devel
Re: [GNC-dev] archive of GnuCash
On 11/12/19 7:56 PM, John Ralls wrote: > > No. Anything involving make, ninja, cmake, gcc, clang, guild, etc. is a build > operation and should happen in a build directory. So after getting the clone > to the commit you want and assuming that the clone is in a directory named > gnucash.git: > > mkdir ../gnucash-build && cd ../gnucash-build > cmake -DWHATEVER_OPTIONS ../gnucash.git > make dist > > Regards, > John Ralls > Thanks John. I discovered that make dist didn't work in the git repository. Tried the cmake/make route but that threw errors. Rebooted and read your email. Tried again and it worked. However, comparing the tar.gz from Sourceforge and the one created by the above starts off with this difference (and proceeds for pages). I suspect something on my machine must be newer than when the sourceforge distribution was created. I'm too tired to figure out the next steps but I'm aiming to see if I can get sbuild to work on the tar.gz files. Thanks for being patient with me. And maybe I'm overthinking my new setup: Details only for those who might be interested: in my $HOME/Projects/GnuCash folder (which holds other items like my formatted balance sheet scm code): mkdir gnucash-git mkdir gnucash-build mkdir gnucash-build/v3.7 cd gnucash-git git clone https://github.com/Gnucash/gnucash.git maint git checkout maint git worktree add ../v3.7 3.7 cd ../../gnucash-build/v3.7 cmake --WITH_PYTHON=ON -DCMAKE_BUILD_TYPE=Release ../../gnucash-git/v3.7 make dist ___ gnucash-devel mailing list gnucash-devel@gnucash.org https://lists.gnucash.org/mailman/listinfo/gnucash-devel