modula3 / cm3

Critical Mass Modula-3
http://modula3.github.io/cm3/
Other
135 stars 25 forks source link

[Minor issue] AMD64_CYGWIN problem - no hyphen allowed in folder names or OS variables #1071

Open VictorMiasnikov opened 2 years ago

VictorMiasnikov commented 2 years ago

Todo: add more details in this first post AMD64_CYGWIN problem - no hyphen allowed in folder names or OS variables

VictorMiasnikov commented 2 years ago

It is minor issue because:

= = P.S. I don't known only how reproduce "unsuccess". Because we have successfully built and worked cm3-all-AMD64_CYGWIN*.  This binary distributive has been published in "Releases" on Github. All people can download it and use. = =

+ = = We have Critical Mass Modula-3 version 5.11.9 :

https://github.com/VictorMiasnikov/cm3/releases/tag/d5.11.9-ZZYYXX-20220208_13-48 = =

VictorMiasnikov commented 2 years ago

(...)

VictorMiasnikov commented 2 years ago

(...)

VictorMiasnikov commented 2 years ago

We have info about a problem:

{{{ ( VVM: someone text was by me ) After a lengthy build process it failed with this error:

 autoreconf -i
configure.ac:17: installing './ar-lib'
configure.ac:17: installing './compile'
configure.ac:13: installing './config.guess'
configure.ac:13: installing './config.sub'
configure.ac:14: installing './install-sh'
configure.ac:14: installing './missing'
Makefile.am:2: error: bad characters in variable name 'libm3unit-numeric_a_SOURCES'
Makefile.am: installing './depcomp'
automake-1.16: warnings are treated as errors
Makefile.am:2: warning: variable 'libm3unit-numeric_a_SOURCES' is defined but no program or
Makefile.am:2: library has 'libm3unit-numeric_a' as canonical name (possible typo)
autoreconf-2.71: error: automake failed with exit status: 1
"/home/Administrator/cm3-install/bin/config/Autotools.common", line 76: quake runtime error: exit 256:  autoreconf -i

--procedure--  -line-  -file---
exec               --  <builtin>
automake           76  /home/Administrator/cm3-install/bin/config/Autotools.common
make_lib          121  /home/Administrator/cm3-install/bin/config/Autotools.common
library            --  <builtin>
include_dir         7  /home/Administrator/cm3-master/m3-libs/unittest-numeric/src/m3makefile
                    8  /home/Administrator/cm3-master/m3-libs/unittest-numeric/AMD64_CYGWIN/m3make.args

Fatal Error: procedure "make_lib" defined in "/home/Administrator/cm3-install/bin/cm3.cfg" failed.

 *** execution of [<function _BuildGlobalFunction at 0x6fffffce5160>, <function _ShipFunction at 0x6fffffce51f0>] failed ***
ERROR: ./do-cm3-all.py buildship   AMD64_CYGWIN

Very disappointed.

}}}

+ {{{

It seems there is no hyphen allowed in variable names. This is the reason we have the errors above.

Update: or is it a typo? What does the 'a' in 'libm3unit-numeric_a_SOURCES' means?

}}}

VictorMiasnikov commented 2 years ago

(...)

VictorMiasnikov commented 2 years ago

(...)

VictorMiasnikov commented 2 years ago

(...)

VictorMiasnikov commented 2 years ago

Who can reproduce a problem?

jpgpng commented 2 years ago

Who can reproduce a problem?

You? Do you have Cygwin? Just try it and see. The bootstrap is fine but the compilation of the cloned repo (this repo) with boot2.py failed with this error. CM3 is not popular and Cygwin too. No one will do other than us (other than you to be clear).

VictorMiasnikov commented 2 years ago

(...) This is draft specially typed by V.V.M.

VictorMiasnikov commented 2 years ago

(...) This is draft N2 specially typed by V.V.M.

VictorMiasnikov commented 2 years ago

(...) This is draft N3 specially typed by V.V.M.

VictorMiasnikov commented 2 years ago

Who can reproduce a problem?

You? Do you have Cygwin? Just try it and see. The bootstrap is fine but the compilation of the cloned repo (this repo) with boot2.py failed with this error. CM3 is not popular and Cygwin too. No one will do other than us (other than you to be clear).

Of course, I can rename my folder "cm3" to folder "cm-3" Or to "c-m3" Or to "c--m3". And by this way I can reproduce error.

But we should solve error. I am not sure than it is simple job

VictorMiasnikov commented 2 years ago

P.S.

Oh: AMD64_CYGWIN is one of targets for "cm3 with Autotools" method (?).

It is first target, but it will be "not last target".

ghost commented 2 years ago

Who can reproduce a problem?

You? Do you have Cygwin? Just try it and see. The bootstrap is fine but the compilation of the cloned repo (this repo) with boot2.py failed with this error. CM3 is not popular and Cygwin too. No one will do other than us (other than you to be clear).

Of course, I can rename my folder "cm3" to folder "cm-3" Or to "c-m3" Or to "c--m3". And by this way I can reproduce error.

But we should solve error. I am not sure than it is simple job

