Hi,

The patch partially worked.  It removed all the "make all" errors but still
had the windows_nt.mk issue which made the "make all" create spurious
directories outside of the gnoga directory.  It also caused the sequence
"make all" => "make clean" => "make all" to fail on the second "make all"
due to some zanyblue conflicts.  "make install" still did not work.  I made
the two changes I discussed earlier:

1.  fix the COPY, MKDIR, RMDIR, and DELETE commands
cd deps/zanyblue/src/mkfile
mv Windows_NT.mk Windows_NT.old
cp unix.mk Windows_NT.mk

2.  Fix make install
changed tools/tools.gpr to have ".exe" appended to the executable names.

I've never made a diff before, so I might have messed this up, but I am
attaching my updated diff file for reference.

I don't know if these are good changes, but they are what worked for:
Windows 10 Home
mingw64, gcc 7.2 for x86_64-w64-mingw32
gprbuild from Gnoga sourceforge site.

They may break things on other platforms or configurations.  And one comes
involves changing zanyblue files...so not sure how useful this is.


On Sat, Nov 4, 2017 at 4:54 PM, Pascal via Gnoga-list <
gnoga-list@lists.sourceforge.net> wrote:

> Hello Jeremiah, see answers below.
> HTH, Pascal.
> http://blady.pagesperso-orange.fr
>
>
>
>
diff --git a/Makefile b/Makefile
index ef21757..3a41ce7 100644
--- a/Makefile
+++ b/Makefile
@@ -132,6 +132,7 @@ simple_components:
        $(INSTALLER) --prefix=$(CWD)/build --install-name=components 
deps/simple_components/lib_components.gpr -XAtomic_Access=${ATOMIC_ACCESS} 
-XLegacy=Ada2012
 
 lib/libsqlite3.a:
+       - $(MKDIR) lib
        cd deps/simple_components/sqlite-sources && gcc -s -c -O2 -o sqlite3.o 
sqlite3.c
        cd deps/simple_components/sqlite-sources && ar rcs libsqlite3.a 
sqlite3.o
        cd deps/simple_components/sqlite-sources && $(MOVE) libsqlite3.a 
..$(PATHSEP)..$(PATHSEP)..$(PATHSEP)lib
@@ -141,8 +142,8 @@ sqlite3: lib/libsqlite3.a
 
 # Zanyblue with DEBUG on
 zanyblue:
-       cd deps/zanyblue/src && $(MAKE) BUILD=Debug
-       cd deps/zanyblue/src && $(MAKE) INSTALL_DIR=$(CWD)/build install
+       cd deps/zanyblue/src && $(MAKE) BUILD=Debug APPDIRS="zbmcompile zbinfo"
+       cd deps/zanyblue/src && $(MAKE) INSTALL_DIR=$(CWD)/build 
APPDIRS="zbmcompile zbinfo" install
 
 pragmarc:
        $(BUILDER) -P deps/PragmARC/lib_pragmarc.gpr
@@ -197,7 +198,7 @@ release: deps $(BUILD_SQLITE3) setup basic_components
 install: release gnoga_tools
        $(INSTALLER) --prefix=$(PREFIX) --install-name=components 
deps/simple_components/lib_components.gpr -XAtomic_Access=${ATOMIC_ACCESS} 
-XLegacy=Ada2012
 # TODO libsqlite3
-       $(MAKE) -C deps/zanyblue/src INSTALL_DIR=$(PREFIX) install
+       $(MAKE) -C deps/zanyblue/src INSTALL_DIR=$(PREFIX) APPDIRS="zbmcompile 
zbinfo" install
        $(INSTALLER) --prefix=$(PREFIX) --install-name=pragmarc 
deps/PragmARC/lib_pragmarc.gpr
        cd src && $(INSTALLER) --prefix=$(PREFIX) --install-name=gnoga 
gnoga.gpr -XPRJ_BUILD=Release -XPRJ_TARGET=${PRJ_TARGET}
        cd tools && $(INSTALLER) --prefix=$(PREFIX) --install-name=gnoga 
--mode=usage tools.gpr -XPRJ_BUILD=Release -XPRJ_TARGET=${PRJ_TARGET}
@@ -206,7 +207,7 @@ install: release gnoga_tools
 install_debug:
        $(INSTALLER) --prefix=$(PREFIX) --install-name=components 
