Recent

Author Topic: ct4laz  (Read 57488 times)

avra

  • Hero Member
  • *****
  • Posts: 2514
    • Additional info
Re: ct4laz
« Reply #120 on: April 18, 2019, 11:42:21 pm »
This is the final list of ct4laz V2 packages taken from CodeTyphon 6.70:
Quote
pl_0_libs (new)
pl_ape
pl_asiovst
pl_cindy
pl_dwscript (new)
pl_excompress
pl_excontrols
pl_exdatabase
pl_exdesign
pl_graphics32
pl_graphics32ext
pl_graphics32magic (new)
pl_graphics32mg
pl_graphics32vpr
pl_html5canvas
pl_lockbox
pl_opengl
pl_opengles
pl_openwire
pl_pappe (new)
pl_sdl2 (new)
pl_synapsevs
pl_vampyreimaging
pl_vulkan
pl_win_directx
pl_win_directx11
pl_win_directx12
pl_win_directxut
pl_win_dspack
pl_win_gdi
pl_win_midi
px_aggpas
px_aggpasvs
px_cmdrunner (new)
px_gaiagis (new)
px_geogis (new)
px_mapviewer
px_opengladv (new)
px_shapes (new)
px_titanscript (new)
px_titansound (new)
px_tsmbios (new)

All pl_* packages should end up in both OPM and ct4laz repo, while px_* packages should end up only in ct4laz repo and are ment for the brave ones or desperate ones (you can find explanations for this in Excel file).

It was very interesting to find out that pl_titansound is actually a port of Delphi MPEG lib (Excel file with package info updated), and it was very close to inclusion into OPM, but at the end I left it for the next time to mature a little more.

I am not able to test pl_vulkan (no proper grahic card) and pl_opengles (my Raspberry Pi is dead), so I would appreciate if someone can confirm they work. Without confirmation I do not think they should end up in OPM. It was strange to be able to run pl_sdl2 examples under windows but not under linux. If you manage to do it, please share it here.

Some packages are OS specific, and some do not work under specific Laz/FPC combo, bitness, or endianess. PilotLogic cares only about trunk FPC and Laz, while I also try to make all packages work under current official versions of FPC and Laz (with fixes).

I have updated all packages info as promised. Please check and report if there is some mistake (especially for licenses info).

I must admit that most of the CT packages now have license file in the sources dir. That's a nice improvement.

Enjoy!  8-) :) 8-)
ct2laz - Conversion between Lazarus and CodeTyphon
bithelpers - Bit manipulation for standard types
pasettimino - Siemens S7 PLC lib

balazsszekely

  • Guest
Re: ct4laz
« Reply #121 on: April 28, 2019, 06:30:11 pm »
Thank you @Avra, this is great news. I will add the packages to OPM soon.

avra

  • Hero Member
  • *****
  • Posts: 2514
    • Additional info
Re: ct4laz
« Reply #122 on: April 28, 2019, 11:19:47 pm »
@everyone:

I need your help. I am not able to test pl_vulkan (no proper grahic card) and pl_opengles (my Raspberry Pi is dead), so I would appreciate if someone can confirm they work.
ct2laz - Conversion between Lazarus and CodeTyphon
bithelpers - Bit manipulation for standard types
pasettimino - Siemens S7 PLC lib

balazsszekely

  • Guest
Re: ct4laz
« Reply #123 on: May 02, 2019, 08:56:17 am »
Hi all,

I added eight pl_ package for testing purposes. The packages are extracted to a sub folder of the local repository, namely ct4laz.  Please test. After a few days, if everything works fine, I will add all the other packages too. Until now I found no issues at all, tested mostly on: win32/64, gtk2. I will run a few test soon with carbon and qt.

balazsszekely

  • Guest
