> On Nov 12, 2019, at 4:39 PM, Stephen M. Butler <kg...@arrl.net> wrote:
>
> On 11/12/19 4:25 PM, John Ralls wrote:
>>> On Nov 12, 2019, at 2:10 PM, Stephen M. Butler <kg...@arrl.net> wrote:
>>>
>>> On 11/12/19 1:21 PM, John Ralls wrote:
>>>>> On Nov 12, 2019, at 12:58 PM, Stephen M. Butler <kg...@arrl.net> wrote:
>>>>>
>>>>> How is the archive generated that is used as the source for distribution?
>>>>> <<snip>>
>>>>>
>>>> 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