Re: Build problems with ZDS-II

2020-02-20 Thread Gregory Nutt




I saw several patch for z80, does the problem get fixed or we need take a look?

No, it is not fixed.  That is just repartitioning of functionality.


Re: Build problems with ZDS-II

2020-02-20 Thread Xiang Xiao
Greg,
I saw several patch for z80, does the problem get fixed or we need take a look?

Thanks
Xiang

On Fri, Feb 21, 2020 at 4:25 AM Gregory Nutt  wrote:
>
> Here is a little more detail about the error:
> >
> >   Here are the problems that I see now:
> >
> > 1. The eZ80 COMPILE target generates the .obj file without using the
> > fully decorated object name.  For example, when it is supposed to
> > generate:
> >
> > 
> > mkfatfs.cygdrive.d.Spuda.Documents.projects.nuttx.master.apps-fork.fsutils.mkfatfs.obj
> >
> > It instead generates:
> >
> > mkfatfs.obj
> >
> > That should be easy to fix in the COMPILE and ASSEMBLE definitions.
> >
> > 2. The full path to the archive is
> >
> > D:\Spuda\Documents\projects\nuttx\master\apps-fork\libapps.lib
> >
> > But by the time it gets to the ZDS-II librarian, it becomes:
> >
> > D:SpudaDocumentsprojectsnuttxmasterapps-forklibapps.lib
> >
> > I haven't figures out where the backslashes are being lost yet.
> >
> > I am expecting that this explicit GCC command option will cause
> > failures too:
> >
> > ./Makefile: $(call COMPILE, -fno-lto $<, $@)
> >
> > That really should be dependent on CONFIG_ARCH_TOOLCHAIN_GNU. There
> > should be an issue opened up on that.
> >
> > These all seem like simple things, but I haven't solved them all yet.
> > Makefiles are too difficult to debug!
> >
> Detailed output with V=1 and some instrumentation:
>
> make[2]: Entering directory
> 
> '/cygdrive/d/Spuda/Documents/projects/nuttx/master/apps-fork/fsutils/mkfatfs'
>
> ### Here three files are compiled.  They still generate the
> undecorated object files.
>
> /cygdrive/c/ZiLOG/ZDSII_eZ80Acclaim!_5.3.3/bin/ez80cc.exe -warn
> -nodebug -optsize -keeplst -NOlist -NOlistinc -keepasm -chartype:S
> -promote -cpu:eZ80F91 -NOgenprintf -NOmodsect -asmsw:" -cpu:eZ80F91
> -NOigcase
> 
> -include:'D:\Spuda\Documents\projects\nuttx\master\nuttx-fork\include;C:\ZiLOG\ZDSII_eZ80Acclaim!_5.3.3\include\std;C:\ZiLOG\ZDSII_eZ80Acclaim!_5.3.3\include\zilog'
> -warn -nodebug -NOsdiopt"
> 
> -stdinc:'D:\Spuda\Documents\projects\nuttx\master\nuttx-fork\include;C:\ZiLOG\ZDSII_eZ80Acclaim!_5.3.3\include\std;C:\ZiLOG\ZDSII_eZ80Acclaim!_5.3.3\include\zilog'
> -usrinc:'.' -define:_EZ80F91 -define:
> -usrinc:'D:\Spuda\Documents\projects\nuttx\master\apps-fork\include'
> `cygpath -w " mkfatfs.c"`
> mkfatfs.c
>
> /cygdrive/c/ZiLOG/ZDSII_eZ80Acclaim!_5.3.3/bin/ez80cc.exe -warn
> -nodebug -optsize -keeplst -NOlist -NOlistinc -keepasm -chartype:S
> -promote -cpu:eZ80F91 -NOgenprintf -NOmodsect -asmsw:" -cpu:eZ80F91
> -NOigcase
> 
> -include:'D:\Spuda\Documents\projects\nuttx\master\nuttx-fork\include;C:\ZiLOG\ZDSII_eZ80Acclaim!_5.3.3\include\std;C:\ZiLOG\ZDSII_eZ80Acclaim!_5.3.3\include\zilog'
> -warn -nodebug -NOsdiopt"
> 
> -stdinc:'D:\Spuda\Documents\projects\nuttx\master\nuttx-fork\include;C:\ZiLOG\ZDSII_eZ80Acclaim!_5.3.3\include\std;C:\ZiLOG\ZDSII_eZ80Acclaim!_5.3.3\include\zilog'
> -usrinc:'.' -define:_EZ80F91 -define:
> -usrinc:'D:\Spuda\Documents\projects\nuttx\master\apps-fork\include'
> `cygpath -w " configfat.c"`
> configfat.c
>
> /cygdrive/c/ZiLOG/ZDSII_eZ80Acclaim!_5.3.3/bin/ez80cc.exe -warn
> -nodebug -optsize -keeplst -NOlist -NOlistinc -keepasm -chartype:S
> -promote -cpu:eZ80F91 -NOgenprintf -NOmodsect -asmsw:" -cpu:eZ80F91
> -NOigcase
> 
> -include:'D:\Spuda\Documents\projects\nuttx\master\nuttx-fork\include;C:\ZiLOG\ZDSII_eZ80Acclaim!_5.3.3\include\std;C:\ZiLOG\ZDSII_eZ80Acclaim!_5.3.3\include\zilog'
> -warn -nodebug -NOsdiopt"
> 
> -stdinc:'D:\Spuda\Documents\projects\nuttx\master\nuttx-fork\include;C:\ZiLOG\ZDSII_eZ80Acclaim!_5.3.3\include\std;C:\ZiLOG\ZDSII_eZ80Acclaim!_5.3.3\include\zilog'
> -usrinc:'.' -define:_EZ80F91 -define:
> -usrinc:'D:\Spuda\Documents\projects\nuttx\master\apps-fork\include'
> `cygpath -w " writefat.c"`
> writefat.c
>
> ### Here is the ARCHIVE.  A debug echo shows that $1, $2m, and $AR
> are okay
>
> 1= D:SpudaDocumentsprojectsnuttxmasterapps-forklibapps.lib
> 2=
> 
> mkfatfs.cygdrive.d.Spuda.Documents.projects.nuttx.master.apps-fork.fsutils.mkfatfs.obj
> 
> configfat.cygdrive.d.Spuda.Documents.projects.nuttx.master.apps-fork.fsutils.mkfatfs.obj
> 
> writefat.cygdrive.d.Spuda.Documents.projects.nuttx.master.apps-fork.fsutils.mkfatfs.obj
> AR=/cygdrive/c/ZiLOG/ZDSII_eZ80Acclaim!_5.3.3/bin/ez80lib.exe
>
> ### This is the ARCHIVE loop.  Things are divided on separate lines
> to make it more readable
>
> for __obj in
> 
> mkfatfs.cygdrive.d.Spuda.Documents.projects.nuttx.master.apps-fork.fsutils.mkfatfs.obj
> 
> configfat.cygdrive.d.Spuda.Documents.projects.nuttx.master.apps-fork.fsutils.mkfatfs.obj
> 
> writefat.cygdrive.d.Spuda.Documents.projects.nuttx.master.apps-fork.fsutils.mkfatfs.obj
> ; \
> do \
> /cygdrive/c/ZiLOG/ZDSII_eZ80Accl

