Windows branch merge
daniellivingston opened this issue · 2 comments
daniellivingston commented
Right now, the master
branch builds only for *nix OSes. The windows
branch uses CMake to build a Windows 64-bit version, but with significant source code changes. These different branches should be merged so one code tree builds for all OSes.
millerta commented
windows branch description:
Differences between Master and windows branch:
Most of this work is for Windows using Intel and Visual Studio
Files for cpp interface are in examples.
Note windows branch has substantial changes in organization.
The exodus files seem to have been disabled.
New files;
LaGriT-windows/examples/complete_interface/src/
-rw------- 1 tamiller sft 3328 Jan 11 13:00 Lagrit.cpp
-rw------- 1 tamiller sft 2769 Jan 11 13:00 Lagrit.hpp
-rw------- 1 tamiller sft 799 Jan 11 13:00 main.cpp
New files:
/project/eesdev/tam/clone/LaGriT-windows/src/lg_interface
-rw------- 1 tamiller sft 0 Jan 11 13:00 CMakeLists.txt
-rw------- 1 tamiller sft 31 Jan 11 13:00 export_windows.def
-rw------- 1 tamiller sft 26794 Jan 11 13:00 interface.F
-rw------- 1 tamiller sft 2721 Jan 11 13:00 interface.f90.backup
LaGriT/lg_util/src files are in
/project/eesdev/tam/clone/LaGriT-windows/src/core/memory
Some LaGriT/src files are in LaGriT-windows/src dirs:
meshing/addmesh (addmesh*.f no difference)
meshing/cmo (cmo_*.f no difference)
meshing/dump/exodusii (exo_init_ext.ignore_c exo_put_sets.ignore_c)
Most LaGriT/src files are in
/project/eesdev/tam/clone/LaGriT-windows/src/lg_core
Note Master has newest versions of all files.
Other differences are related to Windows and cpp work.
anothermatbld3d_wrapper.f ------------------
> use lg_interface
>
< integer entryprocessed
dotask.f ------------------
< character*(*) task_buff
< integer ierror
---
> character*(*), intent(in) :: task_buff
> integer, intent(out) :: ierror
dumpexodusII.f ------------------
Windows has empty file where master has conditional compile:
< #ifndef LAGRIT_INCLUDE_EXODUSII
< write(logmess,'(a)')'ERROR: `dumpexodusII` failed. '
< write(logmess,'(a)')'LaGriT was not compiled with Exodus libs.'
< #else
linesegtri.f ------------------
> & bind (C, name="lineseg_tri_")
> use, intrinsic :: ISO_C_BINDING
inside_lg.f ------------------
> & BIND(C, name="inside_tet_")
> use, intrinsic :: iso_c_binding
readgmv_binary.f ------------------
> use lg_interface, only:
> * cread4, cread4_ptr,
> * cread4_int, cread4_int_ptr,
> * cread8
read_sheetij.f ------------------
> use lg_interface, only: cread4, cread8
> call cread4(iunit4,fdata4,ibytes,ierror)
> call cread8(iunit4,fdata8,ibytes,ierror)
Master:
< call cread(iunit4,fdata4,ibytes,ierror)
< call cread(iunit4,fdata8,ibytes,ierror)
es22:src:bsh% grep cread ../lg_util/src/*
../lg_util/src/io.c:void cread (unit , array , ilen , ierr)
../lg_util/src/io.c:void cread_(unit , array , ilen , ierr)
millerta commented
This windows branch does not compile for Neal. See attached for his description and the errors produced.
windows-log.txt