Re: [Oorexx-devel] Attempt on Windows (Re: How to build external functions using cmake

2019-02-18 Thread Rony G. Flatscher
On 18.02.2019 17:22, Enrico Sorichetti via Oorexx-devel wrote:
> Dear Rony 
> I am very happy that it was useful 
>
> Looking at the status of variable for complex cmakelists 
> ( and I wrote a couple of them )
> Is usually the only way to debug cmakelists errors 
>
> The vdump module was the first one I wrote a long time ago
> To get a better knowledge of the cmake ways
>
> Using cmake -G should have caused different errors IIRC
>
> It tells to cmake which generator is being used, 
> ( I usually go with cmake -G Ninja … … … )
> So I do not see why it should meddle with the compiler options
>
> I will push an update to include the proper defaults for the  c / c++  
> compilers
> ( obviously the msvc stuff will empty )
>
> Just look at the README, I posted two different CMakeLists 
> A minimal and a platinum , the minimal does al that is needed with no frills

Hmm, just see probably the "minimal" which is ideal for a newbie to CMake like 
myself! :)

Researching about the exported symbols problem on Windows I ran around the 
following switch
"-DCMAKE_WINDOWS_EXPORT_ALL_SYMBOLS=TRUE", which solves the problem for the 
classic library problem.
Now both Rexx scripts work:

cmake -G "NMake Makefiles" -DCMAKE_WINDOWS_EXPORT_ALL_SYMBOLS=TRUE 
-DOOREXX_INSTALL_PREFIX=%OOREXX_HOME_32% ..\rxSnippets
...
nmake
...
G:\oorexx.tmp\enrico\win32>rexx rxClassic
rxClassicVersion at line 84' '1.0.0'

1.0.0
rxClassicWorker at line 103'
  Argc 0

rxClassicWorker at line 103'
  Argc 1
  Argv 0  'A'

rxClassicWorker at line 103'
  Argc 2
  Argv 0  'A'
  Argv 1  'B'


G:\oorexx.tmp\enrico\win32>rexx rxClassic
rxClassicVersion at line 84' '1.0.0'

1.0.0
rxClassicWorker at line 103'
  Argc 0

rxClassicWorker at line 103'
  Argc 1
  Argv 0  'A'

rxClassicWorker at line 103'
  Argc 2
  Argv 0  'A'
  Argv 1  'B'


G:\oorexx.tmp\enrico\win32>

This is really just *great*, thank you very much indeed!

---rony


___
Oorexx-devel mailing list
Oorexx-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/oorexx-devel