Re: Build problems with ZDS-II

2020-02-20 Thread Gregory Nutt

Here is a little more detail about the error:


  Here are the problems that I see now:

1. The eZ80 COMPILE target generates the .obj file without using the 
fully decorated object name.  For example, when it is supposed to 
generate:



mkfatfs.cygdrive.d.Spuda.Documents.projects.nuttx.master.apps-fork.fsutils.mkfatfs.obj

It instead generates:

mkfatfs.obj

That should be easy to fix in the COMPILE and ASSEMBLE definitions.

2. The full path to the archive is

D:\Spuda\Documents\projects\nuttx\master\apps-fork\libapps.lib

But by the time it gets to the ZDS-II librarian, it becomes:

D:SpudaDocumentsprojectsnuttxmasterapps-forklibapps.lib

I haven't figures out where the backslashes are being lost yet.

I am expecting that this explicit GCC command option will cause 
failures too:


./Makefile: $(call COMPILE, -fno-lto $<, $@)

That really should be dependent on CONFIG_ARCH_TOOLCHAIN_GNU. There 
should be an issue opened up on that.


These all seem like simple things, but I haven't solved them all yet.  
Makefiles are too difficult to debug!



Detailed output with V=1 and some instrumentation:

   make[2]: Entering directory
   '/cygdrive/d/Spuda/Documents/projects/nuttx/master/apps-fork/fsutils/mkfatfs'

   ### Here three files are compiled.  They still generate the
   undecorated object files.

   /cygdrive/c/ZiLOG/ZDSII_eZ80Acclaim!_5.3.3/bin/ez80cc.exe -warn
   -nodebug -optsize -keeplst -NOlist -NOlistinc -keepasm -chartype:S
   -promote -cpu:eZ80F91 -NOgenprintf -NOmodsect -asmsw:" -cpu:eZ80F91
   -NOigcase
   