deps/simple_components/lib_components.gpr -XAtomic_Access=${ATOMIC_ACCESS} 
-XLegacy=Ada2012
 # TODO libsqlite3
-       $(MAKE) -C deps/zanyblue/src INSTALL_DIR=$(PREFIX) BUILD=Debug install
+       $(MAKE) -C deps/zanyblue/src INSTALL_DIR=$(PREFIX) BUILD=Debug 
APPDIRS="zbmcompile zbinfo" install
        $(INSTALLER) --prefix=$(PREFIX) --install-name=pragmarc 
deps/PragmARC/lib_pragmarc.gpr
        cd src && $(INSTALLER) --prefix=$(PREFIX) --install-name=gnoga 
gnoga.gpr -XPRJ_TARGET=${PRJ_TARGET}
        cd tools && $(INSTALLER) --prefix=$(PREFIX) --install-name=gnoga 
--mode=usage tools.gpr -XPRJ_TARGET=${PRJ_TARGET}
@@ -297,7 +298,7 @@ clean_all: clean clean_deps
 clean_deps:
        $(CLEANER) -P deps/simple_components/lib_components.gpr
        $(CLEANER) -P deps/PragmARC/lib_pragmarc.gpr
-       cd deps/zanyblue && $(MAKE) -C src clean
+       cd deps/zanyblue && $(MAKE) -C src APPDIRS="zbmcompile zbinfo" clean
        $(RMS) build
        cd deps && $(RMS) MultiMarkdown-4
        cd deps && $(RMS) electron-quick-start