Re: [Oorexx-devel] Attempt on Windows (Re: How to build external functions using cmake

2019-02-18 Thread Rony G. Flatscher
On 18.02.2019 17:10, Rony G. Flatscher wrote:
> A remark: forgot to delete the lines:
>  cl : Command line warning D9002 : ignoring unknown option '-g'
>
> Those warnings were issued, because I used "cmake -G ...", removing the "-G" 
> (from a very, very,
> very old note) removed the warning in my second runs. So please ignore them 
> in my previous
> posting, there are not there anymore.
>
Rechecking. CMake: the "-G" switch is necessary. Doing a fresh run after 
removing the previous win32
directory does not show the above warnings anymore:

G:\oorexx.tmp\enrico\win32>cmake -G "NMake Makefiles" 
-DCMAKE_BUILD_TYPE=RELEASE -DOOREXX_INSTALL_PREFIX=%OOREXX_HOME_32% 
..\rxSnippets
-- The C compiler identification is MSVC 19.0.24215.1
-- The CXX compiler identification is MSVC 19.0.24215.1
-- Check for working C compiler: E:/Programme/Microsoft Visual Studio 
14.0/VC/bin/cl.exe
-- Check for working C compiler: E:/Programme/Microsoft Visual Studio 
14.0/VC/bin/cl.exe -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: E:/Programme/Microsoft Visual Studio 
14.0/VC/bin/cl.exe
-- Check for working CXX compiler: E:/Programme/Microsoft Visual Studio 
14.0/VC/bin/cl.exe -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Could NOT find Git (missing: GIT_EXECUTABLE)
-- Check if the system is big endian
-- Searching 16 bit integer
-- Looking for sys/types.h
-- Looking for sys/types.h - found
-- Looking for stdint.h
-- Looking for stdint.h - found
-- Looking for stddef.h
-- Looking for stddef.h - found
-- Check size of unsigned short
-- Check size of unsigned short - done
-- Using unsigned short
-- Check if the system is big endian - little endian

--
-- configuration summary for project 'rxSnippets'
--
--   version string .. : 1.0.0
--   build ... : 0
--   revision  : Final
--   RCS . :  -
--
--   requires libraries .. : rexx;rexxapi
-- found . : rexx -
-- : rexxapi -
--
--   build type .. : RELEASE
--   word size ... : 32
--   platform  : LITTLE ENDIAN
--   install prefix .. : C:/Program Files (x86)/dummy
--
--   CMake version ... : 3.12.0-rc3
--   CMake modules path .. : G:/oorexx.tmp/enrico/rxSnippets
-- : 
G:/oorexx.tmp/enrico/rxSnippets/cmake/Modules
--
--
--   generator ... : NMake Makefiles
--   generator program ... : nmake -
--
--   enabled languages ... : C;CXX;RC
--
--   C   compiler  : E:/Programme/Microsoft Visual 
Studio 14.0/VC/bin/cl.exe
--   C   compiler ID . : MSVC
--   C   compiler VERSION  : 19.0.24215.1
--   C   compiler flags .. :-O2 -DNDEBUG
--
--   CXX compiler  : E:/Programme/Microsoft Visual 
Studio 14.0/VC/bin/cl.exe
--   CXX compiler ID . : MSVC
--   CXX compiler VERSION  : 19.0.24215.1
--   CXX compiler flags .. :   -O2  -DNDEBUG
--
--   RC  compiler  : C:/Program Files (x86)/Windows 
Kits/8.1/bin/x86/rc.exe
--   RC  compiler ID . :
--   RC  compiler VERSION  :
--   RC  compiler flags .. :
--
--   compile definitions . : VERSION_STRING="1.0.0"
--
--   include directories . : G:/oorexx.tmp/enrico/win32
-- : 
e:/DropBox/Dropbox/xfer/orx/beta/sandbox_ooRexx/standalone/ooRexx32win/include
-- : 
G:/oorexx.tmp/enrico/rxSnippets/src/include
--
--   user options  :
--
-- end of configuration summary
--

-- Configuring done
-- Generating done
-- Build files have been written to: G:/oorexx.tmp/enrico/win32

G:\oorexx.tmp\enrico\win32>nmake

Microsoft (R) Program Maintenance Utility Version 14.00.24210.0
Copyright (C) Microsoft Corporation.  All rights reserved.

Scanning dependencies of target rxClassic
[ 25%] Building C object CMakeFiles/rxClassic.dir/src/rxClassic.c.obj
cl : Command line warning D9002 : ignoring unknown option '-g'
rxClassic.c
[ 50%] Linking C shared library rxClassic.dll
[ 50%] Built target rxClassic
Scanning dependencies of targ

Re: [Oorexx-devel] Attempt on Windows (Re: How to build external functions using cmake

2019-02-18 Thread Enrico Sorichetti via Oorexx-devel
Dear Rony 
I am very happy that it was useful 

Looking at the status of variable for complex cmakelists 
( and I wrote a couple of them )
Is usually the only way to debug cmakelists errors 

The vdump module was the first one I wrote a long time ago
To get a better knowledge of the cmake ways

Using cmake -G should have caused different errors IIRC

It tells to cmake which generator is being used, 
( I usually go with cmake -G Ninja … … … )
So I do not see why it should meddle with the compiler options

I will push an update to include the proper defaults for the  c / c++  compilers
( obviously the msvc stuff will empty )

Just look at the README, I posted two different CMakeLists 
A minimal and a platinum , the minimal does al that is needed with no frills 

Cheers

E

> On 18 Feb 2019, at 17:07, Rony G. Flatscher  wrote:
> 
> Also, *very* interesting (but to an extend overwhelming) the generated 
> "vars_for_main_at_.txt" file in the build directory!
> 
> 

___
Oorexx-devel mailing list
Oorexx-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/oorexx-devel


Re: [Oorexx-devel] Attempt on Windows (Re: How to build external functions using cmake

2019-02-18 Thread Rony G. Flatscher
A remark: forgot to delete the lines:

 cl : Command line warning D9002 : ignoring unknown option '-g'

Those warnings were issued, because I used "cmake -G ...", removing the "-G" 
(from a very, very,
very old note) removed the warning in my second runs. So please ignore them in 
my previous posting,
there are not there anymore.

---rony

___
Oorexx-devel mailing list
Oorexx-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/oorexx-devel


[Oorexx-devel] Attempt on Windows (Re: How to build external functions using cmake

2019-02-18 Thread Rony G. Flatscher
Tried it on Windows:

G:\oorexx.tmp\enrico\win32>call "e:\Programme\Microsoft Visual Studio 
14.0\VC\vcvarsall.bat" x86
-- The C compiler identification is MSVC 19.0.24215.1
-- The CXX compiler identification is MSVC 19.0.24215.1
-- Check for working C compiler: E:/Programme/Microsoft Visual Studio 
14.0/VC/bin/cl.exe
-- Check for working C compiler: E:/Programme/Microsoft Visual Studio 
14.0/VC/bin/cl.exe -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- Check for working CXX compiler: E:/Programme/Microsoft Visual Studio 
14.0/VC/bin/cl.exe
-- Check for working CXX compiler: E:/Programme/Microsoft Visual Studio 
14.0/VC/bin/cl.exe -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Could NOT find Git (missing: GIT_EXECUTABLE)
-- Check if the system is big endian
-- Searching 16 bit integer
-- Looking for sys/types.h
-- Looking for sys/types.h - found
-- Looking for stdint.h
-- Looking for stdint.h - found
-- Looking for stddef.h
-- Looking for stddef.h - found
-- Check size of unsigned short
-- Check size of unsigned short - done
-- Using unsigned short
-- Check if the system is big endian - little endian

--
-- configuration summary for project 'rxSnippets'
--
--   version string .. : 1.0.0
--   build ... : 0
--   revision  : Final
--   RCS . :  -
--
--   requires libraries .. : rexx;rexxapi
-- found . : rexx -
-- : rexxapi -
--
--   build type .. : Debug
--   word size ... : 32
--   platform  : LITTLE ENDIAN
--   install prefix .. : C:/Program Files (x86)/dummy
--
--   CMake version ... : 3.12.0-rc3
--   CMake modules path .. : G:/oorexx.tmp/enrico/rxSnippets
-- : 
G:/oorexx.tmp/enrico/rxSnippets/cmake/Modules
--
--
--   generator ... : NMake Makefiles
--   generator program ... : nmake -
--
--   enabled languages ... : C;CXX;RC
--
--   C   compiler  : E:/Programme/Microsoft Visual 
Studio 14.0/VC/bin/cl.exe
--   C   compiler ID . : MSVC
--   C   compiler VERSION  : 19.0.24215.1
--   C   compiler flags .. : -g -DDEBUG
--
--   CXX compiler  : E:/Programme/Microsoft Visual 
Studio 14.0/VC/bin/cl.exe
--   CXX compiler ID . : MSVC
--   CXX compiler VERSION  : 19.0.24215.1
--   CXX compiler flags .. : -g -DDEBUG
--
--   RC  compiler  : C:/Program Files (x86)/Windows 
Kits/8.1/bin/x86/rc.exe
--   RC  compiler ID . :
--   RC  compiler VERSION  :
--   RC  compiler flags .. : /D_DEBUG
--
--   compile definitions . : VERSION_STRING="1.0.0"
--
--   include directories . : G:/oorexx.tmp/enrico/win32
-- : 
e:/DropBox/Dropbox/xfer/orx/beta/sandbox_ooRexx/standalone/ooRexx32win/include
-- : 
G:/oorexx.tmp/enrico/rxSnippets/src/include
--
--   user options  :
--
-- end of configuration summary
--

-- Configuring done
-- Generating done
-- Build files have been written to: G:/oorexx.tmp/enrico/win32

G:\oorexx.tmp\enrico\win32>

G:\oorexx.tmp\enrico\win32>nmake

Microsoft (R) Program Maintenance Utility Version 14.00.24210.0
Copyright (C) Microsoft Corporation.  All rights reserved.

Scanning dependencies of target rxClassic
[ 25%] Building C object CMakeFiles/rxClassic.dir/src/rxClassic.c.obj
cl : Command line warning D9002 : ignoring unknown option '-g'
cl : Command line warning D9002 : ignoring unknown option '-g'
rxClassic.c
G:\oorexx.tmp\enrico\rxSnippets\src\rxClassic.c(12): fatal error C1083: 
Cannot open include file: 'rexx.h': No such file or directory
NMAKE : fatal error U1077: 'E:\PROGRA~2\MICROS~3.0\VC\bin\cl.exe' : return 
code '0x2'
Stop.
NMAKE : fatal error U1077: '"E:\Programme\Microsoft Visual Studio 
14.0\VC\BIN\nmake.exe"' : return code '0x2'
Stop.
NMAKE : fatal error U1077: '"E:\Programme\Microsoft Visual Studio 
14.0\VC\BIN\nmake.exe"' : return code '0x2'
Stop.

ooRexx on Windows has the *.h files in "api" instead of "include".

Adjusted it by creat