-include:'D:\Spuda\Documents\projects\nuttx\master\nuttx-fork\include;C:\ZiLOG\ZDSII_eZ80Acclaim!_5.3.3\include\std;C:\ZiLOG\ZDSII_eZ80Acclaim!_5.3.3\include\zilog'
   -warn -nodebug -NOsdiopt"
   
-stdinc:'D:\Spuda\Documents\projects\nuttx\master\nuttx-fork\include;C:\ZiLOG\ZDSII_eZ80Acclaim!_5.3.3\include\std;C:\ZiLOG\ZDSII_eZ80Acclaim!_5.3.3\include\zilog'
   -usrinc:'.' -define:_EZ80F91 -define:
   -usrinc:'D:\Spuda\Documents\projects\nuttx\master\apps-fork\include'
   `cygpath -w " mkfatfs.c"`
   mkfatfs.c

   /cygdrive/c/ZiLOG/ZDSII_eZ80Acclaim!_5.3.3/bin/ez80cc.exe -warn
   -nodebug -optsize -keeplst -NOlist -NOlistinc -keepasm -chartype:S
   -promote -cpu:eZ80F91 -NOgenprintf -NOmodsect -asmsw:" -cpu:eZ80F91
   -NOigcase
   
-include:'D:\Spuda\Documents\projects\nuttx\master\nuttx-fork\include;C:\ZiLOG\ZDSII_eZ80Acclaim!_5.3.3\include\std;C:\ZiLOG\ZDSII_eZ80Acclaim!_5.3.3\include\zilog'
   -warn -nodebug -NOsdiopt"
   
-stdinc:'D:\Spuda\Documents\projects\nuttx\master\nuttx-fork\include;C:\ZiLOG\ZDSII_eZ80Acclaim!_5.3.3\include\std;C:\ZiLOG\ZDSII_eZ80Acclaim!_5.3.3\include\zilog'
   -usrinc:'.' -define:_EZ80F91 -define:
   -usrinc:'D:\Spuda\Documents\projects\nuttx\master\apps-fork\include'
   `cygpath -w " configfat.c"`
   configfat.c

   /cygdrive/c/ZiLOG/ZDSII_eZ80Acclaim!_5.3.3/bin/ez80cc.exe -warn
   -nodebug -optsize -keeplst -NOlist -NOlistinc -keepasm -chartype:S
   -promote -cpu:eZ80F91 -NOgenprintf -NOmodsect -asmsw:" -cpu:eZ80F91
   -NOigcase
   
-include:'D:\Spuda\Documents\projects\nuttx\master\nuttx-fork\include;C:\ZiLOG\ZDSII_eZ80Acclaim!_5.3.3\include\std;C:\ZiLOG\ZDSII_eZ80Acclaim!_5.3.3\include\zilog'
   -warn -nodebug -NOsdiopt"
   