diff --git a/deps/zanyblue/src/mkfile/Windows_NT.mk 
b/deps/zanyblue/src/mkfile/Windows_NT.mk
index c9a3d6e..5bf39ca 100644
--- a/deps/zanyblue/src/mkfile/Windows_NT.mk
+++ b/deps/zanyblue/src/mkfile/Windows_NT.mk
@@ -1,67 +1,74 @@
-#  -*- coding: utf-8 -*-
-#
-#  ZanyBlue, an Ada library and framework for finite element analysis.
-#
-#  Copyright (c) 2012, 2016, Michael Rohan <mro...@zanyblue.com>
-#  All rights reserved.
-#
-#  Redistribution and use in source and binary forms, with or without
-#  modification, are permitted provided that the following conditions
-#  are met:
-#
-#    * Redistributions of source code must retain the above copyright
-#      notice, this list of conditions and the following disclaimer.
-#
-#    * Redistributions in binary form must reproduce the above copyright
-#      notice, this list of conditions and the following disclaimer in the
-#      documentation and/or other materials provided with the distribution.
-#
-#    * Neither the name of ZanyBlue nor the names of its contributors may
-#      be used to endorse or promote products derived from this software
-#      without specific prior written permission.
-#
-#  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-#  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-#  LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-#  A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-#  HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-#  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
-#  TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
-#  PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
-#  LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
-#  NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
-#  SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-#
-
-#
-# Unix GNU make definitions to support ZanyBlue builds.
-#
-
-# Extension used for executables
-E=.exe
-
-# Explicitly use "python script.py" on Windows
-PYTHON=python
-
-# TODO: Issues with line endings on Windows, use Production builds
-BUILD=Production
-
-# This is a real hack to get the year and probably doesn't work on non-English
-# systems!
-CURRENT_YEAR=$(notdir $(lastword $(shell cmd.exe /c "date /t")))
-
-define COPY
-cmd.exe /c "copy $(subst /,\,$1) $(subst /,\,$2)"
-endef
-
-define DELETE
-cmd.exe /c "del /f $(subst /,\,$1)"
-endef
-
-define MKDIR
-cmd.exe /c "mkdir $(subst /,\,$1)"
-endef
-
-define RMDIR
-cmd.exe /c "rmdir /s /q $(subst /,\,$1)"
-endef
+#  -*- coding: utf-8 -*-
+#
+#  ZanyBlue, an Ada library and framework for finite element analysis.
+#
+#  Copyright (c) 2012, 2016, Michael Rohan <mro...@zanyblue.com>
+#  All rights reserved.
+#
+#  Redistribution and use in source and binary forms, with or without
+#  modification, are permitted provided that the following conditions
+#  are met:
+#
+#    * Redistributions of source code must retain the above copyright
+#      notice, this list of conditions and the following disclaimer.
+#
+#    * Redistributions in binary form must reproduce the above copyright
+#      notice, this list of conditions and the following disclaimer in the
+#      documentation and/or other materials provided with the distribution.
+#
+#    * Neither the name of ZanyBlue nor the names of its contributors may
+#      be used to endorse or promote products derived from this software
+#      without specific prior written permission.
+#
+#  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+#  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+#  LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+#  A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+#  HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+#  SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED
+#  TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+#  PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+#  LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+#  NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+#  SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+#
+
+#
+# Unix GNU make definitions to support ZanyBlue builds.
+#
+
+# Extension used for executables
+E=
+
+# Don't need to explicitly use "python script.py" on Unix
+PYTHON=
+
+# Current year
+CURRENT_YEAR=$(shell date +%Y)
+
+# Control testing of the GTK example, if GTK is not available set the test
+# directory to the no-op directory, "nogtk"
+HAVE_GTK=$(firstword $(wildcard /usr/gnat/current/include/gtkada))
+ifeq ($(HAVE_GTK),)
+ZBTESTFLAGS+=-d gtk_testdir nogtk
+endif
+
+define COPY
+cp -p $1 $2
+endef
+
+define DELETE
+rm -f $1
+endef
+
+define RMDIR
+rm -rf $1
+endef
+
+define MKDIR
+mkdir -p $1
+endef
+
+define RMDIR
+rm -rf $1
+endef
diff --git a/deps/zanyblue/src/zbcom.gpr b/deps/zanyblue/src/zbcom.gpr
index 314ec78..5b56991 100644
--- a/deps/zanyblue/src/zbcom.gpr
+++ b/deps/zanyblue/src/zbcom.gpr
@@ -63,9 +63,6 @@ project zbcom is
          Compile_Switches := Compile_Switches & ("-g",
                                                  "-gnatf",
                                                  "-gnato",
-                                                 "-gnatwale",
-                                                 "-gnatygO",
-                                                 "-gnatyo",
                                                  "-fstack-check");
       when "Coverage" =>
          Compile_Switches := Compile_Switches & ("-g",
diff --git a/deps/zanyblue/src/zbmcompile/Makefile 
b/deps/zanyblue/src/zbmcompile/Makefile
index fdf41ab..6147398 100644
--- a/deps/zanyblue/src/zbmcompile/Makefile
+++ b/deps/zanyblue/src/zbmcompile/Makefile
@@ -57,7 +57,7 @@ XGENERATED=zbmcompile-messages.ads zbmcompile-messages.adb 
$(STAMPFILE)
 # Include configuration definitions
 include $(TOP)/src/mkfile/conf.mk
 
-all:   $(STAMPFILE)
+all:
        $(GPRBUILD) -p $(GNATFLAGS) -P $(APPNAME)
 
 messages:      $(STAMPFILE)
@@ -70,7 +70,7 @@ $(STAMPFILE): $(wildcard $(MESGDIR)/*)
        $(warning "**** Expect two builds of zbmcompile              ****")
        $(warning "****                                              ****")
        $(warning "******************************************************")
-       $(GPRBUILD) $(GNATFLAGS) -P $(APPNAME)
+       $(GPRBUILD) -p $(GNATFLAGS) -P $(APPNAME)
        $(ZBMCOMPILE) -p -S $(STAMPFILE) $(RUNARGS)
        $(MAKE) clean
 
diff --git a/tools/tools.gpr b/tools/tools.gpr
index 6c362bc..11ffba9 100644
--- a/tools/tools.gpr
+++ b/tools/tools.gpr
@@ -18,8 +18,8 @@ project Tools is
    package Binder renames Settings.Binder;
 
    package Builder is
-      for Executable ("gnoga_make-main.adb") use "gnoga_make";
-      for Executable ("gnoga_doc-main.adb") use "gnoga_doc";
+      for Executable ("gnoga_make-main.adb") use "gnoga_make.exe";
+      for Executable ("gnoga_doc-main.adb") use "gnoga_doc.exe";
    end Builder;
 
    package Linker renames Settings.Linker;
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
Gnoga-list mailing list
Gnoga-list@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/gnoga-list

Reply via email to