Re: ct4laz
« Reply #124 on: May 08, 2019, 08:59:27 am »
All packages converted by @Avra was added to OPM, except pl_cindy and pl_vampyreimaging. The plan is to add the original versions, unfortunately vampyreimaging still not works properly, there is a multiple units conflict(https://sourceforge.net/p/imaginglib). The original Cindy is already in OPM. Any suggestion is welcomed.

avra

  • Hero Member
  • *****
  • Posts: 2514
    • Additional info
Re: ct4laz
« Reply #125 on: May 08, 2019, 11:04:52 am »
All packages converted by @Avra was added to OPM, except pl_cindy and pl_vampyreimaging. The plan is to add the original versions, unfortunately vampyreimaging still not works properly, there is a multiple units conflict(https://sourceforge.net/p/imaginglib). The original Cindy is already in OPM. Any suggestion is welcomed.
I will rename pl_vampyreimaging to px_vampyreimaging and leave it in ct4laz repo in case someone still needs it, but exclude it from OPM.

Original Cindy is Delphi only, and origin of Cindy Lazarus port is PilotLogic, and PilotLogic version is in OPM. Do you remember that we agreed to rename cindy.lpk to pl_cindy.lpk? Let me remind you:

Quote
If you agree, then you could use pl_* components without any change and that could take of some of the burden from you. I also think that cindy in OPM should hold pl_cindy name - to respect it's origin and give credit to Pilot Logic. I hope that's OK with you.
Sure, I already used pl_ prefix in the past for CT packages. Cindy was developed by Pilot Logic only? If yes, then giving credit is a must. The issue is, I found many packages, which I thought it was PL only, later it turn out it was developed by somebody else.

Quote
I said that Pilot Logic takes the credit for porting cindy to Lazarus (which was at the time when CT components could be used in laz without any change), so we should respect that and leave pl_cindy name, as is the case with the rest of ct4laz components. I just feel that should be right, nothing else. It is just a proposal, not some kind of a request.
In my opinion we can leave pl_cindy, but we should also mention the original author in the description.
Then name will be pl_cindy, and we mention original author/website with a credit to Pilot Logic for Lazarus port.

I still think that OPM cindy should be replaced with pl_cindy, especially since it is updated to latest Delphi version.
ct2laz - Conversion between Lazarus and CodeTyphon
bithelpers - Bit manipulation for standard types
pasettimino - Siemens S7 PLC lib

balazsszekely

  • Guest
Re: ct4laz
« Reply #126 on: May 08, 2019, 11:26:46 am »
Quote
I still think that OPM cindy should be replaced with pl_cindy, especially since it is updated to latest Delphi version.
OK. Fair enough. If there is no objections, I will remove cindy and add pl_cindy from ct4laz repo.

avra

  • Hero Member
  • *****
  • Posts: 2514
    • Additional info
Re: ct4laz
« Reply #127 on: July 14, 2019, 01:33:34 pm »
I have published instructions for creating ct4laz on your own:
https://bitbucket.org/avra/ct4laz

Useful if you want to convert some missing component, or if you want to convert some updated CodeTyphon component and don't want to wait for ct4laz repo update. Besides ct2laz utility there are 2 PowerShell scripts which do all the work.

Enjoy!
ct2laz - Conversion between Lazarus and CodeTyphon
bithelpers - Bit manipulation for standard types
pasettimino - Siemens S7 PLC lib

wp

  • Hero Member
  • *****
  • Posts: 11858
Re: ct4laz
« Reply #128 on: May 30, 2020, 02:38:23 pm »
avra, I just noticed that the Pilot Logic package pl_ExControls (taken from OPM) does not compile any more in Laz trunk. This is caused by the removal of the ReadOnly property of TCustomCombobox.

avra

  • Hero Member
  • *****
  • Posts: 2514
    • Additional info
Re: ct4laz
« Reply #129 on: June 03, 2020, 01:30:36 am »
avra, I just noticed that the Pilot Logic package pl_ExControls (taken from OPM) does not compile any more in Laz trunk. This is caused by the removal of the ReadOnly property of TCustomCombobox.
If you have fixed the forms then you can send them to me and I will test. If you use trunk then ct2laz is better then ct4laz for some packages. TCustomCombobox problem is probably already fixed in CT (can be checked with ct2laz). I lag behind CT with some packages because CT is much closer to trunk then Lazarus and I am playing a catch up game because I want ct4laz components to be compatible with official Lazarus, so when there is a problem that I can not easily fix I provide older package (not that good if you are after trunk). I plan to update ct4laz at the end of the summer, and focus will be on full FPC 3.2 compatibility while keeping FPC 3.0x working.
ct2laz - Conversion between Lazarus and CodeTyphon
bithelpers - Bit manipulation for standard types
pasettimino - Siemens S7 PLC lib

avra

  • Hero Member
  • *****
  • Posts: 2514
    • Additional info
Re: ct4laz
« Reply #130 on: August 12, 2020, 10:52:46 am »
@GetMem:
I have just checked and it seams that OPM does not deliver my original pl_0_libs and *.dll, *.so and *.dylib files are missing. OPM version has 1MB and my version (https://bitbucket.org/avra/ct4laz/downloads/) has 23MB. How could this happen? Could you please check? When those files are missing, pl_* packages install fine, but lots of examples simply do not work.

p.s. I will start work on ct4laz V3 soon.
ct2laz - Conversion between Lazarus and CodeTyphon
bithelpers - Bit manipulation for standard types
pasettimino - Siemens S7 PLC lib

balazsszekely

  • Guest
Re: ct4laz
« Reply #131 on: August 17, 2020, 08:18:43 pm »
@avra

Quote
I have just checked and it seams that OPM does not deliver my original pl_0_libs and *.dll, *.so and *.dylib files are missing. OPM version has 1MB and my version (https://bitbucket.org/avra/ct4laz/downloads/) has 23MB. How could this happen? Could you please check? When those files are missing, pl_* packages install fine, but lots of examples simply do not work.
OPM auto-delete binary files, unless explicitly instructed not to. Apparently I forgot this small detail when I created package pl_0_lib. Sorry for that. Should be fixed now.

Quote
p.s. I will start work on ct4laz V3 soon.
OK. Thanks.

avra

  • Hero Member
  • *****
  • Posts: 2514
    • Additional info
Re: ct4laz
« Reply #132 on: August 18, 2020, 10:03:16 am »
Quote
I have just checked and it seams that OPM does not deliver my original pl_0_libs and *.dll, *.so and *.dylib files are missing. OPM version has 1MB and my version (https://bitbucket.org/avra/ct4laz/downloads/) has 23MB. How could this happen? Could you please check? When those files are missing, pl_* packages install fine, but lots of examples simply do not work.
OPM auto-delete binary files, unless explicitly instructed not to. Apparently I forgot this small detail when I created package pl_0_lib. Sorry for that. Should be fixed now.
Thanks! Now all pl_* examples should work.
ct2laz - Conversion between Lazarus and CodeTyphon
bithelpers - Bit manipulation for standard types
pasettimino - Siemens S7 PLC lib

avra

  • Hero Member
  • *****
  • Posts: 2514
    • Additional info
Re: ct4laz
« Reply #133 on: November 06, 2020, 11:04:14 am »
It's upgrade time. Let me present you ct4laz V3 RC. You can find it here: https://bitbucket.org/avra/ct4laz/downloads/.

This is the list of ct4laz V3 packages:
Quote
pl_0_libs
pl_ape
pl_asiovst
pl_cindy
pl_excompress
pl_excontrols
pl_exdatabase
pl_graphics32
pl_graphics32ext
pl_graphics32magic
pl_graphics32mg
pl_graphics32vpr
pl_html5canvas
pl_lockbox
pl_opengl
pl_opengles
pl_pappe
pl_sdl2
pl_synapsevs
pl_usb (NEW)
pl_vampyreimaging
pl_vulkan
pl_win_api (NEW)
pl_win_directx
pl_win_directx11
pl_win_directx12
pl_win_directxut
pl_win_dspack
pl_win_gdi
pl_win_media (NEW)
pl_win_midi
px_aggpas
px_aggpasvs
px_cmdrunner
px_dwscript (MOVED from pl to px)
px_expatpas (NEW)
px_gaiagis
px_macosmetal (NEW)
px_magicscript (NEW)
px_mapviewer
px_opencl (NEW)
px_opengladv
px_openwire (MOVED from pl to px)
px_shapes
px_titanscript
px_titansound
px_tsmbios

All pl_* packages are OPM candidates, while px_* packages should end up only in ct4laz repo and are meant only for the brave ones or desperate ones (you can find explanations for this in Excel file). If you think that there are pl_* packages which should not end up in OPM for some reason, now is the time to say it.

ct4laz relevant package news (for individual package news look at CodeTyphon history log):
1. pl_usb - I am not quite sure what to do with this. FPC does not cover USB, and this one is from https://github.com/hansiglaser/pas-libusb. At the moment I am a little more biased to not include it in OPM. Please comment.
2. pl_win_api - Some headers are similar to https://sourceforge.net/projects/mfpack/
3. pl_win_media - Seams like a conversion of this Delphi repo: https://sourceforge.net/projects/mfpack/. It should probably end up in OPM. Needs pl_win_api.
4. px_dwscript - Will be moved from OPM since there is a FPC port found at https://wiki.freepascal.org/DelphiWebScript
5. px_macosmetal - I was not able to test since I do not have Apple OS. It will not end up in OPM anyway because I was able to track Lazarus version at https://github.com/genericptr/Metal-Framework.
6. px_opencl - Does not seam to be relevant since FPC already provides OpenCL headers, so it should not end up in OPM. I will leave it in ct4laz if anyone is interested.
7. px_openwire will be moved from OPM because trunk IDE hangs during compilation, and author has stopped supporting Lazarus because of lacking anonymous methods which are needed for latest features.
8. If you want to experiment with px_aggpas and px_aggpasvs then you will need to rename your \lazarus\components\aggpas directory since there will be a conflict. These packages also depend on px_expatpas.

Updated spreadsheet with all packages and their licenses can be found at https://bitbucket.org/avra/ct4laz/downloads/pl_packages_list.xls. It can bring light to why some packages have been left out completely, and some (px_* ones) ended up only in repo.

All components were tested with current 32bit Lazarus and FPC fixes on Win10x64. Some testing has been done on 64bit and Linux. CodeTyphon targets trunks and ct4laz targets fixes, so when some package has issues I first try to fix it, and if if not able to then older package version is used (patches are welcome). Because of this, trunk users might prefer to use ct2laz on their own for some CT packages.

Repo has instructions if you want to create ct4laz from scratch on your own.

@GetMem:
pl_0_libs package has *.exe, *.dll, *.o, *.so, *.dynlib library files. If you don't like it then you can exclude *.exe files since they are not that important. Other files are crucial for some examples to work so they should not be excluded. Original archive can be found here: http://www.pilotlogic.com/codetyphon/update_development/binRuntimes.7z.
« Last Edit: November 06, 2020, 11:12:30 am by avra »
ct2laz - Conversion between Lazarus and CodeTyphon
bithelpers - Bit manipulation for standard types
pasettimino - Siemens S7 PLC lib

balazsszekely

  • Guest
Re: ct4laz
« Reply #134 on: November 06, 2020, 11:40:48 am »
@avra

Ok. Thanks. I don't have much freetime nowadays, but I will try to update as soon as possible. I did not forget the library files, don't worry, they will and up in pl_0_libs. :)
« Last Edit: November 06, 2020, 11:43:34 am by GetMem »

 

TinyPortal © 2005-2018