-stdinc:'D:\Spuda\Documents\projects\nuttx\master\nuttx-fork\include;C:\ZiLOG\ZDSII_eZ80Acclaim!_5.3.3\include\std;C:\ZiLOG\ZDSII_eZ80Acclaim!_5.3.3\include\zilog'
   -usrinc:'.' -define:_EZ80F91 -define:
   -usrinc:'D:\Spuda\Documents\projects\nuttx\master\apps-fork\include'
   `cygpath -w " writefat.c"`
   writefat.c

   ### Here is the ARCHIVE.  A debug echo shows that $1, $2m, and $AR
   are okay

   1= D:SpudaDocumentsprojectsnuttxmasterapps-forklibapps.lib
   2=
   
mkfatfs.cygdrive.d.Spuda.Documents.projects.nuttx.master.apps-fork.fsutils.mkfatfs.obj
   
configfat.cygdrive.d.Spuda.Documents.projects.nuttx.master.apps-fork.fsutils.mkfatfs.obj
   
writefat.cygdrive.d.Spuda.Documents.projects.nuttx.master.apps-fork.fsutils.mkfatfs.obj
   AR=/cygdrive/c/ZiLOG/ZDSII_eZ80Acclaim!_5.3.3/bin/ez80lib.exe

   ### This is the ARCHIVE loop.  Things are divided on separate lines
   to make it more readable

   for __obj in
   
mkfatfs.cygdrive.d.Spuda.Documents.projects.nuttx.master.apps-fork.fsutils.mkfatfs.obj
   
configfat.cygdrive.d.Spuda.Documents.projects.nuttx.master.apps-fork.fsutils.mkfatfs.obj
   