Makefiles are generated by the Python scripts? Are your Python scripts stupid? I don't see the relation here. Not because the source directory has a hyphen in name then it will add a hyphen to the makefile variable name. If it does so, then it's stupid. Let's recall. It's 'libm3unit-numeric_a_SOURCES' isn't it? The hyphen is between 'libm3unit' and 'numeric'. In short the library is called 'libm3unit-numeric'. So it has nothing to do with the source directory has a hyphen in name or not. Just it.

ghost commented 2 years ago

People do not use git to clone (suppose they are not on their home computer and can't install git bash or msys2), will use github's feature to download entire repo as zip. The zip downloaded will have the name '[repo]-master.zip'. Let's assume his Python scripts are stupid, then just tell them to rename it to something doesn't have the hyphen. BTW, @jpgpng 's directory structure: cm3-dist (the bootstrap), cm3-build (the build directory to build bootstrap), cm3-install (where he installs cm3) and cm3-master (the cloned repo via downloading zip) is very likely to cause problems because of these stupid Python scripts. Let's just tell him to rename his directories to sth like cm3_dist, cm3_build, cm3_install and cm3_master. If those Python scripts are too stupid then just cm3dist, cm3build, cm3install and cm3master.

ghost commented 2 years ago

Not to mention that this hyphen not allowed in source directory name nonsense. If someone has a look at the cm3 source tree he will see directories here all have a bunch of hyphens in their names!

ghost commented 2 years ago

To be clear. It's hyphen not allowed in makefile's variable names. It's his Python scripts that problematic and need to fix, not the hyphen in the source directory name.

VictorMiasnikov commented 2 years ago

10.09.2022, 01:52, "pwd96m4a" @.***>: Not to mention that this hyphen not allowed in source directory nonsense. If someone has a look at the cm3 source tree he will see directories here all have a bunch of hyphens in their names!

In short: I don't know  ( It is answer on all 3-4 last messages in this Issue). Maybe don't know now. May be I will try reproduce this.

VictorMiasnikov commented 2 years ago

10.09.2022, 01:50, "pwd96m4a" @.***>: People do not use git to clone (suppose they are not on their home computer and can't install git bash or msys2), will use github's feature to download entire repo as zip. The zip downloaded will have the name '[repo]-master.zip'. Let's assume his Python scripts are stupid, then just tell them to rename it to something doesn't have the hyphen. BTW, @jpgpng 's directory structure: cm3-dist (the bootstrap), cm3-build (the build directory to build bootstrap), cm3-install (where he installs cm3) and cm3-master (the cloned repo via downloading zip) is very likely to cause problems because of these stupid Python scripts. Let's just tell him to rename his directories to sth like cm3_dist, cm3_build, cm3_install and cm3_master. If those Python scripts are too stupid then just cm3dist, cm3build, cm3install and cm3master.

May be it is solution...

P.S. I don't known only how reproduce "unsuccess". Because we have successfully built and worked cm3-all-AMD64_CYGWIN*.  This binary distributive has been published in "Releases" on Github. All people can download it and use.

jpgpng commented 2 years ago

@pwd96m4a If it's only because my directories have a hyphen in their names and autotools based build system failed then I was right to say cmake based build system is superior :smile: The cmake based build system worked perfectly fine for me :smile:

jpgpng commented 2 years ago

@VictorMiasnikov It's right to stop investing on Cygwin related build issues. If you think everything is working fine then you could close this issue and forget about Cygwin, it has haunted us for weeks :smile:

VictorMiasnikov commented 2 years ago

} cmake based build system

It doesn't exist. Only script for bootstrapping.

( "autotools based build system" is exist. If fact, in case AMD64_CYGWIN target autotools used and when used "cmake .py" script for bootstrapping)

10.09.2022, 12:02, "jpgpng" @.***>: @pwd96m4a If it's only because my directories have a hyphen in their names and autotools based build system failed then I was right to say cmake based build system is superior 😄 The cmake based build system worked perfectly fine for me 😄

VictorMiasnikov commented 2 years ago

} It's right to stop investing on Cygwin related build issues. If you think everything is working fine

I even known better way for creating problems: using "space" ( N32) in folders name(s) -)

About "stopping" itself: we ( ok: as minimum, personal "I") have successfully bootstrapped cm3 AMD64_CYGWIN.

Both cm3.exe and based (?) libraries ( m3lib and m3core).

We can do next steps.

I want continue testing current state LLVM13 binding and (or) m3gdb. I.e. advanced debugging of Modula-3 source code based software.

10.09.2022, 12:04, "jpgpng" @.***>: @VictorMiasnikov It's right to stop investing on Cygwin related build issues. If you think everything is working fine then you could close this issue and forget about Cygwin, it has haunted us for weeks 😄

jpgpng commented 2 years ago

@VictorMiasnikov So we agreed to just close this issue. I'm totally agree with you that LLVM backend and m3gdb are more important :smile:

VictorMiasnikov commented 2 years ago

Let's stay our "minor Issue" open... I going to open series of "minor issues" liked this.

10.09.2022, 21:34, "jpgpng" @.***>: @VictorMiasnikov So we agreed to just close this issue. I'm totally agree with you that LLVM backend and m3gdb are more important 😄

ghost commented 2 years ago

So he's going to pollute the issues section of this repo with his cryptic titled ones that no one want to look at other than him...