Bob,

Finally got the %^$&^%$ package built, it's upload to Sourceforge and 
setup-mingw64.ps1 is updated with the new version.

Regards,
John Ralls


> On Jan 30, 2021, at 5:44 PM, John Ralls <jra...@ceridwen.us> wrote:
> 
> Bob,
> 
> Maybe not on Sunday. Rebuilding WebKit has hit a few snags and since it takes 
> forever and one must start fresh every time it's still not done. I'll post a 
> followup here when it's ready.
> 
> Regards,
> John Ralls
> 
>> On Jan 29, 2021, at 3:39 AM, Robert Fewell <14ubo...@gmail.com> wrote:
>> 
>> John,
>> OK, will try and test a clean install maybe on Sunday. I did actually get my 
>> build working but as usual other things took my time. I still had the 
>> jhbuild package using python2.7, installed that and was able to do a 
>> successful build with a couple of tweaks. I noticed the ICU update and 
>> downgraded ICU, boost and halfbuzz I think to match the webkit version and 
>> cmake and removed pkgconf.
>> I imagine that as I had been building on windows for a long time I was 
>> always using the old version of jhbuild.
>> 
>> If I recall, I did notice something strange with the mariad database files, 
>> with a new install I do not think there is a plugin directory but will 
>> confirm that.
>> 
>> Regards,
>> Bob
>> 
>> On Fri, 29 Jan 2021 at 04:33, John Ralls <jra...@ceridwen.us> wrote:
>> I finally got back to this this week. There's a simple patch, which I've 
>> pushed to gnucash-on-windows.git/patches/jhbuild.patch, to get jhbuild to 
>> lose the leading / from pkgconf's version of pkg-config --list-all. That 
>> fixes the major problem of nothing being able to find its dependencies with 
>> pkg-config, and with that fixed everything seems to work normally again.
>> 
>> Except that MSYS2 did a major update recently and bumped the ICU version, 
>> and that breaks mingw-w64-webkitgtk. I've got a new one building, with luck 
>> it will be done tomorrow.
>> 
>> Regards,
>> John Ralls
>> 
>>> On Dec 27, 2020, at 4:25 PM, John Ralls <jra...@ceridwen.us> wrote:
>>> 
>>> Bob,
>>> 
>>> I poked at this for a few hours today. I found that the only thing that 
>>> needs adjusting is to remove or comment out line 66 ($env:MSYSTEM = 
>>> 'MINGW32') in buildserver/build_package.ps1.
>>> 
>>> I also found an error in jhbuild, this patch fixes it:
>>> diff --git a/jhbuild/utils/packagedb.py b/jhbuild/utils/packagedb.py
>>> index b938c27c..b9d6d135 100644
>>> --- a/jhbuild/utils/packagedb.py
>>> +++ b/jhbuild/utils/packagedb.py
>>> @@ -76,7 +76,7 @@ class PackageEntry:
>>>        # write manifest
>>>        fileutils.mkdir_with_parents(os.path.join(self.dirname, 'manifests'))
>>>        writer = fileutils.SafeWriter(os.path.join(self.dirname, 
>>> 'manifests', self.package))
>>> -        writer.fp.write('\n'.join(self.manifest).encode('utf-8', 
>>> 'backslashreplace') + b'\n')
>>> +        writer.fp.write('\n'.join(self._manifest).encode('utf-8', 
>>> 'backslashreplace') + b'\n')
>>>        writer.commit()
>>> 
>>>    def remove(self):
>>> 
>>> And things seem to be building OK now.
>>> 
>>> Regards,
>>> John Ralls
>>> 
>>> 
>>> 
>>>> On Dec 26, 2020, at 4:01 AM, Robert Fewell <14ubo...@gmail.com> wrote:
>>>> 
>>>> John,
>>>> Yes I did amend jhbuildrc.
>>>> 
>>>> Had another poke at it, I ran the setup-mingw64.ps1 file again using all 
>>>> defaults to completion.
>>>> pkg-config gives said out put.
>>>> Down graded cmake to version 3.18.4-1
>>>> Installed mingw pkg-config which uninstalled pkgconf.
>>>> 
>>>> Changed to gnucash-on-windows.git and tried jhbuild command
>>>> got error importing jhbuild - needed to change path.insert to be of form 
>>>> c:\\gcdev64\src\jhbuild.git'
>>>> 
>>>> Changing that then gave the subprocess error
>>>> I then made all the changes in mypatch file which seemed to work but I 
>>>> then got the following directory structure c\gcdev64\downloads and 
>>>> gnucash....
>>>> 
>>>> So I changed  jhbuildrc to the following
>>>> _basedir = "c:\gcdev64"
>>>> _download_dir ="c:\gcdev64\downloads"
>>>> 
>>>> And now OpenSP was downloaded and started to configure and build I think 
>>>> and then errored.
>>>> 
>>>> That's as far I can go.
>>>> 
>>>> Regards,
>>>> Bob
>>>> 
>>>> 
>>>> 
>>>> 
>>>> 
>>>> 
>>>> 
>>>> 
>>>> 
>>>> 
>>>> 
>>>> On Sat, 26 Dec 2020 at 03:38, John Ralls <jra...@ceridwen.us> wrote:
>>>> 
>>>> 
>>>>> On Dec 24, 2020, at 7:51 AM, Robert Fewell <14ubo...@gmail.com> wrote:
>>>>> 
>>>>> John,
>>>>> 
>>>>> I think this is down to paths / filenames, I can fix all the missing 
>>>>> dependencies by doing this...
>>>>> 
>>>>> 
>>>>>   c_include_search_paths = None
>>>>>   for dep_type, value, altdeps in sysdeps:
>>>>>       print("dep_type: ", dep_type)
>>>>>       print("value is: ", value)
>>>>>       dep_met = True
>>>>>       if dep_type.lower() == 'path':
>>>>>           if os.path.split(value)[0]:
>>>>>               if not os.path.isfile(value) and not os.access(value, 
>>>>> os.X_OK):
>>>>>                   dep_met = False
>>>>>           else:
>>>>>               pathdirs = set(os.environ.get('PATH', '').split(os.pathsep))
>>>>>               pathdirs.update(['/sbin', '/usr/sbin'])
>>>>>               for path in pathdirs:
>>>>>                   filename = os.path.join(path, value)
>>>>>                   filename = filename.replace("/c/", "/")
>>>>>                   print("path filename is: ", filename)
>>>>>                   if os.path.isfile(filename) and os.access(filename, 
>>>>> os.X_OK):
>>>>>                       break
>>>>>                   filename = filename + ".exe"
>>>>>                   print("path filename is: ", filename)
>>>>>                   if os.path.isfile(filename) and os.access(filename, 
>>>>> os.X_OK):
>>>>>                       break
>>>>>               else:
>>>>>                   dep_met = False
>>>>>       elif dep_type.lower() == 'c_include':
>>>>>           if c_include_search_paths is None:
>>>>>               c_include_search_paths = get_c_include_search_paths(config)
>>>>>           found = False
>>>>>           for path in c_include_search_paths:
>>>>>               filename = os.path.join(path, value)
>>>>>               print("filename is: ", filename)
>>>>>               filename = filename.replace("/c/", "/")
>>>>>               print("filename is: ", filename)
>>>>>               if os.path.isfile(filename):
>>>>>                   found = True
>>>>>                   break
>>>>>           if not found:
>>>>>               dep_met = False
>>>>> 
>>>>> Not very portable but may give you an idea for correct fix.
>>>>> 
>>>>> Now I get ....
>>>>> Traceback (most recent call last):
>>>>> File "C:/gcdev64/msys2/usr/bin/jhbuild", line 23, in <module>
>>>>>   jhbuild.main.main(sys.argv[1:])
>>>>> File "c:\gcdev64\src\jhbuild.git/jhbuild/main.py", line 120, in main
>>>>>   rc = jhbuild.commands.run(command, config, args, help=lambda: 
>>>>> print_help(parser))
>>>>> File "c:\gcdev64\src\jhbuild.git/jhbuild/commands/__init__.py", line 188, 
>>>>> in run
>>>>>   return cmd.execute(config, args, help)
>>>>> File "c:\gcdev64\src\jhbuild.git/jhbuild/commands/__init__.py", line 56, 
>>>>> in execute
>>>>>   return self.run(config, options, args, help)
>>>>> File "c:\gcdev64\src\jhbuild.git/jhbuild/commands/base.py", line 262, in 
>>>>> run
>>>>>   build = jhbuild.frontends.get_buildscript(config, module_list, 
>>>>> module_set=module_set)
>>>>> File "c:\gcdev64\src\jhbuild.git/jhbuild/frontends/__init__.py", line 27, 
>>>>> in get_buildscript
>>>>>   return BuildScript(config, module_list, module_set=module_set)
>>>>> File "c:\gcdev64\src\jhbuild.git/jhbuild/frontends/terminal.py", line 
>>>>> 111, in __init__
>>>>>   buildscript.BuildScript.__init__(self, config, module_list, 
>>>>> module_set=module_set)
>>>>> File "c:\gcdev64\src\jhbuild.git/jhbuild/frontends/buildscript.py", line 
>>>>> 78, in __init__
>>>>>   subprocess.call(chrt_args + ['true'], stdout=devnull, stderr=devnull) 
>>>>> == 0):
>>>>> AttributeError: module 'jhbuild.utils.subprocess_win32' has no attribute 
>>>>> 'call'
>>>> 
>>>> Bob,
>>>> 
>>>> Did you add that python fragment to jhbuildrc?
>>>> 
>>>> I tested two things yesterday: Installing a fresh build environment and 
>>>> running pacman -Syuu on my current one. In the latter I found that the 
>>>> replacement of pkg-config with pkgconf was a dependency of cmake 3.19 so I 
>>>> set an ignore on cmake in pacman.conf before allowing the upgrade to 
>>>> proceed. I also pulled the latest jhbuild. That one works fine.
>>>> 
>>>> I'm trying figure out what's making subprocess_win32 to break subprocess 
>>>> on the new install while it works OK on the old one. The python packages 
>>>> are the same and I've made sure that both jhbuild repos are at the current 
>>>> HEAD. I rolled back cmake to 3.18 and reinstalled pkg-config replacing 
>>>> pkgconf. 
>>>> 
>>>> Regards,
>>>> John Ralls
>>>> 
>>>> 
>>>> <0001-mychanges.patch>
>>> 
>>> _______________________________________________
>>> gnucash-devel mailing list
>>> gnucash-devel@gnucash.org
>>> https://lists.gnucash.org/mailman/listinfo/gnucash-devel
>> 
> 
> _______________________________________________
> gnucash-devel mailing list
> gnucash-devel@gnucash.org
> https://lists.gnucash.org/mailman/listinfo/gnucash-devel

_______________________________________________
gnucash-devel mailing list
gnucash-devel@gnucash.org
https://lists.gnucash.org/mailman/listinfo/gnucash-devel

Reply via email to