writefat.cygdrive.d.Spuda.Documents.projects.nuttx.master.apps-fork.fsutils.mkfatfs.obj
   ; \
   do \
   /cygdrive/c/ZiLOG/ZDSII_eZ80Acclaim!_5.3.3/bin/ez80lib.exe -quiet
   -warn
   "D:\Spuda\Documents\projects\nuttx\master\apps-fork\libapps.lib"=-+$__obj
   || \
  { echo
   "/cygdrive/c/ZiLOG/ZDSII_eZ80Acclaim!_5.3.3/bin/ez80lib.exe
   "D:\Spuda\Documents\projects\nuttx\master\apps-fork\libapps.lib"=-+$__obj
   FAILED!" ; exit 1 ; } \
   done

   ### This looks like the first call to $(AR).  The $(AR) is missing
   and seems to generate the error
   ### The library patch still seems good

   -quiet -w

Re: Build problems with ZDS-II

2020-02-20 Thread Gregory Nutt

On 2/20/2020 11:17 AM, Xiang Xiao wrote:

Do you include my patch?

Yes

And does the same config pass the build yesterday?


Yesterday I could not see some failures because $(Q) was still there.  
So the archiver echo error output was being lost.  Things have gotten 
worse since yesterday, but I think most of the issues are on the ez80 
side.  Here are the problems that I see now:


1. The eZ80 COMPILE target generates the .obj file without using the 
fully decorated object name.  For example, when it is supposed to generate:


   
mkfatfs.cygdrive.d.Spuda.Documents.projects.nuttx.master.apps-fork.fsutils.mkfatfs.obj

It instead generates:

   mkfatfs.obj

That should be easy to fix in the COMPILE and ASSEMBLE definitions.

2. The full path to the archive is

   D:\Spuda\Documents\projects\nuttx\master\apps-fork\libapps.lib

But by the time it gets to the ZDS-II librarian, it becomes:

   D:SpudaDocumentsprojectsnuttxmasterapps-forklibapps.lib

I haven't figures out where the backslashes are being lost yet.

I am expecting that this explicit GCC command option will cause failures 
too:


   ./Makefile: $(call COMPILE, -fno-lto $<, $@)

That really should be dependent on CONFIG_ARCH_TOOLCHAIN_GNU. There 
should be an issue opened up on that.


These all seem like simple things, but I haven't solved them all yet.  
Makefiles are too difficult to debug!


Greg





Re: Build problems with ZDS-II

2020-02-20 Thread Xiang Xiao
Do you include my patch?
https://github.com/apache/incubator-nuttx-apps/pull/79
And does the same config pass the build yesterday?
This patch modify some z80 specifical Make.defs:
commit 342f76a5292d4b5f70cb0184d21225689c3ccec2
Author: Xiang Xiao 
Date:   Wed Feb 19 19:41:54 2020 +0800

Makefile: Remove @echo from ARCHIVE

to avoid shell complain that @echo can't find if the variable
expand in the compound
command(e.g. ARLOCK) and remove $(Q) before $AR so the result is
almost same as before.
But the change is minor.

Thanks
Xiang

On Fri, Feb 21, 2020 at 1:00 AM Gregory Nutt  wrote:
>
> Hi, Xiang, Chao,
>
> I am building for the ez80-based  z20x board now and running into some
> problems.  I am getting warnings like this in every directory under apps:
>
> make[2]: Entering directory
> '/cygdrive/d/Spuda/Documents/projects/nuttx/master/apps/fsutils/mkfatfs'
> mkfatfs.c
> configfat.c
> writefat.c
> (Module: D:\Spuda\Documents\projects\nuttx\master\apps\libapps.lib)
> WARNING (610) --> Module
> 
> "mkfatfs.cygdrive.d.Spuda.Documents.projects.nuttx.master.apps.fsutils.mkfatfs.obj"
> not found.
> (Module: D:\Spuda\Documents\projects\nuttx\master\apps\libapps.lib)
> WARNING (610) --> Module
> 
> "configfat.cygdrive.d.Spuda.Documents.projects.nuttx.master.apps.fsutils.mkfatfs.obj"
> not found.
> (Module: D:\Spuda\Documents\projects\nuttx\master\apps\libapps.lib)
> WARNING (610) --> Module
> 
> "writefat.cygdrive.d.Spuda.Documents.projects.nuttx.master.apps.fsutils.mkfatfs.obj"
> not found.
> make[2]: Leaving directory
> '/cygdrive/d/Spuda/Documents/projects/nuttx/master/apps/fsutils/mkfatfs'
>
> That is a shorter example that illustrates the problem.  At the end of
> the successful compilation, I also get some linker errors that would
> seem to indicate that there is file corruption, but I cannot yet be
> certain of that.
>
> Any thought?  The warnings are annoying if nothing else.
>
> Greg
>
>


Build problems with ZDS-II

2020-02-20 Thread Gregory Nutt

Hi, Xiang, Chao,

I am building for the ez80-based  z20x board now and running into some 
problems.  I am getting warnings like this in every directory under apps:


   make[2]: Entering directory
   '/cygdrive/d/Spuda/Documents/projects/nuttx/master/apps/fsutils/mkfatfs'
   mkfatfs.c
   configfat.c
   writefat.c
   (Module: D:\Spuda\Documents\projects\nuttx\master\apps\libapps.lib)
   WARNING (610) --> Module
   
"mkfatfs.cygdrive.d.Spuda.Documents.projects.nuttx.master.apps.fsutils.mkfatfs.obj"
   not found.
   (Module: D:\Spuda\Documents\projects\nuttx\master\apps\libapps.lib)
   WARNING (610) --> Module
   
"configfat.cygdrive.d.Spuda.Documents.projects.nuttx.master.apps.fsutils.mkfatfs.obj"
   not found.
   (Module: D:\Spuda\Documents\projects\nuttx\master\apps\libapps.lib)
   WARNING (610) --> Module
   
"writefat.cygdrive.d.Spuda.Documents.projects.nuttx.master.apps.fsutils.mkfatfs.obj"
   not found.
   make[2]: Leaving directory
   '/cygdrive/d/Spuda/Documents/projects/nuttx/master/apps/fsutils/mkfatfs'

That is a shorter example that illustrates the problem.  At the end of 
the successful compilation, I also get some linker errors that would 
seem to indicate that there is file corruption, but I cannot yet be 
certain of that.


Any thought?  The warnings are annoying if nothing else.

Greg