From 74c7f77b6d4e90c066dd4b4b8640ae1883d8a0cd Mon Sep 17 00:00:00 2001
From: Randria <randria>
Date: Mon, 24 Oct 2016 12:59:04 +0000
Subject: [PATCH] resolve some paths issues under cygwin

---
 .../designs/unb2a_test/revisions/unb2a_test_1GbE/hdllib.cfg   | 4 ++--
 .../designs/unb2a_test/revisions/unb2a_test_all/hdllib.cfg    | 4 ++--
 tools/oneclick/base/common.py                                 | 4 ++--
 tools/oneclick/base/common_dict_file.py                       | 4 ++--
 tools/oneclick/base/hdl_config.py                             | 2 +-
 tools/quartus/quartus_generic.sh                              | 3 ++-
 tools/quartus/run_rbf                                         | 4 ++--
 7 files changed, 13 insertions(+), 12 deletions(-)

diff --git a/boards/uniboard2a/designs/unb2a_test/revisions/unb2a_test_1GbE/hdllib.cfg b/boards/uniboard2a/designs/unb2a_test/revisions/unb2a_test_1GbE/hdllib.cfg
index 7b498d5f18..088553ae79 100644
--- a/boards/uniboard2a/designs/unb2a_test/revisions/unb2a_test_1GbE/hdllib.cfg
+++ b/boards/uniboard2a/designs/unb2a_test/revisions/unb2a_test_1GbE/hdllib.cfg
@@ -24,10 +24,10 @@ quartus_copy_files =
     ../../src/hex hex
 
 quartus_qsf_files =
-    $RADIOHDL/boards/uniboard2/libraries/unb2a_board/quartus/unb2a_board.qsf
+    $RADIOHDL/boards/uniboard2a/libraries/unb2a_board/quartus/unb2a_board.qsf
 
 quartus_sdc_files =
-    $RADIOHDL/boards/uniboard2/libraries/unb2a_board/quartus/unb2a_board.sdc
+    $RADIOHDL/boards/uniboard2a/libraries/unb2a_board/quartus/unb2a_board.sdc
 
 quartus_tcl_files =
     quartus/unb2a_test_1GbE_pins.tcl
diff --git a/boards/uniboard2a/designs/unb2a_test/revisions/unb2a_test_all/hdllib.cfg b/boards/uniboard2a/designs/unb2a_test/revisions/unb2a_test_all/hdllib.cfg
index c00aa2bad6..7e6963de8f 100644
--- a/boards/uniboard2a/designs/unb2a_test/revisions/unb2a_test_all/hdllib.cfg
+++ b/boards/uniboard2a/designs/unb2a_test/revisions/unb2a_test_all/hdllib.cfg
@@ -50,11 +50,11 @@ quartus_copy_files =
     ../../src/hex hex
 
 quartus_qsf_files =
-    $RADIOHDL/boards/uniboard2/libraries/unb2a_board/quartus/unb2a_board.qsf
+    $RADIOHDL/boards/uniboard2a/libraries/unb2a_board/quartus/unb2a_board.qsf
 
 quartus_sdc_files =
     quartus/unb2a_test_10GbE.sdc
-    $RADIOHDL/boards/uniboard2/libraries/unb2a_board/quartus/unb2a_board.sdc
+    $RADIOHDL/boards/uniboard2a/libraries/unb2a_board/quartus/unb2a_board.sdc
 
 quartus_tcl_files =
     quartus/unb2a_test_all_pins.tcl
diff --git a/tools/oneclick/base/common.py b/tools/oneclick/base/common.py
index 862b30d568..bd0078b726 100644
--- a/tools/oneclick/base/common.py
+++ b/tools/oneclick/base/common.py
@@ -695,9 +695,9 @@ def expand_file_path_name(fpn, dir_path=''):
     """
     filePathName = os.path.expandvars(fpn)           # support using environment variables in the file path
     if os.path.isabs(filePathName):
-        return filePathName                          # use absolute path to file
+        return filePathName.replace('\\','/')                          # use absolute path to file
     else:
-        return os.path.join(dir_path, filePathName)  # derive path to file from the directory path and a directory path to the file
+        return os.path.join(dir_path, filePathName).replace('\\','/')  # derive path to file from the directory path and a directory path to the file
 
 def remove_from_list_string(list_str, item_str, sep=' '):
     """Treat the string list_str as a list of items that are separated by sep and then
diff --git a/tools/oneclick/base/common_dict_file.py b/tools/oneclick/base/common_dict_file.py
index 13945656be..0d76320ab4 100644
--- a/tools/oneclick/base/common_dict_file.py
+++ b/tools/oneclick/base/common_dict_file.py
@@ -159,7 +159,7 @@ class CommonDictFile:
         paths = []
         for root, _, files in os.walk(rootDir):
             if self.fileName in files:
-                 paths.append(root)
+                 paths.append(root.replace('\\','/'))
         return paths
 
     def read_all_dict_files(self, filePathNames=None):
@@ -418,4 +418,4 @@ if __name__ == '__main__':
     # Remove the example files
     os.remove(tmpFileName)
     os.remove(tmpFilePathName)
-    os.rmdir(tmpDirName)
\ No newline at end of file
+    os.rmdir(tmpDirName)
diff --git a/tools/oneclick/base/hdl_config.py b/tools/oneclick/base/hdl_config.py
index d52c89eb30..c2400e4aa5 100644
--- a/tools/oneclick/base/hdl_config.py
+++ b/tools/oneclick/base/hdl_config.py
@@ -405,7 +405,7 @@ class HdlConfig:
         build_dirs = []
         for lib_dict in cm.listify(lib_dicts):
             lib_name = lib_dict['hdl_lib_name']
-            build_dirs.append(os.path.join(build_maindir, build_toolset_dir, build_tooldir, lib_name))  # central build main directory with subdirectory per library
+            build_dirs.append(os.path.join(build_maindir, build_toolset_dir, build_tooldir, lib_name).replace('\\','/'))  # central build main directory with subdirectory per library
         return cm.unlistify(build_dirs)
         
 
diff --git a/tools/quartus/quartus_generic.sh b/tools/quartus/quartus_generic.sh
index d0d391d890..3b09486af9 100755
--- a/tools/quartus/quartus_generic.sh
+++ b/tools/quartus/quartus_generic.sh
@@ -21,6 +21,7 @@
 ###############################################################################
 
 echo "Run quartus_generic.sh"
+. ${RADIOHDL}/tools/quartus/generic.sh
 
 # Derive generic Quartus tool version related paths from $QUARTUS_DIR that gets defined in quartus_version.sh
 # Quartus, SOPC, Nios
@@ -42,4 +43,4 @@ export ALTERA_HW_TCL_KEEP_TEMP_FILES=1
 
 # User synthesis timestamp in FPGA image
 export UNB_COMPILE_STAMPS=1
-export RADIOHDL_SVN_REVISION=`svn info ${RADIOHDL} | grep Revision`
+export RADIOHDL_SVN_REVISION=`svn info $(cygpath $RADIOHDL) | grep Revision`
diff --git a/tools/quartus/run_rbf b/tools/quartus/run_rbf
index a38aa86693..5d880fa184 100755
--- a/tools/quartus/run_rbf
+++ b/tools/quartus/run_rbf
@@ -115,11 +115,11 @@ echo "Bitstream_compression=on" > ${HOME}/.run_rbf_temp_options_file
 unb_info $0 "Converting ${quartusdir}/${project_rev}.sof to compressed Raw Binary File"
 
 if [ -z "${arg_unb2_factory}" ]; then
-  unb_exec $0 quartus_cpf -c --option=${HOME}/.run_rbf_temp_options_file ${quartusdir}/${project_rev}.sof ${quartusdir}/${project_rev}.rbf
+  unb_exec $0 quartus_cpf -c --option=$(<${HOME}/.run_rbf_temp_options_file) ${quartusdir}/${project_rev}.sof ${quartusdir}/${project_rev}.rbf
 else
   unb_info $0 "-> This is a factory image for Uniboard2: Convert .SOF -> .POF -> .HEXOUT -> .RBF"
   # for more info see: $RADIOHDL/libraries/io/epcs/doc/README.txt
-  unb_exec $0 quartus_cpf -d EPCQL1024 -m ASx4 --option=${HOME}/.run_rbf_temp_options_file -c ${quartusdir}/${project_rev}.sof ${quartusdir}/${project_rev}.pof
+  unb_exec $0 quartus_cpf -d EPCQL1024 -m ASx4 --option=$(<${HOME}/.run_rbf_temp_options_file) -c ${quartusdir}/${project_rev}.sof ${quartusdir}/${project_rev}.pof
   unb_exec $0 quartus_cpf -c ${quartusdir}/${project_rev}.pof ${quartusdir}/${project_rev}.hexout
   unb_exec $0 nios2-elf-objcopy -I ihex -O binary ${quartusdir}/${project_rev}.hexout ${quartusdir}/${project_rev}.rbf
 
-- 
GitLab