From ef2f966da5817fd04e3993e594c51b38ab5b2603 Mon Sep 17 00:00:00 2001 From: Shengliang Guan Date: Fri, 7 Aug 2020 18:59:52 +0800 Subject: [PATCH] TD-1057 --- cmake/define.inc | 1 + deps/MsvcLibX/CMakeLists.txt | 25 +- deps/MsvcLibX/README.md | 820 ------------------ deps/MsvcLibX/config.DESKTOP-U79TD6T.bat | 146 ---- deps/MsvcLibX/configure.bat | 35 - .../include/{debugm.h => msvcDebugm.h} | 0 .../include/{direct.h => msvcDirect.h} | 2 +- .../include/{dirent.h => msvcDirent.h} | 0 .../MsvcLibX/include/{error.h => msvcError.h} | 0 .../include/{fadvise.h => msvcFadvise.h} | 0 .../MsvcLibX/include/{fcntl.h => msvcFcntl.h} | 2 +- .../include/{fnmatch.h => msvcFnmatch.h} | 0 .../include/{getopt.h => msvcGetopt.h} | 0 .../MsvcLibX/include/{iconv.h => msvcIconv.h} | 0 .../include/{inttypes.h => msvcInttypes.h} | 0 .../include/{libgen.h => msvcLibgen.h} | 0 .../include/{limits.h => msvcLimits.h} | 2 +- .../MsvcLibX/include/{netdb.h => msvcNetdb.h} | 0 .../include/{process.h => msvcProcess.h} | 2 +- .../MsvcLibX/include/{regex.h => msvcRegex.h} | 0 .../include/{reparsept.h => msvcReparsept.h} | 0 .../include/{stdbool.h => msvcStdbool.h} | 0 .../include/{stdint.h => msvcStdint.h} | 0 .../MsvcLibX/include/{stdio.h => msvcStdio.h} | 2 +- .../include/{stdlib.h => msvcStdlib.h} | 2 +- .../include/{system.h => msvcSystem.h} | 0 deps/MsvcLibX/include/{time.h => msvcTime.h} | 6 +- .../include/{unistd.h => msvcUnistd.h} | 4 +- .../MsvcLibX/include/{utime.h => msvcUtime.h} | 0 .../include/{windows.h => msvcWindows.h} | 2 +- .../include/{xfreopen.h => msvcXfreopen.h} | 0 deps/MsvcLibX/include/stdio--.h | 17 - .../include/sys/{param.h => msvcParam.h} | 0 .../include/sys/{stat.h => msvcStat.h} | 12 +- .../include/sys/{time.h => msvcTime.h} | 0 .../include/sys/{utsname.h => msvcTsname.h} | 0 .../include/sys/{types.h => msvcTypes.h} | 3 +- deps/MsvcLibX/make.bat | 35 - deps/MsvcLibX/src/Files.mak | 261 ------ deps/MsvcLibX/src/GetFileAttributes.c | 2 +- deps/MsvcLibX/src/GetFileAttributesEx.c | 2 +- deps/MsvcLibX/src/GetFullPathName.c | 4 +- deps/MsvcLibX/src/GetLongPathName.c | 4 +- deps/MsvcLibX/src/NMakefile | 239 ----- deps/MsvcLibX/src/access.c | 5 +- deps/MsvcLibX/src/basename.c | 6 +- deps/MsvcLibX/src/chdir.c | 10 +- deps/MsvcLibX/src/clock_gettime.c | 4 +- deps/MsvcLibX/src/config.DESKTOP-U79TD6T.bat | 151 ---- deps/MsvcLibX/src/configure.MsvcLibX.bat | 36 - deps/MsvcLibX/src/configure.bat | 35 - deps/MsvcLibX/src/debugv.c | 2 +- deps/MsvcLibX/src/dirent.c | 9 +- deps/MsvcLibX/src/dirname.c | 4 +- deps/MsvcLibX/src/err2errno.c | 3 +- deps/MsvcLibX/src/exe | 99 --- deps/MsvcLibX/src/exe.bat | 82 -- deps/MsvcLibX/src/filetime.c | 10 +- deps/MsvcLibX/src/fnmatch.c | 4 +- deps/MsvcLibX/src/fstat.c | 6 +- deps/MsvcLibX/src/fullpath.c | 4 +- deps/MsvcLibX/src/getcwd.c | 5 +- deps/MsvcLibX/src/getopt.c | 2 +- deps/MsvcLibX/src/getppid.c | 2 +- deps/MsvcLibX/src/gettimeofday.c | 4 +- deps/MsvcLibX/src/iconv.c | 5 +- deps/MsvcLibX/src/lstat.c | 11 +- deps/MsvcLibX/src/main.c | 4 +- deps/MsvcLibX/src/make.bat | 35 - deps/MsvcLibX/src/mb2wpath.c | 2 +- deps/MsvcLibX/src/mkdir.c | 3 +- deps/MsvcLibX/src/mkdtemp.c | 2 +- deps/MsvcLibX/src/mkstemp.c | 2 +- deps/MsvcLibX/src/open.c | 5 +- deps/MsvcLibX/src/readlink.c | 7 +- deps/MsvcLibX/src/realpath.c | 6 +- deps/MsvcLibX/src/spawn.c | 3 +- deps/MsvcLibX/src/src2objs.bat | 125 --- deps/MsvcLibX/src/symlink.c | 7 +- deps/MsvcLibX/src/uname.c | 2 +- deps/MsvcLibX/src/utime.c | 10 +- deps/MsvcLibX/src/utimes.c | 10 +- deps/MsvcLibX/src/xfreopen.c | 2 +- deps/pthread/pthread.h | 2 + deps/pthread/sched.h | 25 +- deps/pthread/semaphore.h | 2 + src/os/inc/osFile.h | 12 - src/os/inc/osWindows.h | 21 +- src/os/src/windows/w64Time.c | 12 - src/tsdb/src/tsdbFile.c | 3 +- 90 files changed, 140 insertions(+), 2291 deletions(-) delete mode 100644 deps/MsvcLibX/README.md delete mode 100644 deps/MsvcLibX/config.DESKTOP-U79TD6T.bat delete mode 100644 deps/MsvcLibX/configure.bat rename deps/MsvcLibX/include/{debugm.h => msvcDebugm.h} (100%) rename deps/MsvcLibX/include/{direct.h => msvcDirect.h} (91%) rename deps/MsvcLibX/include/{dirent.h => msvcDirent.h} (100%) rename deps/MsvcLibX/include/{error.h => msvcError.h} (100%) rename deps/MsvcLibX/include/{fadvise.h => msvcFadvise.h} (100%) rename deps/MsvcLibX/include/{fcntl.h => msvcFcntl.h} (92%) rename deps/MsvcLibX/include/{fnmatch.h => msvcFnmatch.h} (100%) rename deps/MsvcLibX/include/{getopt.h => msvcGetopt.h} (100%) rename deps/MsvcLibX/include/{iconv.h => msvcIconv.h} (100%) rename deps/MsvcLibX/include/{inttypes.h => msvcInttypes.h} (100%) rename deps/MsvcLibX/include/{libgen.h => msvcLibgen.h} (100%) rename deps/MsvcLibX/include/{limits.h => msvcLimits.h} (94%) rename deps/MsvcLibX/include/{netdb.h => msvcNetdb.h} (100%) rename deps/MsvcLibX/include/{process.h => msvcProcess.h} (92%) rename deps/MsvcLibX/include/{regex.h => msvcRegex.h} (100%) rename deps/MsvcLibX/include/{reparsept.h => msvcReparsept.h} (100%) rename deps/MsvcLibX/include/{stdbool.h => msvcStdbool.h} (100%) rename deps/MsvcLibX/include/{stdint.h => msvcStdint.h} (100%) rename deps/MsvcLibX/include/{stdio.h => msvcStdio.h} (95%) rename deps/MsvcLibX/include/{stdlib.h => msvcStdlib.h} (93%) rename deps/MsvcLibX/include/{system.h => msvcSystem.h} (100%) rename deps/MsvcLibX/include/{time.h => msvcTime.h} (87%) rename deps/MsvcLibX/include/{unistd.h => msvcUnistd.h} (96%) rename deps/MsvcLibX/include/{utime.h => msvcUtime.h} (100%) rename deps/MsvcLibX/include/{windows.h => msvcWindows.h} (93%) rename deps/MsvcLibX/include/{xfreopen.h => msvcXfreopen.h} (100%) delete mode 100644 deps/MsvcLibX/include/stdio--.h rename deps/MsvcLibX/include/sys/{param.h => msvcParam.h} (100%) rename deps/MsvcLibX/include/sys/{stat.h => msvcStat.h} (96%) rename deps/MsvcLibX/include/sys/{time.h => msvcTime.h} (100%) rename deps/MsvcLibX/include/sys/{utsname.h => msvcTsname.h} (100%) rename deps/MsvcLibX/include/sys/{types.h => msvcTypes.h} (94%) delete mode 100644 deps/MsvcLibX/make.bat delete mode 100644 deps/MsvcLibX/src/Files.mak delete mode 100644 deps/MsvcLibX/src/NMakefile delete mode 100644 deps/MsvcLibX/src/config.DESKTOP-U79TD6T.bat delete mode 100644 deps/MsvcLibX/src/configure.MsvcLibX.bat delete mode 100644 deps/MsvcLibX/src/configure.bat delete mode 100644 deps/MsvcLibX/src/exe delete mode 100644 deps/MsvcLibX/src/exe.bat delete mode 100644 deps/MsvcLibX/src/make.bat delete mode 100644 deps/MsvcLibX/src/src2objs.bat diff --git a/cmake/define.inc b/cmake/define.inc index 5c005b0cb5..09c21e2912 100755 --- a/cmake/define.inc +++ b/cmake/define.inc @@ -119,6 +119,7 @@ IF (TD_WINDOWS) INCLUDE_DIRECTORIES(${TD_COMMUNITY_DIR}/deps/iconv) INCLUDE_DIRECTORIES(${TD_COMMUNITY_DIR}/deps/regex) INCLUDE_DIRECTORIES(${TD_COMMUNITY_DIR}/deps/wepoll/inc) + INCLUDE_DIRECTORIES(${TD_COMMUNITY_DIR}/deps/MsvcLibX/include) ENDIF () IF (TD_WINDOWS_64) diff --git a/deps/MsvcLibX/CMakeLists.txt b/deps/MsvcLibX/CMakeLists.txt index 7f24d34dd5..fc77a3b447 100644 --- a/deps/MsvcLibX/CMakeLists.txt +++ b/deps/MsvcLibX/CMakeLists.txt @@ -1,30 +1,7 @@ CMAKE_MINIMUM_REQUIRED(VERSION 2.8) PROJECT(TDengine) -IF (TD_WINDOWS_64) - SET(CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/cmake) - - include(FindWindowsSDK) - get_mywindowssdk_include_dirs(${WINDOWSSDK_PREFERRED_DIR} WINSDK_INCLUDE_DIR) - get_ucrt_include_dirs(${WINDOWSSDK_PREFERRED_DIR} UCRT_INCLUDE_DIR) - - Add_Definitions("-DWSDKINCLUDE=${WINSDK_INCLUDE_DIR}") - - include(FindMSVC) - Add_Definitions("-DMSVCINCLUDE=${VC_INCLUDE_DIR}") - - IF ((NOT DEFINED UCRT_INCLUDE_DIR) OR (UCRT_INCLUDE_DIR STREQUAL "NOTFOUND")) - Message(STATUS "UCRT_INCLUDE_DIR notu found, set it to vc incude dir") - SET(UCRT_INCLUDE_DIR "${VC_INCLUDE_DIR}") - Add_Definitions("-DUCRTINCLUDE=${VC_INCLUDE_DIR}") - ELSE () - Add_Definitions("-DUCRTINCLUDE=${UCRT_INCLUDE_DIR}") - ENDIF () - - Message(STATUS "WINSDK_INCLUDE_DIR: ${WINSDK_INCLUDE_DIR}") - Message(STATUS "UCRT_INCLUDE_DIR: ${UCRT_INCLUDE_DIR}") - Message(STATUS "VC_INCLUDE_DIR: ${VC_INCLUDE_DIR}") - +IF (TD_WINDOWS) INCLUDE_DIRECTORIES(include) AUX_SOURCE_DIRECTORY(src SRC) ADD_LIBRARY(MsvcLibXw64 ${SRC}) diff --git a/deps/MsvcLibX/README.md b/deps/MsvcLibX/README.md deleted file mode 100644 index 8f689412cb..0000000000 --- a/deps/MsvcLibX/README.md +++ /dev/null @@ -1,820 +0,0 @@ -MsvcLibX - A set of MSVC Library eXtensions -=========================================== - - -Introduction ------------- - -The MsvcLibX library is built upon 30 years of work. -It exists because the Microsoft Visual C/C++ library is only a subset of the -standard C library, and I wanted to port to DOS and Windows programs using some -of the missing parts. -Initially Microsoft C compilers for MS-DOS tried to be as compliant as possible -with the standard C library. Then Microsoft rewrote their library for Windows. -But when the WIN32 API became prevalent, Microsoft apparently lost interest, -and stopped porting to MS-DOS and Windows the new C include files and library -routines that got standardized over the years. -To the point that's it's now impossible to rebuild any recent Posix/Unix/Linux -program using the MSVC library. - -MsvcLibX adds a number of standard include files and library routines that I've -needed over the years. For example the directory access routines defined in -dirent.h, or the symbolic link support in unistd.h. -It also includes a number of useful routines and macros, either needed -internally to implement and debug the above, or made necessary by irresolvable -incompatibilities between Unix and Windows. - -Other major features of the MsvcLibX library are: - -* A powerful make system, based on Microsoft nmake files, that allow building - multiple versions of the same program (Ex: DOS/WIN32/WIN64) with one simple - command. And in most cases without having to write any dedicated make file. -* Support for UTF-8 sources, allowing to build programs working in any code page. -* Support for NTFS symlinks and junctions. -* Support for DOS, and Windows 95 targets, for targeting old computers. -* Support for bound DOS+Windows programs, for truly universal executables that - work in *all* versions of DOS and Windows. - -An obvious alternative exists for building Windows programs: MinGW. -But I started all this before MinGW even existed. And, surprisingly, even MinGW -still has holes in 2014, where MsvcLibX in significantly more advanced. -Another alternative is CygWin. This one is more complete, but also much more -heavyweight. Using programs built with CygWin requires installing CygWin DLLs. -Copying the program .exe from one system to the next is not sufficient. In that -sense, MinGW or MsvcLibX are much better. - -Contrary to MinGW and CygWin, MsvcLibX does not attempt to be complete, and is -unlikely to ever be. But any contribution of improvements is welcome. -Likewise, any help at contributing unique MsvcLibX features to MinGW is welcome. - -Jean-François Larvoire -2016-09-29 - - -Building the MsvcLibX library ------------------------------ - -On a recent Windows PC, with Microsoft Visual C++ compilers installed: - -- Select a base work directory. I'll call it %BASEDIR% in the examples below: - - set "HOME=%HOMEDRIVE%%HOMEPATH%" - set "BASEDIR=%HOME%\Documents\SRC" - md "%BASEDIR%" - cd "%BASEDIR%" - -- Extract the MsvcLibX archive into a work subdirectory. Ex: %BASEDIR%\MsvcLibX\ - This will put files in several subdirectories: include, src - -- Open a cmd window, and run: - - cd "%BASEDIR%\MsvcLibX\src" - configure - make - -The configure.bat script will locate your MSVC tools, and generate a config -file. It needs to be run once initially, then again if new MSVC tool versions -are installed. -The make.bat script should take care of everything, and rebuild normal and debug -versions of the MsvcLibX.lib library for all operating systems your tools support. -In the end, it defines system environment variable MSVCLIBX, necessary for -building programs using the MsvcLibX.lib library. - -Requirements: - -- Microsoft Visual C++ compiler and linker for Windows 32 and 64 bits targets. -- Microsoft Windows SDK. (May be installed along with Visual C++) - -As of 2015-12-10, I've tested the make.bat script and make files with Visual C++ -2005, 2008, 2012, and 2015, and Windows SDK 5.2, 8.1, and 10. -Support for older versions is still built-in, but I've not tested it for long. -Support for newer versions will require minor tweaks in configure.bat. -Note that configure.bat does not depend on MSVC's vcvars.bat. It will attempt -to locate and use the latest usable version of MSVC it finds in Program Files. - -Optional: - -- Microsoft Visual C++ 1.52 compiler and linker for MS-DOS targets. - If present in C:\MSVC, make.bat will also generate libraries for DOS. - Note that generating DOS versions is still more useful than it looks: - Experience has shown that the severe memory constraints under DOS are a very - good revelator of memory leaks, and other bad pointer issues. Build your - programs for DOS too if you can, and test them in a VM with Windows XP. - This takes a very small extra build time. And it'll be very much worth the time - if the Windows version appears to work, but the DOS version does not. - Visual C++ 1.52 is available on the Visual Studio 2005 CD. -- The Visual C++ 8 compiler and tools from Microsoft Visual Studio 2005. - This is the last version that allowed building programs for Windows 95/NT4. - -The MsvcLibX.lib libraries are generated in subdirectories of src, then copied -into the %BASEDIR%\MsvcLibX\lib directory, and renamed as shown in this table: - -Subdirectory | Description | Renamed as ----------------- | -------------------------------------- | ---------------- -DOS\BIN\T\ | DOS normal version, tiny memory model | MsvcLibXdt.lib -DOS\DEBUG\BIN\T\ | DOS debug version, tiny memory model | MsvcLibXdtd.lib -DOS\BIN\S\ | DOS normal version, small memory model | MsvcLibXds.lib -DOS\DEBUG\BIN\S\ | DOS debug version, small memory model | MsvcLibXdsd.lib -DOS\BIN\L\ | DOS normal version, large memory model | MsvcLibXdl.lib -DOS\DEBUG\BIN\L\ | DOS debug version, large memory model | MsvcLibXdld.lib -WIN95\ | WIN32 normal version for Windows 95 | MsvcLibXw32.lib -WIN95\DEBUG\ | WIN32 debug version for Windows 95 | MsvcLibXw32d.lib -WIN32\ | WIN32 (X86) normal version | MsvcLibXw32.lib -WIN32\DEBUG\ | WIN32 (X86) debug version | MsvcLibXw32d.lib -WIN64\ | WIN64 (AMD64) normal version | MsvcLibXw64.lib -WIN64\DEBUG\ | WIN64 (AMD64) debug version | MsvcLibXw64d.lib - - -Building programs using the MsvcLibX library --------------------------------------------- - -Create a work directory, distinct from the MsvcLibX directories. Ex: - - set "HOME=%HOMEDRIVE%%HOMEPATH%" - set "BASEDIR=%HOME%\Documents\SRC" - md "%BASEDIR%\MyTools" - cd "%BASEDIR%\MyTools" - :# Define a variable giving the location of the MsvcLibX base directory - :# (Automatically defined if you built the library already on that same system.) - set "MSVCLIBX=%BASEDIR%\MsvcLibX" - :# Get batch files and make files from MsvcLibX sources - copy "%MSVCLIBX%\src\*.bat" - copy "%MSVCLIBX%\src\*.mak" - :# Create the configuration file (To be done just once) - configure - :# Compile and link your C or C++ program. - :# Ex, for the dirc.c sample, to create all dirc.exe versions, type: - make dirc.exe - :# If there is any error, the dirc.log file will pop up. - :# If there's no error, it's possible to check for warnings by reading dirc.log: - notepad dirc.log - :# All generated object files, listings, executables, etc, are in - :# target-OS-specific subdirectories, like for the MsvcLibX builds above. - :# They're automatically linked with the corresponding (renamed) MsvcLibX*.lib. - -make.bat will generate WIN32 (X86) and WIN64 (AMD64) versions by default, -and put them respectively in the WIN32\ and WIN64\ subdirectories. -It will also generate a DOS version in DOS\ if MSVC 1.52 is installed. -It will also generate a WIN95 version in WIN95\ if MSVC 8 (aka. 2005) is installed. -Run `make -?` get a help screen for make.bat. - -Note that the configure.bat and make.bat scripts are actually independent of the -rest of the MsvcLibX library. They can be used to easily build any console -programs for DOS and Windows, without loading the Visual Studio GUI. - -An exe.bat script is a front-end to make.bat, saving a few characters to type: -`exe dirc` <==> `make dirc.exe` - - -Building Linux versions of the same programs --------------------------------------------- - -Install virtual machines with Linux, and give them access to the host's file -system, for example in the /c directory. -Then execute the following commands, adapting the paths as needed: - - # Go to the work directory - BASEDIR=/c/Users/YOURNAME/Documents/SRC - mkdir $BASEDIR/MyTools - cd $BASEDIR/MyTools - # Get a bash script to build Linux versions using similar directory outputs - cp $BASEDIR/MsvcLibX/src/exe . - # Make sure the Linux C compiler finds MsvcLibX debug macros, but not other MsvcLibX include files. - # Important: Do not point C_INCLUDE_PATH at MsvcLibX/include, as this directory - # contains duplicates for standard include files (Ex: stdio.h), that will fail - # to compile in Linux. - mkdir ~/include - cp $BASEDIR/MsvcLibX/include/debugm.h ~/include - export C_INCLUDE_PATH=~/include - # Make sure that variable is defined in all future sessions - echo "export C_INCLUDE_PATH=~/include" >>~/.bashrc - # Compile your sample dirc.c program (which uses MsvcLibX debug macros) - ./exe dirc - # The output will be in subdirectories such as Linux.i686/ or Linux.x86_64/. - # (The exact name depends on `echo "$(uname -s).$(uname -m)"` output) - - -Adding new files to the library -------------------------------- - -All new files should have headers and comments similar to the existing ones. - -To add a new source file (let's call it newfile.c) into the library: - -- Put newfile.c in the %MSVCLIBX%\src directory. -- Add a +newfile.obj entry to the OBJECTS list in %MSVCLIBX%\src\Files.mak -- Also add a rule with newfile.c include files dependencies in src\Files.mak. -- Rebuild the library, and make sure there are no errors nor warnings. - -To add a new include file into the library: - -- All new include file names should be standard C library include files names! -- Put it in the include or include\sys subdirectory. - -To add an include file overriding an homonym one in the MSVC library: - -- The trick is to make it include MSVC's one, then define its own extensions. - As MSVC compilers do not support the #include_next directive, I've implemented - a mechanism for including MSVC include files using their full pathname. - As an example, see include/direct.h or include/sys/stat.h. - - -The make file system --------------------- - -Microsoft Visual Studio tools contain a build tool called nmake, very similar -to, but slightly incompatible with, Unix make. -MsvcLibX's make.bat is designed to give a similar feel to Unix make. -It uses internally a number of make files: - -Make file | Description ------------ | ---------------------------------------------------------------- -NMakefile | Default make file to use, if none is specified. -DOS.mak | Generic rules for building MS-DOS programs into the DOS subdir. -WIN32.mak | Generic rules for building 32-bits Windows programs into WIN32. -WIN64.mak | Generic rules for building 64-bits Windows programs into WIN64. -WIN95.mak | Generic rules for building Windows 95 programs into WIN95. -All.mak | Generic rules for building one or more of the above. -Files.mak | Application-specific source file dependancy rules. Intended to be includable from both Windows' nmakefile and Linux' makefile. - -DOS.mak, WIN32.mak, WIN64.mak, and All.mak are pretty stable, and should not -be changed. The only likely case where a change is needed would be to add extra -libraries to link with _all_ programs. -To add a library for one particular program, it'd be better to add a specific -rule in its own make file, as described below. -In all cases, see the detailed notes in each make file header. - -Specific make files: - -To build a target called program.exe, the 5 make files with generic rules -(DOS.mak, WIN32.mak, WIN64.mak, WIN95.mak, and All.mak) first look for a -specific make file called program.mak. They include it if present. This allows -defining application-specific rules. -These rules should use macros defined in the 4 make files to specify the -build environment and parameters. Here's a list of the most useful ones: - -Macro | Description ---------- | ---------------------------------------------------------------- -T | Target OS. One of DOS, WIN32, WIN64, WIN95. -S | Path of the source files -O | Path where to put the object files -B | Path where to put the binary executable files -L | Path where to put the listings -CFLAGS | Flags for Microsoft C compiler -INCLUDE | List of C include file paths, serarated by ';' -LFLAGS | Flags for Microsoft linker -PROGRAM | The program base name, infered from the target name. -SOURCES | The list of sources for the program. Default: PROGRAM.c or .cpp -OBJECTS | The list of objects to link. Default: PROGRAM.obj - -Scripts: - -Script | Description ---------------------- | -------------------------------------------------------- -make.bat | The main build tool. Invokes nmake. -config.%HOSTNAME%.bat | Defines paths to all tools used by make. Do not edit. -configure.bat | Analyses your system, and generates a config.%HOSTNAME%.bat file. -configure.*.bat | Define user or task-specific extensions to configure.bat. -exe.bat | Front end to make.bat, generating multiple goals. -exe | Linux shell script, invoking cc with multiple goals. -src2objs.bat | Internal script used by make files to convert SOURCES to OBJECTS - -configure.bat with search for configure.*.bat scripts in %windir%, then in %HOME%, -then in the current directory. -Put configuration scripts with your global preferences in %windir% for example. -Within each directory, the files are called in the alphabetic order, allowing -to manage predictable dependancies. - -Example 1: The 2clip program has no MS-DOS version. To prevent the make system -from attempting to build a DOS version (Only necessary if you DO have MSVC 1.52 -installed), create a 2clip.mak file with this content: - - !IF "$(T)"=="DOS" - complain: - @echo>con There's no DOS version of this program. - - dirs $(O)\2clip.obj $(B)\2clip.exe: complain - @rem Do nothing - !ENDIF - -Example 2: Porting to Windows a resize.c program manipulating jpeg images, -and using the libjpeg library. Create a resize.mak file with lines like these: - - INCLUDE=$(INCLUDE);C:\JFL\SRC\Libs\libjpeg;C:\JFL\SRC\Libs\libjpeg\jpeg-8d - LFLAGS=$(LFLAGS) C:\JFL\SRC\Libs\libjpeg\$(B)\libjpeg.lib - -Example 3: Some Windows programs need to include additional resources, defined -in a .rc file. Ex: The update program uses a manifest to control its rights. -Create an update.mak file with directives like this: - - !IF "$(T)"=="WIN32" || "$(T)"=="WIN64" - SOURCES=update.c update.rc - LFLAGS=$(LFLAGS) /MANIFEST - !ENDIF - - -The debug system ----------------- - -The MsvcLibX library makes it easy to build two versions of each program: - -- A release version, small lean and fast. -- A debug version, with additional code to help developers debug the program. - -It follows Microsoft's convention of defining the macro _DEBUG when compiling -a C/C++ source for a debug build. -But it goes much further, by providing in debugm.h a set of macros to assist -debugging. - -The general principle is that by default, the debug version operates exactly -like the release version. (Except possibly for performance) -Then, if the "debug mode" is enabled, it outputs debug messages on stdout. -A major property of the MsvcLibX debugging output is that is is intended by -function call depth. This makes it considerably easier to read the debug output. - -The MsvcLibX library itself is built in debug and release versions. -The make.bat system will link the release version of your program with the -release version of the MsvcLibX library, and likewise for the debug versions. -To use it, include debugm.h in your main module, and add to your main() routine -a command-line option (-d or --debug maybe?) that calls DEBUG_ON(). -There's also an "extra debug mode", displaying even more details than the -debug mode. It is enabled by calling DEBUG_ON() twice. ==> Invoke with -d -d. - -Debug macros: - -Macro | Description ---------------------------- | ------------------------------------------------ -DEBUG_ON() | Enable the debug mode. -DEBUG_CODE(...) | The code within parentheses is only compiled in the debug version -DEBUG_PRINTF((format, ...)) | Generates a printf instruction in the debug version only, that prints only if debug mode is enabled, with the output indented by call depth. -DEBUG_ENTER((format, ...)) | Like DEBUG_PRINTF, but for use at the beginning of a function. Increases the indent level. -DEBUG_LEAVE((format, ...)) | Like DEBUG_PRINTF, but for use before returning from a function. Decreases the indent level. - -Note that every use of DEBUG_ENTER must be matched by one DEBUG_LEAVE. So if a -function has several return instructions, every return must be preceded by a -DEBUG_LEAVE. - -DEBUG_LEAVE alternatives: -To further simplify the source, a pair DEBUG_LEAVE()/return can be replaced by -one of the following macros: - -Macro | Simplified description ------------------------------ | ------------------------------------------------ -RETURN_INT(i) | DEBUG_LEAVE(("return %d\n", i)); return i; -RETURN_INT_COMMENT(i, (args)) | Idem, plus prints a comment behind the return -RETURN_BOOL(b) | DEBUG_LEAVE(("return %s\n", b?"TRUE":"FALSE")); return b; -RETURN_BOOL_COMMENT(b, (...)) | Idem, plus prints a comment behind the return -RETURN_CHAR(c) | DEBUG_LEAVE(("return %c\n", c)); return c; -RETURN_STRING(s) | DEBUG_LEAVE(("return %s\n", s)); return s; - -For all the above, the release version just does return retValue; - -Example for a recursive function factorial: - - int fact(int n) { - DEBUG_ENTER((__FUNCTION__ "(%d);\n", n)); - if (n) n *= fact(n-1); else n = 1; - RETURN_INT(n); - } - -The debug version, in debug mode, invoked with argument 4, prints: - - fact(4); - fact(3); - fact(2); - fact(1); - fact(0); - return 1; - return 1; - return 2; - return 6; - return 24; - - -Support for UTF-8 sources -------------------------- - -The MsvcLibX library supports writing C programs using 8-bit characters, -with strings encoded as UTF-8, and that will work for any cmd.exe code page. -This makes the sources much more simple and readable that using full-fledged -Unicode, with 16-bits wchar_t or WCHAR and L"strings" or _T("strings"). - -Note: The cmd.exe code page can be read and changed with the CHCP command. -The most common code pages are: - -CP | Description ------ | ---------------------------------------------------------------------------- -437 | MS-DOS OEM code page, still used by cmd.exe in US and west-European systems. -1252 | Windows "ANSI" code page, used by most GUI programs, like notepad.exe. -65001 | UTF-8 code page. Allows display any Unicode character. - -Important: Changing the code page will only work correctly if cmd.exe is using -a TrueType font. The default "Raster" font supports code page 437 only. - -To enable that UTF-8 support: - -1. Set the C or C++ source encoding to UTF-8 with BOM. (BOM = Byte-Order Mark) -Having a BOM is important, as without it some Windows editors will incorrectly -detect the encoding, and then sometimes corrupt the source. -2. Define one of the following constants in the .c source, _before_ including -any .h include files: - - #define _BSD_SOURCE 1 /* Defined by many standard BSD-Unix programs */ - #define _GNU_SOURCE 1 /* Defined by many standard GNU-Unix/Linux programs */ - #define _UTF8_SOURCE 1 /* MsvcLibX-specific */ - -Note that most modern Linux compilers do expect C sources encoded as UTF-8, -and will silently ignore the UTF-8 BOM if present. - -Internally, MsvcLibX extends Microsoft's convention of having two ANSI and Wide -versions of each routine, respectively with an 'A' and a 'W' suffix. Ex: -FindFirstFile() being an alias to either FindFirstFileA() or FindFirstFileW(). -MsvcLibX uses two additional suffixes: 'U' for the UTF-8 version, and 'M' for -the common MultiByte subroutine used by both the 'A' and 'U' versions. Ex: - -Function | Description ----------- | --------------------------------------------------------------- -readlinkW | Posix routine readlink - Wide char version -readlinkM | MultiByte char sub-routine, used by the next two routines. -readlinkA | Posix routine readlink - ANSI version -readlinkU | Posix routine readlink - UTF-8 version -readlink | Posix routine readlink - Alias to either readlinkA or readlinkU - -Note that the M version has one additional argument: The code page to use for -converting strings to and from Unicode. In that sense, it's not Posix-compliant. - -Gotcha: As of 2014-03-25, most file I/O and enumeration routines have been -restructured this way, but a few have not yet been: -scandir() and lstat() only support UTF-8 file names, not ANSI names. - -Gotcha: As of 2014-03-25, there's a potential issue with the C main() routine: -Supporting UTF-8 file names is not just supporting UTF-8 strings in library -functions. It's also necessary to process the command line, so that command line -arguments are passed in to the main() routine as UTF-8 strings. -Currently this is implemented as a macro that redefines the main token, so -that it generates a main() routine just calling a _mainU0() routine from -MsvcLibX.lib, followed by another local _mainU() routine with the body intended -for your main routine. Ex: - - int main(int argc, char *argv[]) { /* your main body */ } - -Becomes: - - int main(int argc, char *argv[]) {return _mainU0()} - int _mainU(int argc, char *argv[]) { /* your main body */ } - -The _mainU0() routine from MsvcLibX.lib reprocesses the Win32 command line as -UTF-8 argv[] arguments, then calls _mainU(argc, argv[]). -This works well and transparently, except in one case: -If one of your sources or include files contain a prototype for the main() -routine, then MsvcLibX' main macro will break that prototype, and cause -compilation and/or link errors. -If this happens, simply remove the main() prototype, which is useless anyway. - - -Support for NTFS symlinks and junctions ---------------------------------------- - -Posix defines only a single kind of symbolic links, usable for any kind of -targets, whether they're files, directories, or further symbolic links. -The standard C library defines functions for managing symbolic links: - -Function | Description ----------- | ---------------------------------------------------------------- -readlink() | Read a link target -symlink() | Create a link, or change its target -lstat() | Read the metadata (timestamp, access rights) for the link itself -lchmod() | Change the link access rights -lchown() | Change the link owner -realpath() | Generate an absolute path, with all links resolved - -Windows defines three types of links: - -Type | Description ---------- | --------------------------------------------------------------- -SYMLINK | Symbolic link to a file -SYMLINKD | Symbolic link to a directory -JUNCTION | Mount point, often used as a symbolic link to another directory - -All three types can be created in Vista and later by the mklink command. -JUNCTIONS can also be created in 2000 and later by Microsoft's SysInternal's -junction command. -One important difference is that JUNCTIONs can be created with normal user -rights, whereas SYMLINKs and SYMLINKDs require administrator rights in an -elevated command window. -A second important difference is that on networks, SYMLINKs and SYMLINKDs are -interpreted on the client side, whereas JUNCTIONs are interpreted on the server -side (despite having their target readable from the client side). - -The MsvcLibcX library tries to hide that complexity, and implements the standard -functions as if there were only one kind of link. -It also provides non-standard functions symlinkd() and junction() to -specifically create SYMLINKDs and JUNCTIONs respectively. - -Notes about readlink(): -For SYMLINKs and SYMLINKDs, the case is straightforward. -For JUNCTIONs, there are two problems: - -- The target is stored as an absolute path, even when the JUNCTION was created - with a relative path. readlink() tries to convert the absolute path to a - relative path, so that file copying utilities can clone trees with internal - JUNCTIONs. -- When the JUNCTION is on a network drive, the target refers to the absolute - path on the server. This may not be accessible from the client through the - existing mounted shares. Even when this is accessible, it's not always easy - to map the server path to a valid client path. - readlink() uses heuristics which always work for drives shared at the drive - level. Ex: a C: drive shared as C$, a D: drive shared as D$, etc. - The heuristic also very likely works for drives shared at the root or first - directory level. Ex: C:\ shared as CROOT, or C:\Public shared as PUBLIC. - As of 2014-03-25, it'll fail in any other case. Ex: - C:\Users\YOURNAME shared as YOURHOME, - or a C:\Public share mounted through its subdirectory C:\Public\Temp - -Notes about symlink(): -symlink() will attempt to create a SYMLINK or a SYMLINKD, depending on the type -of the target. This works well when the target exists. But when it does not -(which is legal), it will create a SYMLINK by default, or a SYMLINKD if the -target ends with a '/' or a '\'. Posix allows, but does not require, providing -a trailing '/', so the link type may possibly be incorrect. -junction() will have the same issues as readlink() above. - -Notes about junction(): -The problem for junction() is to convert a client-side target pathname provided -by the program running on the client, to a server-side pathname, necessary for -junctions to work. -For full-drive shares (i.e. any share named like D$), this is easy. -For non-full-drive shares (i.e. anything else), it will assume this is a -first level shared directory on the C: drive. Ex: A link on share PUBLIC -will be targeted at C:\PUBLIC. -Problem: The junction will not work if the share actually resides anywhere else -on the server. But, surprisingly, there's an easy workaround: -Simply create manually on the server itself, a junction called C:\PUBLIC, -pointing at the actual directory shared as PUBLIC. -This way the junctions created from the client side will work correctly, both -on the client and on the server side, after being resolved on the server side -through that second junction. - - -Support for Windows 95/98 -------------------------- - -The configure.bat script searches for old versions of the Visual C++ compiler, -which can build WIN32 programs that can run in Windows 95/98/ME/NT4. -The most recent of these is Visual C++ 8, from Visual Studio 2005. -The make.bat script can then use rules in win95.mak to builds WIN32 programs -that will run in any version of Windows from Windown 95 to Windows 10. - -Note however that Windows 95/98/ME only have a very limited support for Unicode -built in. The rest of this section mentions 95, but applies to 98 & ME as well. -The MsvcLibX library uses a number of Unicode functions not available in default -installations of Windows 95. This includes all file management functions. -Thus most of our WIN95 executables will not work by default in Windows 95. -To allow them to work, it is necessary to download from Microsoft a "Microsoft -Layer for Unicode on Windows 95/98/ME Systems" (MSLU for short), and install it -on the Windows 95 system. See the following links for details: -https://en.wikipedia.org/wiki/Microsoft_Layer_for_Unicode -https://msdn.microsoft.com/en-us/goglobal/bb688166.aspx -MSLU installation procedure: - -- Download the MSLU redistributable setup (unicows.exe) from: - http://go.microsoft.com/fwlink/?LinkId=14851 -- Extract unicows.dll from the unicows.exe archive. -- Copy that unicows.dll to the Windows 95 system, into %windir%\System. - -Testing WIN95 executables in a Windows 95 VM -VMWare Player does not have Windows 95 drivers for the HGFS file system. -This prevents accessing the host's files directly as network files, as is -usually done for Windows XP and later versions of Windows. -It is not possible to use network shares either, as Windows 95 only supports -the SMB 1 protocol, which is actively blocked by Windows Vista and later hosts. -It is possible, but inconvenient, to transit through a web server, and download -the files in the Windows 95 VM using Internet Explorer 4. -The best solution probably is to transit through a floppy or CD image, and -mount that image in the VM Player. Many tools, including our own HpMkIso.exe -can create CD images. A very convenient shareware called WinImage allows to -create floppy images. -Another solution is to install a Web server on the host PC, and use Internet -Explorer 4 in Windows 95 to download the executable files into the VM. - - -Support for DOS, and bound DOS+Windows programs ------------------------------------------------ - -- If Visual C++ 1.52 is installed, configure.bat will setup the make system -for building the MS-DOS version of your programs. (Output in the DOS directory) -- If Visual C++ 8 is installed, configure.bat will setup the make system -for building 32-bits versions of your programs compatible with Windows 95 -and all later versions, including 64-bits ones. (Output in the WIN95 directory) - -Both are available as part of the Visual Studio 2005 CD, still available for -download for MSDN subscribers from the MSDN web site. - -Win32 programs have an "MS-DOS stub", that runs when the Windows program is -executed under MS-DOS. -The default stub used by the Win32 linker if a tiny DOS program that displays -an error message such as: "This program can only run in Windows" - -When it builds the WIN95 or WIN32 version of a program, and when it has built -the DOS version already, the MsvcLibX make system uses that DOS version as the -stub for the Windows version. -This allows building executables that work in *all* versions of DOS and Windows! - -- When run in MS-DOS, it's the DOS stub of the exe that runs. -- When run in Windows (even 64-bits versions), it's the Win32 part that runs. - -Note that the make system will build such bound executables for any WIN32 -build made with more recent compilers. But these recent compilers generate -executables that cannot run in old versions of Windows. For example, the -Visual C++ 14 compiler can only target Windows Vista and later systems. -Having an executable that can run in DOS and Windows 7, but not in Windows XP, -is not very useful. Make sure to install the Visual C++ 8 compiler in parallel -with Visual C++ 1.52, and the latest compiler (Visual C++ 14 at the time of -this writing), to generate truly universal WIN95 builds, that run in -DOS/95/98/ME/2000/XP/Vista/7/8/10. - - -History -------- - -**1986** - -I (Jean-François Larvoire) started writing command-line tools for MS-DOS. -Some were enumerating files, using inline assembly language to make MS-DOS -interrupt 21h system calls: update, dirsize, redo, backnum, which, dirc... -To make it simple I factored these out in subroutines srch1st and srchnext, -that I manually copied from one program to the next. -Things got a bit tricky to support recursion, which was not straightforward -in MS-DOS. - - -**1992** - -We got an OS/2 server, and I started porting the above programs to OS/2. -MS-DOS was still important, so I used conditional compilation to support -both operating systems with the same source. -I wrote a second version of srch1st and srchnext for OS/2, and had to -include a new routine srchdone due to OS/2 API constraints. -dirc was the first program I ported, then I slowly duplicated the code into -the other programs. Synchronizing bug fixes became more difficult. -A nice trick was the OS/2 supported dual-mode EXEs, with both the DOS and -OS/2 version bound in the same .exe file. - - -**1995** - -We ditched the OS/2 server, and got a new one running Windows NT. -Again, I created a third conditionally compiled version of srch1st/srchnext/ -srchdone for WIN32, for use in dirc. -Manually back porting the updates and bug fixes to all programs became -really painful, and took several years. -Like OS/2, Windows supported dual-mode EXEs, and I updated my make files -to include both the DOS and Windows version in the same file. - - -**2005** - -I started working on Linux projects. Despite the bonanza of command-line -tools available, I couldn't find one equivalent to dirc. -So, yet another time, I created a fourth conditionally compiled version of -srch1st/srchnext/srchdone for Linux, and obtained a Linux version of dirc. -I also ported it and a couple of other programs to Tru64, which was the -first 64-bits OS I worked with. This exposed a few unsuspected bugs. -The thing became so complex than porting the changes and updates to the -other programs was a nightmare. I did it for a few of them, but never -got the time to port them all. - - -**2010** - -Building WIN64 versions was relatively easier due to the Tru64 precedent, -but added yet another set of conditional compilations. -The porting nightmare worsened. - - -**2012** - -I tried porting some unrelated Linux programs to Windows, and hit a wall: -Many include files and standard C library routines were missing in MSVC. -I then tried using MinGW, but it too was missing many required features! -I considered contributing updates to MinGW, but that project was too -complex and ill-documented at that time, and I eventually gave up. -Instead, I started writing my own "libc-ext" library of include files and -routines to supplement MSVC. -Ex: stdint.h, inttypes.h, fnmatch.h/fnmatch.c, ... -Also it became obvious that multiplying conditional compilations and -duplicating directory access code everywhere was wrong. Instead I had to -write standard dirent.h/dirent.c routines for DOS/OS2/Windows, and -rewrite all my programs around these standard routines. -I did it for DOS and Windows versions, and left stubs of the OS/2 versions, -for the unlikely case where somebody wants to revive them. - -**2013** - -The restructuration was over for dirc, dirsize, which, backnum, update. -The library got its final name, "MsvcLibX", to better match it purpose: -An extension of the Microsoft Visual C library, not of the standard libc. -As the library grew, debugging it became more difficult, and I decided to -use my debugm.h within the library: This file contains a set of debugging -macros I had developed for other programs. -I started thinking about sorely needed improvements: - -- There was no support for Windows symlinks and junctions. -- The Windows versions of the programs output ANSI file names into a - cmd.exe window using the OEM character set. This caused all files with - French names to be shown as garbage. -- Worse still, I had a few files and directories with non-ANSI names - (In Russian and Chinese), that caused the programs to fail! - -The Linux version of the program did not have these issues, as all recent -versions of Linux use the UTF-8 encoding, and this works transparently -even for old programs using 8-bits characters like mine. - - -**2014** - -I got a bit more time, and started working on a redesign of MsvcLibX's -dirent.c/dirent.h, and added lstat.c, symlink.c, readlink.c, etc, to -support symlinks, junctions, and UTF-8 file names. -This proved to be much more work than I initially thought, but the result -was worth the effort: dirc, update got easily adapted, with remarkably -few changes to their source. Adding recursion to update was easy. -I'm now able to use update to backup all files on my system, including -symbolic links, and junctions used as poor man's links. And the programs -now display names correctly in any code page with the right font. -A seventh program, truename, joined the collection using dirent.h routines. -Later in the year, I made significant other changes: - -- Split make.bat into a generic make.bat/configure.bat pair of scripts. - configure.bat needs to be run once, plus everytime the environment - changes. (Such as if a new MSVC version is installed.) - Project-specific definitions are moved to new files, such as our - configure.MsvcLibX.bat. -- Added a general mechanism for defining extensions to existing MSVC - include files. This allowed defining our own homonym include files, - containing just the missing definitions. Which in turn allowed to move - many such definitions, that were initially stored in unistd.h for lack - of an alternative, to their standard location. -- Updated all file functions to support WIN32 pathnames > 260 characters. - (The basic WIN32 functions that I used until then had that limitation; - I'm now using extended functions supporting path lengths up to 64K.) - -All tools like dirc, dirsize, which, backnum, update, truename, redo -benefit from that last change. - -**2015** - -A major improvement was the addition of support for new operating systems -and processor targets. This required redesigning several things: -The OS-specific definition macros have been renamed to more generic names. -The DosWin.mak file has been replaced by a more generic All.mak, -supporting the old dos.mak, win32.mak, and win64.mak, plus the new... - -- bios.mak Allows building 16-bits programs that can run in BIOS option - ROMs. These programs are based on the BiosLib library, - documented separately. -- win95.mak Allows building win32 programs that run in Windows 95. -- ia64.mak Allows building 64-bits programs that run in IA64 versions - of Windows. Not tested. -- arm.mak Allows building win32 programs for Windows RT. - Tests failed so far, due to a missing "ARM Desktop SDK". - -All.mak also skips building versions for which no tools are available; -This prevents problems in the normal case when people only have the latest -version of MSVC. In this case, it just builds the WIN32 and WIN64 versions. -The support for Windows 95 required fixing numerous issues with old -Microsoft tools and Windows SDKs. -Conversely, the support for Visual Studio 15 also required fixing lots of -issues, as the MSVC library has been completely redesigned, and split into -two parts: - -- A compiler-specific part, part of the compiler tree as before. -- A generic part, called Universal C runtime (UCRT) that's now part of - the windows SDK. - -And of course there were also issues with MsvcLibX recent improvements, -like Unicode support and symlink support, which had never been tested, -and of course did not work, in Windows 95 and XP. - - -**2016** - -Many significant changes and improvements this year: - -- Changed the UTF-8 C source support to require a UTF-8 BOM. - This is to prevent problems with Windows tools that tend to corrupt files - without a UTF-8 BOM, but with other UTF-8 characters. - This required changing all C/C++ compilation rules to first remove the - UTF-8 BOM, as MS compilers do not react correctly when they find one. -- Added a windows.h extension. - Just like Standard C library APIs, windows 8-bit APIs can be overriden to - refer to custom routines that support UTF-8 strings. - The MsvcLibX library was beginning to use a significant number of these - custom routines internally. They're now accessible directly to outside - UTF-8 programs targeting only Windows. -- Finished implementing support for the OUTDIR variable. (Started in 2015.) - All make files now optionally create output files in an %OUTDIR% directory. - This is intended for testing builds in VMs, with shared sources on the - host, but the output locally in the VM, avoiding to overwrite the main - version on the host. IF %OUTDIR% is not defined, the default output - still goes below the source directory as before. diff --git a/deps/MsvcLibX/config.DESKTOP-U79TD6T.bat b/deps/MsvcLibX/config.DESKTOP-U79TD6T.bat deleted file mode 100644 index b1b68e1540..0000000000 --- a/deps/MsvcLibX/config.DESKTOP-U79TD6T.bat +++ /dev/null @@ -1,146 +0,0 @@ -:# config.DESKTOP-U79TD6T.bat generated by configure.bat on 2020/05/19 Öܶþ 7:49:05.47 -:# -:# If changes are needeed, do not edit this file, but instead create a new script -:# called configure.YOURCHOICE.bat. This new script will be invoked automatically -:# by configure.bat while creating this file. Then your script can write extra -:# definitions, or change some of the variables before configure.bat writes them. -:# -:# Invoke configure.bat manually if anything changes in the tools config, such as -:# installing a Visual Studio update, or updating a configure.XXX.bat script. - -set "HAS_STINCLUDE=1" &:# Found the System Tools global C includes -set "STINCLUDE=C:\Users\admin\Desktop\temp\MyGitHub\C\include" &:# System Tools global C includes -set "HAS_SDK_FLAGS=/DHAS_STINCLUDE=1" &:# SDK detection flags for the C compiler - -SET "PF32=C:\Program Files (x86)" &:# 32-bits Program Files -SET "PF64=C:\Program Files" &:# 64-bits Program Files -SET "ARCH=AMD64" &:# PROCESSOR_ARCHITECTURE - -SET "MASM=" &:# Microsoft 16-bits Assembler base path -SET "MSVC=" &:# Microsoft 16-bits Visual C++ base path -SET "MAPSYM=" &:# 16-bits debugging symbols generator - -SET "VSTUDIOLONG=C:\Program Files (x86)\Microsoft Visual Studio 14.0" &:# Microsoft Visual Studio (Long path) -SET "VSTUDIO=C:\PROGRA~2\MICROS~2.0" &:# Microsoft Visual Studio (Short path) -SET "VSCOMMONLONG=C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7" &:# Microsoft Visual Studio Common Files (Long path) -SET "VSCOMMON=C:\PROGRA~2\MICROS~2.0\Common7" &:# Microsoft Visual Studio Common Files (Short path) -SET "VSIDELONG=C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE" &:# Microsoft Visual Studio IDE Files (Long path) -SET "VSIDE=C:\PROGRA~2\MICROS~2.0\Common7\IDE" &:# Microsoft Visual Studio IDE Files (Short path) -SET "VSTOOLSLONG=C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\Tools" &:# Microsoft Visual Studio Tools (Long paths) -SET "VSTOOLS=C:\PROGRA~2\MICROS~2.0\Common7\Tools" &:# Microsoft Visual Studio Tools (Short paths) -SET "MSVC32LONG=C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC" &:# Microsoft Visual C++ 32/64 bits (Long path) -SET "MSVC32=C:\PROGRA~2\MICROS~2.0\VC" &:# Microsoft Visual C++ 32/64 bits (Short path) - -SET "WIN_CP=936" &:# Windows Code Page -SET "WIN_CS=gb2312" &:# Windows Character Set -SET "DOS_CP=936" &:# DOS Code Page -SET "DOS_CS=gb2312" &:# DOS Character Set - -SET "AS=" &:# Assembler -SET "CC=" &:# C compiler -SET "INCLUDE=C:\Users\admin\Desktop\temp\MyGitHub\C\include" &:# Include paths. Define USER_INCLUDE if needed. -SET "LK=" &:# Linker -SET "LIB=" &:# Libraries paths. Define USER_LIBS if needed. -SET "LB=" &:# Library manager -SET "RC=" &:# Resource compiler -SET "MT=" &:# Manifest tool - -SET "DOS_CC=" &:# Microsoft Visual C++ 16-bits compiler -SET "DOS_AS=" &:# Microsoft 16-bits assembler -SET "DOS_LK=" &:# Microsoft 16-bits linker -SET "DOS_LB=" &:# Microsoft 16-bits librarian -SET "DOS_RC=" &:# Microsoft 16-bits resource compiler -SET "DOS_MT=" &:# Microsoft 16-bits manifest tool -SET "DOS_PATH=;C:\Windows\System32;C:\Windows" &:# All tools paths for 16-bits compilation -SET "DOS_VCINC=" &:# Visual C++ 16-bits compiler include dir for MsvcLibX include_next -SET "DOS_CRTINC=" &:# Visual C++ 16-bits CRT library include dir for MsvcLibX include_next -SET "DOS_INCPATH=" &:# Include paths for 16-bits compilation -SET "DOS_LIBPATH=" &:# Libraries paths for 16-bits linking -SET "DOS_WINSDK=" &:# Microsoft Windows 16-bits SDK -SET "DOS_WINSDKINC=" &:# Microsoft Windows 16-bits SDK Include directory - -SET "WIN95_CC=" &:# Microsoft Visual C++ 32-bits compiler -SET "WIN95_AS=" &:# Microsoft 32-bits assembler -SET "WIN95_LK=" &:# Microsoft 32-bits linker -SET "WIN95_LB=" &:# Microsoft 32-bits librarian -SET "WIN95_RC=" &:# Microsoft 32-bits resource compiler -SET "WIN95_MT=" &:# Microsoft 32-bits manifest tool -SET "WIN95_PATH=;C:\Windows\System32;C:\Windows" &:# All tools paths for 32-bits compilation -SET "WIN95_VCINC=" &:# Visual C++ 32-bits compiler include dir for MsvcLibX include_next -SET "WIN95_CRTINC=" &:# Visual C++ 32-bits CRT library include dir for MsvcLibX include_next -SET "WIN95_INCPATH=" &:# Include paths for 32-bits compilation -SET "WIN95_LIBPATH=" &:# Libraries paths for 32-bits linking -SET "WIN95_WINSDK=" &:# Microsoft Windows 32-bits SDK -SET "WIN95_WINSDKINC=" &:# Microsoft Windows 32-bits SDK Include directory - -SET "WIN32_CC="C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\CL.EXE"" &:# Microsoft Visual C++ 32-bits compiler -SET "WIN32_AS="C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\ML.EXE"" &:# Microsoft 32-bits assembler -SET "WIN32_LK="C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\LINK.EXE"" &:# Microsoft 32-bits linker -SET "WIN32_LB="C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\LIB.EXE"" &:# Microsoft 32-bits librarian -SET "WIN32_RC=" &:# Microsoft 32-bits resource compiler -SET "WIN32_MT=" &:# Microsoft 32-bits manifest tool -SET "WIN32_PATH=C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin;C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE;C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\Tools;C:\Windows\System32;C:\Windows" &:# All tools paths for 32-bits compilation -SET "WIN32_VCINC=C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include" &:# Visual C++ 32-bits compiler include dir for MsvcLibX include_next -SET "WIN32_CRTINC=C:\Program Files (x86)\Windows Kits\10\Include\10.0.18362.0\ucrt" &:# Visual C++ 32-bits CRT library include dir for MsvcLibX include_next -SET "WIN32_INCPATH=C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include;:\Program Files (x86)\Windows Kits\10\Include\10.0.17763.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.17763.0\shared;C:\Program Files (x86)\Windows Kits\10\Include\10.0.17763.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.17763.0\winrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.18362.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.18362.0\shared;C:\Program Files (x86)\Windows Kits\10\Include\10.0.18362.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.18362.0\winrt" &:# Include paths for 32-bits compilation -SET "WIN32_LIBPATH=C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\lib;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\um\x86;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\x86;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\ucrt\x86;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\ucrt\x86;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\x86;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\ucrt\x86;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\ucrt\x86;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\x86;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\ucrt\x86;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\ucrt\x86;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\x86;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\ucrt\x86;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\ucrt\x86;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\x86;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\ucrt\x86;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\ucrt\x86;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\x86;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\ucrt\x86;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\ucrt\x86;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\x86;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\ucrt\x86;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\ucrt\x86;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\x86;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\ucrt\x86;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\ucrt\x86" &:# Libraries paths for 32-bits linking -SET "WIN32_WINSDK=C:\Program Files (x86)\Windows Kits\10" &:# Microsoft Windows 32-bits SDK -SET "WIN32_WINSDKINC=C:\Program Files (x86)\Windows Kits\10\Include\10.0.18362.0" &:# Microsoft Windows 32-bits SDK Include directory - -SET "IA64_CC=" &:# Microsoft Visual C++ IA64 compiler -SET "IA64_AS=" &:# Microsoft IA64 assembler -SET "IA64_LK=" &:# Microsoft IA64 linker -SET "IA64_LB=" &:# Microsoft IA64 librarian -SET "IA64_RC=" &:# Microsoft IA64 resource compiler -SET "IA64_MT=" &:# Microsoft IA64 manifest tool -SET "IA64_PATH=;C:\Windows\System32;C:\Windows" &:# All tools paths for IA64 compilation -SET "IA64_VCINC=" &:# Visual C++ IA64 compiler include dir for MsvcLibX include_next -SET "IA64_CRTINC=" &:# Visual C++ IA64 CRT library include dir for MsvcLibX include_next -SET "IA64_INCPATH=" &:# Include paths for IA64 compilation -SET "IA64_LIBPATH=" &:# Libraries paths for IA64 linking -SET "IA64_WINSDK=" &:# Microsoft Windows IA64 SDK -SET "IA64_WINSDKINC=" &:# Microsoft Windows IA64 SDK Include directory - -SET "WIN64_CC="C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64\CL.EXE"" &:# Microsoft Visual C++ 64-bits compiler -SET "WIN64_AS="C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64\ML64.EXE"" &:# Microsoft 64-bits assembler -SET "WIN64_LK="C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64\LINK.EXE"" &:# Microsoft 64-bits linker -SET "WIN64_LB="C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64\LIB.EXE"" &:# Microsoft 64-bits librarian -SET "WIN64_RC=" &:# Microsoft 64-bits resource compiler -SET "WIN64_MT=" &:# Microsoft 64-bits manifest tool -SET "WIN64_PATH=C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64;C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE;C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\Tools;C:\Windows\System32;C:\Windows" &:# All tools paths for 64-bits compilation -SET "WIN64_VCINC=C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include" &:# Visual C++ 64-bits compiler include dir for MsvcLibX include_next -SET "WIN64_CRTINC=C:\Program Files (x86)\Windows Kits\10\Include\10.0.18362.0\ucrt" &:# Visual C++ 64-bits CRT library include dir for MsvcLibX include_next -SET "WIN64_INCPATH=C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include;:\Program Files (x86)\Windows Kits\10\Include\10.0.17763.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.17763.0\shared;C:\Program Files (x86)\Windows Kits\10\Include\10.0.17763.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.17763.0\winrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.18362.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.18362.0\shared;C:\Program Files (x86)\Windows Kits\10\Include\10.0.18362.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.18362.0\winrt" &:# Include paths for 64-bits compilation -SET "WIN64_LIBPATH=C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\lib\amd64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\um\x64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\x64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\ucrt\x64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\ucrt\x64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\x64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\ucrt\x64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\ucrt\x64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\x64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\ucrt\x64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\ucrt\x64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\x64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\ucrt\x64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\ucrt\x64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\x64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\ucrt\x64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\ucrt\x64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\x64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\ucrt\x64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\ucrt\x64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\x64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\ucrt\x64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\ucrt\x64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\x64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\ucrt\x64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\ucrt\x64" &:# Libraries paths for 64-bits linking -SET "WIN64_WINSDK=C:\Program Files (x86)\Windows Kits\10" &:# Microsoft Windows 64-bits SDK -SET "WIN64_WINSDKINC=C:\Program Files (x86)\Windows Kits\10\Include\10.0.18362.0" &:# Microsoft Windows 64-bits SDK Include directory - -SET "ARM_CC="C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64_arm\CL.EXE"" &:# Microsoft Visual C++ ARM compiler -SET "ARM_AS="C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64_arm\ARMASM.EXE"" &:# Microsoft ARM assembler -SET "ARM_LK="C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64_arm\LINK.EXE"" &:# Microsoft ARM linker -SET "ARM_LB="C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64_arm\LIB.EXE"" &:# Microsoft ARM librarian -SET "ARM_RC=" &:# Microsoft ARM resource compiler -SET "ARM_MT=" &:# Microsoft ARM manifest tool -SET "ARM_PATH=C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64_arm;C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64;C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE;C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\Tools;C:\Windows\System32;C:\Windows" &:# All tools paths for ARM compilation -SET "ARM_VCINC=C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include" &:# Visual C++ ARM compiler include dir for MsvcLibX include_next -SET "ARM_CRTINC=C:\Program Files (x86)\Windows Kits\10\Include\10.0.18362.0\ucrt" &:# Visual C++ ARM CRT library include dir for MsvcLibX include_next -SET "ARM_INCPATH=C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include;:\Program Files (x86)\Windows Kits\10\Include\10.0.17763.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.17763.0\shared;C:\Program Files (x86)\Windows Kits\10\Include\10.0.17763.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.17763.0\winrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.18362.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.18362.0\shared;C:\Program Files (x86)\Windows Kits\10\Include\10.0.18362.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.18362.0\winrt" &:# Include paths for ARM compilation -SET "ARM_LIBPATH=C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\lib\arm;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\um\arm;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\arm;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\ucrt\arm;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\ucrt\arm;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\arm;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\ucrt\arm;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\ucrt\arm;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\arm;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\ucrt\arm;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\ucrt\arm;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\arm;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\ucrt\arm;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\ucrt\arm;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\arm;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\ucrt\arm;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\ucrt\arm;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\arm;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\ucrt\arm;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\ucrt\arm;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\arm;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\ucrt\arm;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\ucrt\arm;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\arm;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\ucrt\arm;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\ucrt\arm" &:# Libraries paths for ARM linking -SET "ARM_WINSDK=C:\Program Files (x86)\Windows Kits\10" &:# Microsoft Windows ARM SDK -SET "ARM_WINSDKINC=C:\Program Files (x86)\Windows Kits\10\Include\10.0.18362.0" &:# Microsoft Windows ARM SDK Include directory - -SET "ARM64_CC=" &:# Microsoft Visual C++ ARM64 compiler -SET "ARM64_AS=" &:# Microsoft ARM64 assembler -SET "ARM64_LK=" &:# Microsoft ARM64 linker -SET "ARM64_LB=" &:# Microsoft ARM64 librarian -SET "ARM64_RC=" &:# Microsoft ARM64 resource compiler -SET "ARM64_MT=" &:# Microsoft ARM64 manifest tool -SET "ARM64_PATH=;C:\Windows\System32;C:\Windows" &:# All tools paths for ARM64 compilation -SET "ARM64_VCINC=" &:# Visual C++ ARM64 compiler include dir for MsvcLibX include_next -SET "ARM64_CRTINC=" &:# Visual C++ ARM64 CRT library include dir for MsvcLibX include_next -SET "ARM64_INCPATH=" &:# Include paths for ARM64 compilation -SET "ARM64_LIBPATH=" &:# Libraries paths for ARM64 linking -SET "ARM64_WINSDK=" &:# Microsoft Windows ARM64 SDK -SET "ARM64_WINSDKINC=" &:# Microsoft Windows ARM64 SDK Include directory - -exit /b 0 &:# Configuration done successfully diff --git a/deps/MsvcLibX/configure.bat b/deps/MsvcLibX/configure.bat deleted file mode 100644 index 7037eb92af..0000000000 --- a/deps/MsvcLibX/configure.bat +++ /dev/null @@ -1,35 +0,0 @@ -@echo off -:#***************************************************************************** -:# * -:# Filename: configure.bat * -:# * -:# Description: Detect system-specific settings and create config.*.bat * -:# * -:# Notes: Proxy script for %STINCLUDE%\configure.bat. * -:# * -:# Make any change needed in %STINCLUDE%\configure.bat. * -:# * -:# History: * -:# 2016-10-10 JFL jf.larvoire@hpe.com created this file. * -:# 2016-12-15 JFL Search for the real make.bat in [.|..|../..]\include. * -:# * -:# © Copyright 2016 Hewlett Packard Enterprise Development LP * -:# Licensed under the Apache 2.0 license www.apache.org/licenses/LICENSE-2.0 * -:#***************************************************************************** - -:# Get the full pathname of the STINCLUDE library directory -if defined STINCLUDE if not exist "%STINCLUDE%\make.bat" set "STINCLUDE=" &:# Allow overriding with another alias name, but ignore invalid overrides -for %%p in (. .. ..\..) do if not defined STINCLUDE if exist %%p\include\make.bat ( :# Default: Search it the current directory, and 2 levels above. - for /f "delims=" %%d in ('"pushd %%p\include & cd & popd"') do SET "STINCLUDE=%%d" -) -if not defined STINCLUDE ( :# Try getting the copy in the master environment - for /f "tokens=3" %%v in ('reg query "HKCU\Environment" /v STINCLUDE 2^>NUL') do set "STINCLUDE=%%v" -) - -if not exist %STINCLUDE%\make.bat ( - >&2 echo %0 Error: Cannot find SysToolsLib's global C include directory. Please define variable STINCLUDE. - exit /b 1 -) - -if [%1]==[-d] echo "%STINCLUDE%\configure.bat" %* -"%STINCLUDE%\configure.bat" %* diff --git a/deps/MsvcLibX/include/debugm.h b/deps/MsvcLibX/include/msvcDebugm.h similarity index 100% rename from deps/MsvcLibX/include/debugm.h rename to deps/MsvcLibX/include/msvcDebugm.h diff --git a/deps/MsvcLibX/include/direct.h b/deps/MsvcLibX/include/msvcDirect.h similarity index 91% rename from deps/MsvcLibX/include/direct.h rename to deps/MsvcLibX/include/msvcDirect.h index 0ffbe1e5f4..31017ce50c 100644 --- a/deps/MsvcLibX/include/direct.h +++ b/deps/MsvcLibX/include/msvcDirect.h @@ -19,7 +19,7 @@ #include "msvclibx.h" -#include UCRT_INCLUDE_FILE(direct.h) /* Include MSVC's own file */ +#include /* Include MSVC's own file */ #undef mkdir /* This MSVC macro is incompatible with mkdir() function in unistd.h */ diff --git a/deps/MsvcLibX/include/dirent.h b/deps/MsvcLibX/include/msvcDirent.h similarity index 100% rename from deps/MsvcLibX/include/dirent.h rename to deps/MsvcLibX/include/msvcDirent.h diff --git a/deps/MsvcLibX/include/error.h b/deps/MsvcLibX/include/msvcError.h similarity index 100% rename from deps/MsvcLibX/include/error.h rename to deps/MsvcLibX/include/msvcError.h diff --git a/deps/MsvcLibX/include/fadvise.h b/deps/MsvcLibX/include/msvcFadvise.h similarity index 100% rename from deps/MsvcLibX/include/fadvise.h rename to deps/MsvcLibX/include/msvcFadvise.h diff --git a/deps/MsvcLibX/include/fcntl.h b/deps/MsvcLibX/include/msvcFcntl.h similarity index 92% rename from deps/MsvcLibX/include/fcntl.h rename to deps/MsvcLibX/include/msvcFcntl.h index 0c4a97df8f..fc981b5fc9 100644 --- a/deps/MsvcLibX/include/fcntl.h +++ b/deps/MsvcLibX/include/msvcFcntl.h @@ -18,7 +18,7 @@ #include "msvclibx.h" -#include UCRT_INCLUDE_FILE(fcntl.h) /* Include MSVC's own file */ +#include /* Include MSVC's own file */ /* Microsoft defines _open() in io.h */ #include diff --git a/deps/MsvcLibX/include/fnmatch.h b/deps/MsvcLibX/include/msvcFnmatch.h similarity index 100% rename from deps/MsvcLibX/include/fnmatch.h rename to deps/MsvcLibX/include/msvcFnmatch.h diff --git a/deps/MsvcLibX/include/getopt.h b/deps/MsvcLibX/include/msvcGetopt.h similarity index 100% rename from deps/MsvcLibX/include/getopt.h rename to deps/MsvcLibX/include/msvcGetopt.h diff --git a/deps/MsvcLibX/include/iconv.h b/deps/MsvcLibX/include/msvcIconv.h similarity index 100% rename from deps/MsvcLibX/include/iconv.h rename to deps/MsvcLibX/include/msvcIconv.h diff --git a/deps/MsvcLibX/include/inttypes.h b/deps/MsvcLibX/include/msvcInttypes.h similarity index 100% rename from deps/MsvcLibX/include/inttypes.h rename to deps/MsvcLibX/include/msvcInttypes.h diff --git a/deps/MsvcLibX/include/libgen.h b/deps/MsvcLibX/include/msvcLibgen.h similarity index 100% rename from deps/MsvcLibX/include/libgen.h rename to deps/MsvcLibX/include/msvcLibgen.h diff --git a/deps/MsvcLibX/include/limits.h b/deps/MsvcLibX/include/msvcLimits.h similarity index 94% rename from deps/MsvcLibX/include/limits.h rename to deps/MsvcLibX/include/msvcLimits.h index b26d935ac8..496fe9f24c 100644 --- a/deps/MsvcLibX/include/limits.h +++ b/deps/MsvcLibX/include/msvcLimits.h @@ -18,7 +18,7 @@ #include "msvclibx.h" -#include MSVC_INCLUDE_FILE(limits.h) /* Include MSVC's own file */ +#include /* Include MSVC's own file */ /************************ MS-DOS-specific definitions ************************/ diff --git a/deps/MsvcLibX/include/netdb.h b/deps/MsvcLibX/include/msvcNetdb.h similarity index 100% rename from deps/MsvcLibX/include/netdb.h rename to deps/MsvcLibX/include/msvcNetdb.h diff --git a/deps/MsvcLibX/include/process.h b/deps/MsvcLibX/include/msvcProcess.h similarity index 92% rename from deps/MsvcLibX/include/process.h rename to deps/MsvcLibX/include/msvcProcess.h index 60eee46b2f..66cf94de14 100644 --- a/deps/MsvcLibX/include/process.h +++ b/deps/MsvcLibX/include/msvcProcess.h @@ -19,7 +19,7 @@ #include "msvclibx.h" -#include UCRT_INCLUDE_FILE(process.h) /* Include MSVC's own file */ +#include /* Include MSVC's own file */ #if defined(_WIN32) extern intptr_t _spawnvpU(int iMode, const char *pszCommand, char *const *argv); diff --git a/deps/MsvcLibX/include/regex.h b/deps/MsvcLibX/include/msvcRegex.h similarity index 100% rename from deps/MsvcLibX/include/regex.h rename to deps/MsvcLibX/include/msvcRegex.h diff --git a/deps/MsvcLibX/include/reparsept.h b/deps/MsvcLibX/include/msvcReparsept.h similarity index 100% rename from deps/MsvcLibX/include/reparsept.h rename to deps/MsvcLibX/include/msvcReparsept.h diff --git a/deps/MsvcLibX/include/stdbool.h b/deps/MsvcLibX/include/msvcStdbool.h similarity index 100% rename from deps/MsvcLibX/include/stdbool.h rename to deps/MsvcLibX/include/msvcStdbool.h diff --git a/deps/MsvcLibX/include/stdint.h b/deps/MsvcLibX/include/msvcStdint.h similarity index 100% rename from deps/MsvcLibX/include/stdint.h rename to deps/MsvcLibX/include/msvcStdint.h diff --git a/deps/MsvcLibX/include/stdio.h b/deps/MsvcLibX/include/msvcStdio.h similarity index 95% rename from deps/MsvcLibX/include/stdio.h rename to deps/MsvcLibX/include/msvcStdio.h index a609149982..65af04340d 100644 --- a/deps/MsvcLibX/include/stdio.h +++ b/deps/MsvcLibX/include/msvcStdio.h @@ -20,7 +20,7 @@ #include "msvclibx.h" -#include UCRT_INCLUDE_FILE(stdio.h) /* Include MSVC's own file */ +#include /* Include MSVC's own file */ #include diff --git a/deps/MsvcLibX/include/stdlib.h b/deps/MsvcLibX/include/msvcStdlib.h similarity index 93% rename from deps/MsvcLibX/include/stdlib.h rename to deps/MsvcLibX/include/msvcStdlib.h index 1db1e044ea..b9bcc83f2d 100644 --- a/deps/MsvcLibX/include/stdlib.h +++ b/deps/MsvcLibX/include/msvcStdlib.h @@ -18,7 +18,7 @@ #include "msvclibx.h" -#include UCRT_INCLUDE_FILE(stdlib.h) /* Include MSVC's own file */ +#include /* Include MSVC's own file */ #ifdef __cplusplus extern "C" { diff --git a/deps/MsvcLibX/include/system.h b/deps/MsvcLibX/include/msvcSystem.h similarity index 100% rename from deps/MsvcLibX/include/system.h rename to deps/MsvcLibX/include/msvcSystem.h diff --git a/deps/MsvcLibX/include/time.h b/deps/MsvcLibX/include/msvcTime.h similarity index 87% rename from deps/MsvcLibX/include/time.h rename to deps/MsvcLibX/include/msvcTime.h index afe0769b52..1897da5857 100644 --- a/deps/MsvcLibX/include/time.h +++ b/deps/MsvcLibX/include/msvcTime.h @@ -19,8 +19,8 @@ #include "msvclibx.h" -#include WINSDK_INCLUDE_FILE(winsock2.h) -#include UCRT_INCLUDE_FILE(time.h) /* Include MSVC's own file */ +#include +#include /* Include MSVC's own file */ #ifdef _MSDOS @@ -33,7 +33,7 @@ #ifdef _WIN32 -#include "sys\time.h" /* for struct timespec */ +#include "sys\msvcTime.h" /* for struct timespec */ typedef int clockid_t; /* Supported values for clockid_t */ diff --git a/deps/MsvcLibX/include/unistd.h b/deps/MsvcLibX/include/msvcUnistd.h similarity index 96% rename from deps/MsvcLibX/include/unistd.h rename to deps/MsvcLibX/include/msvcUnistd.h index 0058c50173..9ad60625e0 100644 --- a/deps/MsvcLibX/include/unistd.h +++ b/deps/MsvcLibX/include/msvcUnistd.h @@ -30,8 +30,8 @@ #endif #include "msvclibx.h" /* Generate a library search record to load MsvcLibX.lib. */ -#include "sys/types.h" /* Define pid_t and getppid(). */ -#include "dirent.h" /* Define pid_t and getppid(). */ +#include "sys/msvcTypes.h" /* Define pid_t and getppid(). */ +#include "msvcDirent.h" /* Define pid_t and getppid(). */ #include /* For functions like _chdir() and _getcwd() */ #include /* For _getpid() */ diff --git a/deps/MsvcLibX/include/utime.h b/deps/MsvcLibX/include/msvcUtime.h similarity index 100% rename from deps/MsvcLibX/include/utime.h rename to deps/MsvcLibX/include/msvcUtime.h diff --git a/deps/MsvcLibX/include/windows.h b/deps/MsvcLibX/include/msvcWindows.h similarity index 93% rename from deps/MsvcLibX/include/windows.h rename to deps/MsvcLibX/include/msvcWindows.h index 564e1ea2fc..1c2d72554b 100644 --- a/deps/MsvcLibX/include/windows.h +++ b/deps/MsvcLibX/include/msvcWindows.h @@ -20,7 +20,7 @@ #ifdef _WIN32 -#include WINSDK_INCLUDE_FILE(windows.h) /* Include Windows SDK's own windows.h */ +#include /* Include Windows SDK's own windows.h */ /****************** Define UTF-8 versions of WIN32 routines ******************/ diff --git a/deps/MsvcLibX/include/xfreopen.h b/deps/MsvcLibX/include/msvcXfreopen.h similarity index 100% rename from deps/MsvcLibX/include/xfreopen.h rename to deps/MsvcLibX/include/msvcXfreopen.h diff --git a/deps/MsvcLibX/include/stdio--.h b/deps/MsvcLibX/include/stdio--.h deleted file mode 100644 index 54cc883248..0000000000 --- a/deps/MsvcLibX/include/stdio--.h +++ /dev/null @@ -1,17 +0,0 @@ -/*****************************************************************************\ -* * -* Filename: stdio--.h * -* * -* Description: front-end to stdio.h that redefines some unsafe functions * -* * -* Notes: This header is part of the GNU CoreUtils library. * -* msvclibx: Pass through to the standard stdio.h. * -* * -* History: * -* 2012-10-17 JFL Created this file. * -* * -* Copyright 2016 Hewlett Packard Enterprise Development LP * -* Licensed under the Apache 2.0 license - www.apache.org/licenses/LICENSE-2.0 * -\*****************************************************************************/ - -#include diff --git a/deps/MsvcLibX/include/sys/param.h b/deps/MsvcLibX/include/sys/msvcParam.h similarity index 100% rename from deps/MsvcLibX/include/sys/param.h rename to deps/MsvcLibX/include/sys/msvcParam.h diff --git a/deps/MsvcLibX/include/sys/stat.h b/deps/MsvcLibX/include/sys/msvcStat.h similarity index 96% rename from deps/MsvcLibX/include/sys/stat.h rename to deps/MsvcLibX/include/sys/msvcStat.h index a3b039aa01..b2b82d0be8 100644 --- a/deps/MsvcLibX/include/sys/stat.h +++ b/deps/MsvcLibX/include/sys/msvcStat.h @@ -28,11 +28,11 @@ #include "msvclibx.h" -#include -#include UCRT_INCLUDE_FILE(sys\stat.h) /* Include MSVC's own file */ -#include /* For dirent2stat() arguments definitions */ -#include /* for time_t definition */ -#include /* for timespec definition */ +#include "sys/msvcTypes.h" +#include /* Include MSVC's own file */ +#include "msvcDirent.h" /* For dirent2stat() arguments definitions */ +#include "msvcTime.h" /* for time_t definition */ +#include "sys/msvcTime.h" /* for timespec definition */ /* Include MsvcLibX's override, to avoid conflict with the standard mkdir defined here, should be manually included later on in the C source */ #include @@ -154,7 +154,7 @@ extern char *Filetime2String(uint16_t date, uint16_t time, char *pBuf, size_t nB if we were to use MsvcLibX extended stat structures and routines */ #define _LIBX_stat _CONCAT(_MSVC_stat,_ns) #define _LIBX_stat64 _CONCAT(_MSVC_stat64,_ns) -#include "debugm.h" +#include "msvcDebugm.h" #pragma message("Defining type struct " VALUEIZE(_LIBX_stat)) struct _LIBX_stat { /* MSVC standard stat structure fields */ diff --git a/deps/MsvcLibX/include/sys/time.h b/deps/MsvcLibX/include/sys/msvcTime.h similarity index 100% rename from deps/MsvcLibX/include/sys/time.h rename to deps/MsvcLibX/include/sys/msvcTime.h diff --git a/deps/MsvcLibX/include/sys/utsname.h b/deps/MsvcLibX/include/sys/msvcTsname.h similarity index 100% rename from deps/MsvcLibX/include/sys/utsname.h rename to deps/MsvcLibX/include/sys/msvcTsname.h diff --git a/deps/MsvcLibX/include/sys/types.h b/deps/MsvcLibX/include/sys/msvcTypes.h similarity index 94% rename from deps/MsvcLibX/include/sys/types.h rename to deps/MsvcLibX/include/sys/msvcTypes.h index 4057e031e1..bde2ac9a8a 100644 --- a/deps/MsvcLibX/include/sys/types.h +++ b/deps/MsvcLibX/include/sys/msvcTypes.h @@ -20,7 +20,7 @@ #include "msvclibx.h" -#include UCRT_INCLUDE_FILE(sys\types.h) /* Include MSVC's own file */ +#include /* Include MSVC's own file */ /************************ MS-DOS-specific definitions ************************/ @@ -90,6 +90,7 @@ typedef int uid_t; /* MsvcLibX uses mode_t in sys/stat.h */ typedef int mode_t; +#define HAVE_MODE_T /* File link counts type (not used by MsvcLibX so far) */ typedef int nlink_t; /* Is short in some Unix versions */ diff --git a/deps/MsvcLibX/make.bat b/deps/MsvcLibX/make.bat deleted file mode 100644 index 7a27256122..0000000000 --- a/deps/MsvcLibX/make.bat +++ /dev/null @@ -1,35 +0,0 @@ -@echo off -:#***************************************************************************** -:# * -:# Filename: make.bat * -:# * -:# Description: Build DOS and Windows targets * -:# * -:# Notes: Proxy script for %STINCLUDE%\make.bat. * -:# * -:# If any change is needed, put it in %STINCLUDE%\make.bat. * -:# * -:# History: * -:# 2016-10-10 JFL jf.larvoire@hpe.com created this file. * -:# 2016-12-15 JFL Search for the real make.bat in [.|..|../..]\include. * -:# * -:# © Copyright 2016 Hewlett Packard Enterprise Development LP * -:# Licensed under the Apache 2.0 license www.apache.org/licenses/LICENSE-2.0 * -:#***************************************************************************** - -:# Get the full pathname of the STINCLUDE library directory -if defined STINCLUDE if not exist "%STINCLUDE%\make.bat" set "STINCLUDE=" &:# Allow overriding with another alias name, but ignore invalid overrides -for %%p in (. .. ..\..) do if not defined STINCLUDE if exist %%p\include\make.bat ( :# Default: Search it the current directory, and 2 levels above. - for /f "delims=" %%d in ('"pushd %%p\include & cd & popd"') do SET "STINCLUDE=%%d" -) -if not defined STINCLUDE ( :# Try getting the copy in the master environment - for /f "tokens=3" %%v in ('reg query "HKCU\Environment" /v STINCLUDE 2^>NUL') do set "STINCLUDE=%%v" -) - -if not exist %STINCLUDE%\make.bat ( - >&2 echo %0 Error: Cannot find SysToolsLib's global C include directory. Please define variable STINCLUDE. - exit /b 1 -) - -if [%1]==[-d] echo "%STINCLUDE%\make.bat" %* -"%STINCLUDE%\make.bat" %* diff --git a/deps/MsvcLibX/src/Files.mak b/deps/MsvcLibX/src/Files.mak deleted file mode 100644 index b4868a2b5b..0000000000 --- a/deps/MsvcLibX/src/Files.mak +++ /dev/null @@ -1,261 +0,0 @@ -############################################################################### -# # -# File name Files.mak # -# # -# Description MsvcLibX Specific file dependancies # -# # -# Notes # -# # -# History # -# 2012-10-21 JFL Initial version # -# 2013-03-27 JFL Added debugv.obj and getppid.obj. # -# 2014-02-03 JFL Added readlink.obj. # -# 2014-02-05 JFL Added symlink.obj. # -# 2014-02-06 JFL Added lstat*.obj. # -# 2014-02-10 JFL Added realpath.obj. # -# 2014-02-17 JFL Added err2errno.obj. # -# 2014-02-26 JFL Added filetime.obj. # -# 2014-02-27 JFL Added iconv.obj. # -# 2014-02-28 JFL Added chdir.obj and getcwd.obj. # -# 2014-03-04 JFL Added fopen.obj. # -# 2014-03-06 JFL Added strerror.obj. # -# 2014-03-24 JFL Added access.obj. # -# 2014-03-27 JFL Added spawn.obj. # -# 2014-05-30 JFL Moved here the OBJECTS macro definition from NMakeFile. # -# Added uname.obj and utimes.obj. # -# 2014-06-04 JFL Added clock_gettime.obj and gettimeofday.obj. # -# 2014-06-24 JFL Added fstat64.obj and fstat64i32.obj. # -# 2014-07-01 JFL Added mb2wpath.obj. # -# 2016-09-08 JFL Added basename.obj and dirname.obj. # -# 2016-09-12 JFL Added WIN32_OBJECTS, and several WIN32 UTF-8 routines. # -# 2016-10-11 JFL moved debugm.h to SysToolsLib global C include dir. # -# 2017-02-16 JFL Added open.obj. # -# # -# Copyright 2016 Hewlett Packard Enterprise Development LP # -# Licensed under the Apache 2.0 license - www.apache.org/licenses/LICENSE-2.0 # -############################################################################### - -# List of object files to build and include in the MsvcLibX library -# IMPORTANT NOTE: Every time you add an object file in the list here, also -# store its specific source file dependancies below. -OBJECTS = \ - +access.obj \ - +basename.obj \ - +chdir.obj \ - +clock_gettime.obj \ - +debugv.obj \ - +dirent.obj \ - +dirname.obj \ - +err2errno.obj \ - +filetime.obj \ - +fnmatch.obj \ - +fopen.obj \ - +fstat64i32.obj \ - +fstat64.obj \ - +getcwd.obj \ - +getopt.obj \ - +getppid.obj \ - +gettimeofday.obj \ - +iconv.obj \ - +lstat64i32.obj \ - +lstat64.obj \ - +main.obj \ - +mb2wpath.obj \ - +mkdir.obj \ - +mkdtemp.obj \ - +mkstemp.obj \ - +open.obj \ - +readlink.obj \ - +realpath.obj \ - +spawn.obj \ - +strerror.obj \ - +strndup.obj \ - +strptime.obj \ - +symlink.obj \ - +uname.obj \ - +utime.obj \ - +utimes.obj \ - +xfreopen.obj \ -# +lstat32.obj \ -# +lstat32i64.obj \ - -# WIN32 UTF-8 extension routines, used for implementing UTF-8 support for WIN32 libc. -WIN32_OBJECTS = \ - +GetFileAttributes.obj \ - +GetFileAttributesEx.obj \ - +GetFullPathName.obj \ - +GetLongPathName.obj \ - +fullpath.obj \ - -# GnuLib routines that I mistakenly defined here -REMOVED_OBJECTS = \ - +error.obj \ - +initmain.obj \ - +xnmalloc.obj \ - -############################################################################### -# Include files dependancies # -############################################################################### - -I=..\include -CI=$(STINCLUDE) - -$(I)\chdir.h: $(I)\unistd.h $(I)\iconv.h $(CI)\debugm.h - -$(I)\config.h: $(I)\msvclibx.h $(I)\stdbool.h $(I)\unistd.h - -$(I)\direct.h: $(I)\msvclibx.h - -$(I)\dirent.h: $(I)\inttypes.h $(I)\sys\stat.h - -$(I)\error.h: $(I)\msvclibx.h - -# $(I)\fadvise.h: - -$(I)\fcntl.h: $(I)\msvclibx.h - -$(I)\fnmatch.h: $(I)\msvclibx.h - -$(I)\getcwd.h: $(I)\unistd.h $(CI)\debugm.h - -# $(I)\getopt.h: - -$(I)\grp.h: $(I)\msvclibx.h - -# $(I)\inttypes.h: - -# $(I)\msvclibx.h: - -# $(I)\netdb.h: - -$(I)\process.h: $(I)\msvclibx.h - -$(I)\pwd.h: $(I)\msvclibx.h - -# $(I)\regex.h: - -$(I)\sys\stat.h: $(I)\msvclibx.h $(I)\sys\types.h - -# $(I)\stdbool.h: - -# $(I)\stdint.h: - -$(I)\stdio.h: $(I)\msvclibx.h - -# $(I)\stdio--.h: - -$(I)\stdlib.h: $(I)\msvclibx.h - -# $(I)\system.h: - -$(I)\unistd.h: $(I)\msvclibx.h $(I)\dirent.h - -# $(I)\utime.h: - -$(I)\windowsU.h: $(I)\msvclibx.h - -$(I)\xfreopen.h: $(I)\msvclibx.h - -$(I)\sys\types.h: $(I)\msvclibx.h - - -############################################################################### -# Source files dependancies # -############################################################################### - -access.c: $(I)\MsvcLibX.h $(CI)\debugm.h - -basename.c: $(I)\libgen.h - -chdir.c: $(CI)\debugm.h $(I)\iconv.h $(I)\unistd.h - -clock_gettime.c: $(I)\MsvcLibX.h $(I)\time.h $(I)\sys\stat.h - -debugv.c: $(CI)\debugm.h - -dirent.c: $(CI)\debugm.h $(I)\dirent.h $(I)\sys\stat.h $(I)\unistd.h - -dirname.c: $(I)\libgen.h - -err2errno.c: $(I)\MsvcLibX.h $(CI)\debugm.h - -error.c: $(I)\config.h $(I)\error.h - -filetime.c: $(I)\sys\stat.h - -fnmatch.c: $(CI)\debugm.h $(I)\fnmatch.h - -fopen.c: $(I)\MsvcLibX.h - -fstat64.c: fstat.c $(CI)\debugm.h $(I)\dirent.h $(I)\MsvcLibX.h $(I)\sys\stat.h $(I)\stdint.h - -fstat64i32.c: fstat.c $(CI)\debugm.h $(I)\dirent.h $(I)\MsvcLibX.h $(I)\sys\stat.h $(I)\stdint.h - -fullpath.c: $(I)\stdlib.h $(I)\limits.h - -getcwd.c: $(CI)\debugm.h $(I)\unistd.h - -GetFileAttributesU.c: $(I)\windowsU.h $(I)\limits.h - -GetFileAttributesExU.c: $(I)\windowsU.h $(I)\limits.h - -GetFullPathNameU.c: $(I)\windowsU.h $(I)\limits.h - -GetLongPathNameU.c: $(I)\windowsU.h $(I)\limits.h - -getopt.c: $(I)\getopt.h - -# getppid.c: - -gettimeofday.c: $(I)\MsvcLibX.h $(I)\time.h $(I)\sys\time.h - -grp.c: $(I)\grp.h - -iconv.c: $(I)\iconv.h - -initmain.c: $(I)\config.h - -lstat32.c: lstat.c $(CI)\debugm.h $(I)\dirent.h $(I)\MsvcLibX.h $(I)\sys\stat.h $(I)\stdint.h $(I)\unistd.h - -lstat32i64.c: lstat.c $(CI)\debugm.h $(I)\dirent.h $(I)\MsvcLibX.h $(I)\sys\stat.h $(I)\stdint.h $(I)\unistd.h - -lstat64.c: lstat.c $(CI)\debugm.h $(I)\dirent.h $(I)\MsvcLibX.h $(I)\sys\stat.h $(I)\stdint.h $(I)\unistd.h - -lstat64i32.c: lstat.c $(CI)\debugm.h $(I)\dirent.h $(I)\MsvcLibX.h $(I)\sys\stat.h $(I)\stdint.h $(I)\unistd.h - -main.c: $(I)\MsvcLibX.h - -mb2wpath.c: $(I)\MsvcLibX.h $(CI)\debugm.h - -mkdir.c: $(I)\MsvcLibX.h $(I)\sys\stat.h - -mkdtemp.c: $(I)\unistd.h - -mkstemp.c: $(I)\unistd.h - -open.c: $(I)\MsvcLibX.h $(I)\fcntl.h $(CI)\debugm.h - -pwd.c: $(I)\pwd.h - -readlink.c: $(CI)\debugm.h $(I)\unistd.h $(I)\reparsept.h - -realpath.c: $(CI)\debugm.h $(I)\unistd.h - -spawm.c: $(CI)\debugm.h $(I)\MsvcLibX.h $(I)\process.h - -strerror.c: $(I)\MsvcLibX.h - -# strndup.c: - -# strptime.c: - -symlink.c: $(CI)\debugm.h $(I)\reparsept.h $(I)\unistd.h - -uname.c: $(I)\MsvcLibX.h $(I)\sys\utsname.h - -utime.c: $(CI)\debugm.h $(I)\unistd.h $(I)\utime.h $(I)\sys\time.h - -xfreopen.c: $(I)\xfreopen.h - -xnmalloc.c: $(I)\config.h - diff --git a/deps/MsvcLibX/src/GetFileAttributes.c b/deps/MsvcLibX/src/GetFileAttributes.c index 4a74ff2757..386114ed70 100644 --- a/deps/MsvcLibX/src/GetFileAttributes.c +++ b/deps/MsvcLibX/src/GetFileAttributes.c @@ -16,7 +16,7 @@ #ifdef _WIN32 /* Automatically defined when targeting a Win32 application */ #include /* Also includes MsvcLibX' WIN32 UTF-8 extensions */ -#include +#include "msvcLimits.h" /*---------------------------------------------------------------------------*\ * * diff --git a/deps/MsvcLibX/src/GetFileAttributesEx.c b/deps/MsvcLibX/src/GetFileAttributesEx.c index 9f2b799f4a..caf3c27342 100644 --- a/deps/MsvcLibX/src/GetFileAttributesEx.c +++ b/deps/MsvcLibX/src/GetFileAttributesEx.c @@ -16,7 +16,7 @@ #ifdef _WIN32 /* Automatically defined when targeting a Win32 application */ #include /* Also includes MsvcLibX' WIN32 UTF-8 extensions */ -#include +#include "msvcLimits.h" /*---------------------------------------------------------------------------*\ * * diff --git a/deps/MsvcLibX/src/GetFullPathName.c b/deps/MsvcLibX/src/GetFullPathName.c index 560285269b..4e9afeec3e 100644 --- a/deps/MsvcLibX/src/GetFullPathName.c +++ b/deps/MsvcLibX/src/GetFullPathName.c @@ -16,8 +16,8 @@ #ifdef _WIN32 /* Automatically defined when targeting a Win32 application */ #include /* Also includes MsvcLibX' WIN32 UTF-8 extensions */ -#include -#include "debugm.h" /* MsvcLibX debugging macros */ +#include "msvcLimits.h" +#include "msvcDebugm.h" /* MsvcLibX debugging macros */ /*---------------------------------------------------------------------------*\ * * diff --git a/deps/MsvcLibX/src/GetLongPathName.c b/deps/MsvcLibX/src/GetLongPathName.c index ed4ad8162b..b0bbc245d9 100644 --- a/deps/MsvcLibX/src/GetLongPathName.c +++ b/deps/MsvcLibX/src/GetLongPathName.c @@ -16,8 +16,8 @@ #ifdef _WIN32 /* Automatically defined when targeting a Win32 application */ #include /* Also includes MsvcLibX' WIN32 UTF-8 extensions */ -#include -#include "debugm.h" /* MsvcLibX debugging macros */ +#include "msvcLimits.h" +#include "msvcDebugm.h" /* MsvcLibX debugging macros */ /*---------------------------------------------------------------------------*\ * * diff --git a/deps/MsvcLibX/src/NMakefile b/deps/MsvcLibX/src/NMakefile deleted file mode 100644 index 8be23a7c28..0000000000 --- a/deps/MsvcLibX/src/NMakefile +++ /dev/null @@ -1,239 +0,0 @@ -############################################################################### -# # -# File name NMakefile # -# # -# Description An NMake file for making all MsvcLibX library versions # -# # -# Notes make.bat looks for a default nmake file called nmakefile. # -# # -# History # -# 2012-10-21 JFL Initial version # -# 2014-03-05 JFL Generate the DOS version only if DOS tools are present. # -# 2014-04-22 JFL Fixed the clean target to work even without 16-bits tools.# -# 2014-05-30 JFL Moved the OBJECTS macro definition to Files.mak. # -# 2014-12-03 JFL Fixed the zip target creation. # -# 2015-11-06 JFL Added support for a Win95 version. # -# 2016-01-11 JFL Added a rule to create the common ..\lib directory. # -# 2016-07-05 JFL Fixed a typo preventing the build of DOS S Debug version. # -# 2016-09-26 JFL Added macro LIBDIR, depending on OUTDIR. # -# Copy the include files to $(OUTDIR). # -# 2016-10-04 JFL Make sure nothing is displayed when doing a make clean. # -# 2016-10-06 JFL Added targets mostlyclean & distclean. # -# 2016-10-11 JFL Adapted for use with make files in the global include dir.# -# 2016-10-13 JFL Added target cleanenv. # -# 2016-11-03 JFL Added target config. # -# Updated the cleanenv: script to display the reg command # -# it uses to delete the global environment variable. # -# 2016-11-07 JFL Place LIBDIR in the parent directory even if OUTDIR defnd.# -# Do not copy include files to OUTDIR anymore. # -# 2016-11-16 JFL Removed the rule for copying INCDIR, not used anymore. # -# 2017-02-16 JFL Default goals now depend on the existence of their # -# corresponding make file. # -# # -# Copyright 2016 Hewlett Packard Enterprise Development LP # -# Licensed under the Apache 2.0 license - www.apache.org/licenses/LICENSE-2.0 # -############################################################################### - -!IF DEFINED(MESSAGES) -!MESSAGE Started MsvcLibX/src/NMakefile in $(MAKEDIR) # Display this make file name -!ENDIF - -!IF DEFINED(OUTDIR) -OD=$(OUTDIR)^\ -!IF "$(OUTDIR:\=)"=="$(OUTDIR)" -LIBDIR=..\$(OUTDIR)\lib # If OUTDIR is relative, put it in MsvcLibX top directory -!ELSE -LIBDIR=$(OUTDIR)\lib # If OUTDIR is absolute, use it as is -!ENDIF -!ELSE -OD= -LIBDIR=..\lib -!ENDIF - -MSG=>con echo # Command for writing a progress message on the console -HEADLINE=$(MSG).&$(MSG) # Output a blank line, then a message - -# Default goal: Generate all versions -all: headline \ -!IF DEFINED(DOS_CC) && EXIST("$(STINCLUDE)\DOS.mak") - $(OD)DOS\MsvcLibX.lib \ -!ENDIF -!IF DEFINED(WIN95_CC) && EXIST("$(STINCLUDE)\WIN95.mak") - $(OD)WIN95\MsvcLibX.lib \ -!ENDIF -!IF DEFINED(WIN32_CC) && EXIST("$(STINCLUDE)\WIN32.mak") - $(OD)WIN32\MsvcLibX.lib \ -!ENDIF -!IF DEFINED(WIN64_CC) && EXIST("$(STINCLUDE)\WIN64.mak") - $(OD)WIN64\MsvcLibX.lib \ -!ENDIF -!IF DEFINED(DOS_CC) && EXIST("$(STINCLUDE)\DOS.mak") - $(OD)DOS\DEBUG\MsvcLibX.lib \ -!ENDIF -!IF DEFINED(WIN95_CC) && EXIST("$(STINCLUDE)\WIN95.mak") - $(OD)WIN95\DEBUG\MsvcLibX.lib \ -!ENDIF -!IF DEFINED(WIN32_CC) && EXIST("$(STINCLUDE)\WIN32.mak") - $(OD)WIN32\DEBUG\MsvcLibX.lib \ -!ENDIF -!IF DEFINED(WIN64_CC) && EXIST("$(STINCLUDE)\WIN64.mak") - $(OD)WIN64\DEBUG\MsvcLibX.lib \ -!ENDIF - -headline: - $(HEADLINE) Building all MsvcLibX library versions - -# Define the OBJECTS macro = the list of object files to include in the library -!INCLUDE "Files.mak" - -# Create the common libs directory -$(LIBDIR): - $(HEADLINE) Creating directory $(LIBDIR:..=MsvcLibX) - md $(LIBDIR) - -# Rules for building specific versions of the MsvcLibX library -$(OD)DOS\MsvcLibX.lib: $(OD)DOS\BIN\T\MsvcLibX.lib $(OD)DOS\BIN\S\MsvcLibX.lib $(OD)DOS\BIN\L\MsvcLibX.lib - @echo Done building all DOS release libraries - -$(OD)DOS\DEBUG\MsvcLibX.lib: $(OD)DOS\DEBUG\BIN\T\MsvcLibX.lib $(OD)DOS\DEBUG\BIN\S\MsvcLibX.lib $(OD)DOS\DEBUG\BIN\L\MsvcLibX.lib - @echo Done building all DOS debug libraries - -$(OD)DOS\BIN\T\MsvcLibX.lib: $(LIBDIR) NUL - $(HEADLINE) Building MsvcLibX library DOS tiny release version - set OBJECTS=$(OBJECTS) - $(MAKE) /$(MAKEFLAGS) /f $(STINCLUDE)\DOS.mak "DEBUG=0" "PROGRAM=MsvcLibX" "OBJECTS=%OBJECTS:+=+$(OD)DOS\OBJ\T\%" "MEM=T" dirs $@ - if exist $@ copy $@ $(LIBDIR)\MsvcLibXdt.lib - -$(OD)DOS\BIN\S\MsvcLibX.lib: $(LIBDIR) NUL - $(HEADLINE) Building MsvcLibX library DOS small release version - set OBJECTS=$(OBJECTS) - $(MAKE) /$(MAKEFLAGS) /f $(STINCLUDE)\DOS.mak "DEBUG=0" "PROGRAM=MsvcLibX" "OBJECTS=%OBJECTS:+=+$(OD)DOS\OBJ\S\%" "MEM=S" dirs $@ - if exist $@ copy $@ $(LIBDIR)\MsvcLibXds.lib - -$(OD)DOS\BIN\L\MsvcLibX.lib: $(LIBDIR) NUL - $(HEADLINE) Building MsvcLibX library DOS large release version - set OBJECTS=$(OBJECTS) - $(MAKE) /$(MAKEFLAGS) /f $(STINCLUDE)\DOS.mak "DEBUG=0" "PROGRAM=MsvcLibX" "OBJECTS=%OBJECTS:+=+$(OD)DOS\OBJ\L\%" "MEM=L" dirs $@ - if exist $@ copy $@ $(LIBDIR)\MsvcLibXdl.lib - -$(OD)WIN95\MsvcLibX.lib: $(LIBDIR) NUL - $(HEADLINE) Building MsvcLibX library WIN95 release version - set OBJECTS=$(OBJECTS) $(WIN32_OBJECTS) - $(MAKE) /$(MAKEFLAGS) /f $(STINCLUDE)\WIN95.mak "DEBUG=0" "PROGRAM=MsvcLibX" "OBJECTS=%OBJECTS:+=+$(OD)WIN95\OBJ\%" dirs $@ - if exist $@ copy $@ $(LIBDIR)\MsvcLibXw95.lib - -$(OD)WIN32\MsvcLibX.lib: $(LIBDIR) NUL - $(HEADLINE) Building MsvcLibX library WIN32 release version - set OBJECTS=$(OBJECTS) $(WIN32_OBJECTS) - set OD=$(OD) - $(MAKE) /$(MAKEFLAGS) /f $(STINCLUDE)\WIN32.mak "DEBUG=0" "PROGRAM=MsvcLibX" "OBJECTS=%OBJECTS:+=+$(OD)WIN32\OBJ\%" dirs $@ - if exist $@ copy $@ $(LIBDIR)\MsvcLibXw32.lib - -$(OD)WIN64\MsvcLibX.lib: $(LIBDIR) NUL - $(HEADLINE) Building MsvcLibX library WIN64 release version - set OBJECTS=$(OBJECTS) $(WIN32_OBJECTS) - $(MAKE) /$(MAKEFLAGS) /f $(STINCLUDE)\WIN64.mak "DEBUG=0" "PROGRAM=MsvcLibX" "OBJECTS=%OBJECTS:+=+$(OD)WIN64\OBJ\%" dirs $@ - if exist $@ copy $@ $(LIBDIR)\MsvcLibXw64.lib - -$(OD)DOS\DEBUG\BIN\T\MsvcLibX.lib: $(LIBDIR) NUL - $(HEADLINE) Building MsvcLibX library DOS tiny debug version - set OBJECTS=$(OBJECTS) - $(MAKE) /$(MAKEFLAGS) /f $(STINCLUDE)\DOS.mak "DEBUG=1" "PROGRAM=MsvcLibX" "OBJECTS=%OBJECTS:+=+$(OD)DOS\DEBUG\OBJ\T\%" "MEM=T" dirs $@ - if exist $@ copy $@ $(LIBDIR)\MsvcLibXdtd.lib - -$(OD)DOS\DEBUG\BIN\S\MsvcLibX.lib: $(LIBDIR) NUL - $(HEADLINE) Building MsvcLibX library DOS small debug version - set OBJECTS=$(OBJECTS) - $(MAKE) /$(MAKEFLAGS) /f $(STINCLUDE)\DOS.mak "DEBUG=1" "PROGRAM=MsvcLibX" "OBJECTS=%OBJECTS:+=+$(OD)DOS\DEBUG\OBJ\S\%" "MEM=S" dirs $@ - if exist $@ copy $@ $(LIBDIR)\MsvcLibXdsd.lib - -$(OD)DOS\DEBUG\BIN\L\MsvcLibX.lib: $(LIBDIR) NUL - $(HEADLINE) Building MsvcLibX library DOS large debug version - set OBJECTS=$(OBJECTS) - $(MAKE) /$(MAKEFLAGS) /f $(STINCLUDE)\DOS.mak "DEBUG=1" "PROGRAM=MsvcLibX" "OBJECTS=%OBJECTS:+=+$(OD)DOS\DEBUG\OBJ\L\%" "MEM=L" dirs $@ - if exist $@ copy $@ $(LIBDIR)\MsvcLibXdld.lib - -$(OD)WIN95\DEBUG\MsvcLibX.lib: $(LIBDIR) NUL - $(HEADLINE) Building MsvcLibX library WIN95 debug version - set OBJECTS=$(OBJECTS) $(WIN32_OBJECTS) - $(MAKE) /$(MAKEFLAGS) /f $(STINCLUDE)\WIN95.mak "DEBUG=1" "PROGRAM=MsvcLibX" "OBJECTS=%OBJECTS:+=+$(OD)WIN95\DEBUG\OBJ\%" dirs $@ - if exist $@ copy $@ $(LIBDIR)\MsvcLibXw95d.lib - -$(OD)WIN32\DEBUG\MsvcLibX.lib: $(LIBDIR) NUL - $(HEADLINE) Building MsvcLibX library WIN32 debug version - set OBJECTS=$(OBJECTS) $(WIN32_OBJECTS) - $(MAKE) /$(MAKEFLAGS) /f $(STINCLUDE)\WIN32.mak "DEBUG=1" "PROGRAM=MsvcLibX" "OBJECTS=%OBJECTS:+=+$(OD)WIN32\DEBUG\OBJ\%" dirs $@ - if exist $@ copy $@ $(LIBDIR)\MsvcLibXw32d.lib - -$(OD)WIN64\DEBUG\MsvcLibX.lib: $(LIBDIR) NUL - $(HEADLINE) Building MsvcLibX library WIN64 debug version - set OBJECTS=$(OBJECTS) $(WIN32_OBJECTS) - $(MAKE) /$(MAKEFLAGS) /f $(STINCLUDE)\WIN64.mak "DEBUG=1" "PROGRAM=MsvcLibX" "OBJECTS=%OBJECTS:+=+$(OD)WIN64\DEBUG\OBJ\%" dirs $@ - if exist $@ copy $@ $(LIBDIR)\MsvcLibXw64d.lib - -# Erase all global environment variables created by this build -VARS=MSVCLIBX # Global environment variables generated here -cleanenv: - call <<"$(TMP)\cleanenv-$(PID).bat" &:# Delete variables created here - @echo off - setlocal EnableExtensions EnableDelayedExpansion - set "KEY=HKCU\Environment" - if not "$(VARS)"=="" for %%v in ($(VARS)) do @( - >>"$(TMP)\cleanenv-$(PID).lst" (echo %%v) &:# Pass the name back to make.bat, for deleting it in the current shell environment - set "VALUE=" - for /f "tokens=1,3" %%a in ('reg query "%KEY%" ^| findstr /i /b /r /c:" *%%v "') do set VALUE="%%b" - if defined VALUE ( :# The global environment variable exists. Delete it, using its actual name with the correct case. - set CMD=reg delete "%KEY%" /v %%v /f - echo !CMD! - !CMD! >NUL - ) - ) -<< - -# Dummy target, to delete all files built by these make files -clean mostlyclean distclean: - rem # Delete temporary files - -for /f "delims=" %f in ('dir /b /s *~ *.bak #*# 2^>NUL') do @del "%f" - rem # Delete files built by this nmakefile - -for /f "delims=" %f in ('dir /b /s ..\*.zip *.log 2^>NUL') do @del "%f" - rem # Delete files built by the DOS.mak, WIN32.mak, WIN64.mak make files - rem # But make DOS.mak will fail if 16-bit tools are missing. Workaround: - -if exist $(STINCLUDE)\DOS.mak $(MAKE) /$(MAKEFLAGS) /f $(STINCLUDE)\DOS.mak clean - if exist $(OD)DOS rd /s /q $(OD)DOS - rem # No such problem with the others, but just in case, do the same. - -if exist $(STINCLUDE)\WIN95.mak $(MAKE) /$(MAKEFLAGS) /f $(STINCLUDE)\WIN95.mak clean - if exist $(OD)WIN95 rd /s /q $(OD)WIN95 - -if exist $(STINCLUDE)\WIN32.mak $(MAKE) /$(MAKEFLAGS) /f $(STINCLUDE)\WIN32.mak clean - if exist $(OD)WIN32 rd /s /q $(OD)WIN32 - -if exist $(STINCLUDE)\WIN64.mak $(MAKE) /$(MAKEFLAGS) /f $(STINCLUDE)\WIN64.mak clean - if exist $(OD)WIN64 rd /s /q $(OD)WIN64 -!IF DEFINED(OUTDIR) - -rd /S /Q $(OUTDIR) >NUL 2>&1 -!ENDIF - -if "$@"=="distclean" del /Q config.*.bat >NUL 2>&1 - -# Dummy target, to build a source archive -dist zip: - $(MSG) Building ..\MsvcLibX.zip - cd .. - if exist MsvcLibX.zip del MsvcLibX.zip - set PATH=$(PATH);C:\Program Files\7-zip - 7z.exe a MsvcLibX.zip *.txt src\*.bat src\*.mak src\*makefile src\exe src\*.c -r include\*.h lib\ - rem # Delete files that got dragged in by wild cards, but that we don't want in the source zip. - 7z.exe d MsvcLibX.zip src\config.*.bat lib\*.lib - cd src - -# Run the configure.bat script in every subdirectory -config: - rem Nothing to do in $(MAKEDIR) as there is no further child level - -# Dummy target, to display a help screen -help: - type << -Targets: - all Rebuild all library versions (Default) - clean Delete all files built here, and all backup files - distclean Do a clean, then delete config.*.bat files - zip Build a source archive in ..\MsvcLibX.zip. Requires 7-zip. -< #include #include +#include "msvcStdio.h" #include "msvclibx.h" -#include "debugm.h" +#include "msvcDebugm.h" +#include "msvcLimits.h" #ifdef _WIN32 diff --git a/deps/MsvcLibX/src/basename.c b/deps/MsvcLibX/src/basename.c index bf2af0efbe..c442a40626 100644 --- a/deps/MsvcLibX/src/basename.c +++ b/deps/MsvcLibX/src/basename.c @@ -20,11 +20,11 @@ #define _CRT_SECURE_NO_WARNINGS 1 /* Avoid Visual C++ 2005 security warnings */ -#include #include #include -#include -#include +#include "msvcStdlib.h" +#include "msvcLibgen.h" +#include "msvcLimits.h" #define TRUE 1 #define FALSE 0 diff --git a/deps/MsvcLibX/src/chdir.c b/deps/MsvcLibX/src/chdir.c index e438cf937e..8d562f885f 100644 --- a/deps/MsvcLibX/src/chdir.c +++ b/deps/MsvcLibX/src/chdir.c @@ -18,12 +18,14 @@ /* Microsoft C libraries include files */ #include -#include #include /* MsvcLibX library extensions */ -#include -#include -#include "debugm.h" +#include "msvcStdio.h" +#include "msvcUnistd.h" +#include "msvcIconv.h" +#include "msvcDebugm.h" +#include "msvcLimits.h" +#include "sys/msvcTypes.h" #if defined(_MSDOS) diff --git a/deps/MsvcLibX/src/clock_gettime.c b/deps/MsvcLibX/src/clock_gettime.c index 8a5bb8f3fb..fee7532e2e 100644 --- a/deps/MsvcLibX/src/clock_gettime.c +++ b/deps/MsvcLibX/src/clock_gettime.c @@ -31,8 +31,8 @@ #define WIN32_LEAN_AND_MEAN /* Avoid lots of unnecessary inclusions */ #include - -#include /* For MsvcLibX's Filetime2Timespec */ +#include "msvcTime.h" +#include "sys/msvcStat.h" /* For MsvcLibX's Filetime2Timespec */ int clock_gettime(clockid_t clock_id, struct timespec *pTS) { FILETIME ft; diff --git a/deps/MsvcLibX/src/config.DESKTOP-U79TD6T.bat b/deps/MsvcLibX/src/config.DESKTOP-U79TD6T.bat deleted file mode 100644 index 6d57a1358a..0000000000 --- a/deps/MsvcLibX/src/config.DESKTOP-U79TD6T.bat +++ /dev/null @@ -1,151 +0,0 @@ -:# config.DESKTOP-U79TD6T.bat generated by configure.bat on 2020/05/19 Öܶþ 7:50:15.02 -:# -:# If changes are needeed, do not edit this file, but instead create a new script -:# called configure.YOURCHOICE.bat. This new script will be invoked automatically -:# by configure.bat while creating this file. Then your script can write extra -:# definitions, or change some of the variables before configure.bat writes them. -:# -:# Invoke configure.bat manually if anything changes in the tools config, such as -:# installing a Visual Studio update, or updating a configure.XXX.bat script. - -set "HAS_STINCLUDE=1" &:# Found the System Tools global C includes -set "STINCLUDE=C:\Users\admin\Desktop\temp\MyGitHub\C\include" &:# System Tools global C includes -set "HAS_MSVCLIBX=1" &:# Found the MSVC Library eXtensions library -set "MSVCLIBX=C:\Users\admin\Desktop\temp\MyGitHub\C\MsvcLibX" &:# MSVC Library eXtensions library -set "HAS_SDK_FLAGS=/DHAS_STINCLUDE=1 /DHAS_MSVCLIBX=1" &:# SDK detection flags for the C compiler - -SET "PF32=C:\Program Files (x86)" &:# 32-bits Program Files -SET "PF64=C:\Program Files" &:# 64-bits Program Files -SET "ARCH=AMD64" &:# PROCESSOR_ARCHITECTURE - -SET "MASM=" &:# Microsoft 16-bits Assembler base path -SET "MSVC=" &:# Microsoft 16-bits Visual C++ base path -SET "MAPSYM=" &:# 16-bits debugging symbols generator - -SET "VSTUDIOLONG=C:\Program Files (x86)\Microsoft Visual Studio 14.0" &:# Microsoft Visual Studio (Long path) -SET "VSTUDIO=C:\PROGRA~2\MICROS~2.0" &:# Microsoft Visual Studio (Short path) -SET "VSCOMMONLONG=C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7" &:# Microsoft Visual Studio Common Files (Long path) -SET "VSCOMMON=C:\PROGRA~2\MICROS~2.0\Common7" &:# Microsoft Visual Studio Common Files (Short path) -SET "VSIDELONG=C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE" &:# Microsoft Visual Studio IDE Files (Long path) -SET "VSIDE=C:\PROGRA~2\MICROS~2.0\Common7\IDE" &:# Microsoft Visual Studio IDE Files (Short path) -SET "VSTOOLSLONG=C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\Tools" &:# Microsoft Visual Studio Tools (Long paths) -SET "VSTOOLS=C:\PROGRA~2\MICROS~2.0\Common7\Tools" &:# Microsoft Visual Studio Tools (Short paths) -SET "MSVC32LONG=C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC" &:# Microsoft Visual C++ 32/64 bits (Long path) -SET "MSVC32=C:\PROGRA~2\MICROS~2.0\VC" &:# Microsoft Visual C++ 32/64 bits (Short path) - -SET "WIN_CP=936" &:# Windows Code Page -SET "WIN_CS=gb2312" &:# Windows Character Set -SET "DOS_CP=936" &:# DOS Code Page -SET "DOS_CS=gb2312" &:# DOS Character Set - -SET "AS=" &:# Assembler -SET "CC=" &:# C compiler -SET "INCLUDE=C:\Users\admin\Desktop\temp\MyGitHub\C\include" &:# Include paths. Define USER_INCLUDE if needed. -SET "LK=" &:# Linker -SET "LIB=" &:# Libraries paths. Define USER_LIBS if needed. -SET "LB=" &:# Library manager -SET "RC=" &:# Resource compiler -SET "MT=" &:# Manifest tool - -SET "DOS_CC=" &:# Microsoft Visual C++ 16-bits compiler -SET "DOS_AS=" &:# Microsoft 16-bits assembler -SET "DOS_LK=" &:# Microsoft 16-bits linker -SET "DOS_LB=" &:# Microsoft 16-bits librarian -SET "DOS_RC=" &:# Microsoft 16-bits resource compiler -SET "DOS_MT=" &:# Microsoft 16-bits manifest tool -SET "DOS_PATH=;C:\Windows\System32;C:\Windows" &:# All tools paths for 16-bits compilation -SET "DOS_VCINC=" &:# Visual C++ 16-bits compiler include dir for MsvcLibX include_next -SET "DOS_CRTINC=" &:# Visual C++ 16-bits CRT library include dir for MsvcLibX include_next -SET "DOS_INCPATH=" &:# Include paths for 16-bits compilation -SET "DOS_LIBPATH=" &:# Libraries paths for 16-bits linking -SET "DOS_WINSDK=" &:# Microsoft Windows 16-bits SDK -SET "DOS_WINSDKINC=" &:# Microsoft Windows 16-bits SDK Include directory - -SET "WIN95_CC=" &:# Microsoft Visual C++ 32-bits compiler -SET "WIN95_AS=" &:# Microsoft 32-bits assembler -SET "WIN95_LK=" &:# Microsoft 32-bits linker -SET "WIN95_LB=" &:# Microsoft 32-bits librarian -SET "WIN95_RC=" &:# Microsoft 32-bits resource compiler -SET "WIN95_MT=" &:# Microsoft 32-bits manifest tool -SET "WIN95_PATH=;C:\Windows\System32;C:\Windows" &:# All tools paths for 32-bits compilation -SET "WIN95_VCINC=" &:# Visual C++ 32-bits compiler include dir for MsvcLibX include_next -SET "WIN95_CRTINC=" &:# Visual C++ 32-bits CRT library include dir for MsvcLibX include_next -SET "WIN95_INCPATH=" &:# Include paths for 32-bits compilation -SET "WIN95_LIBPATH=" &:# Libraries paths for 32-bits linking -SET "WIN95_WINSDK=" &:# Microsoft Windows 32-bits SDK -SET "WIN95_WINSDKINC=" &:# Microsoft Windows 32-bits SDK Include directory - -SET "WIN32_CC="C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\CL.EXE"" &:# Microsoft Visual C++ 32-bits compiler -SET "WIN32_AS="C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\ML.EXE"" &:# Microsoft 32-bits assembler -SET "WIN32_LK="C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\LINK.EXE"" &:# Microsoft 32-bits linker -SET "WIN32_LB="C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\LIB.EXE"" &:# Microsoft 32-bits librarian -SET "WIN32_RC=" &:# Microsoft 32-bits resource compiler -SET "WIN32_MT=" &:# Microsoft 32-bits manifest tool -SET "WIN32_PATH=C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin;C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE;C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\Tools;C:\Windows\System32;C:\Windows" &:# All tools paths for 32-bits compilation -SET "WIN32_VCINC=C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include" &:# Visual C++ 32-bits compiler include dir for MsvcLibX include_next -SET "WIN32_CRTINC=C:\Program Files (x86)\Windows Kits\10\Include\10.0.18362.0\ucrt" &:# Visual C++ 32-bits CRT library include dir for MsvcLibX include_next -SET "WIN32_INCPATH=C:\Users\admin\Desktop\temp\MyGitHub\C\MsvcLibX\include;C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include;:\Program Files (x86)\Windows Kits\10\Include\10.0.17763.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.17763.0\shared;C:\Program Files (x86)\Windows Kits\10\Include\10.0.17763.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.17763.0\winrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.18362.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.18362.0\shared;C:\Program Files (x86)\Windows Kits\10\Include\10.0.18362.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.18362.0\winrt" &:# Include paths for 32-bits compilation -SET "WIN32_LIBPATH=C:\Users\admin\Desktop\temp\MyGitHub\C\MsvcLibX\lib;C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\lib;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\um\x86;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\x86;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\ucrt\x86;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\ucrt\x86;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\x86;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\ucrt\x86;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\ucrt\x86;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\x86;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\ucrt\x86;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\ucrt\x86;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\x86;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\ucrt\x86;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\ucrt\x86;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\x86;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\ucrt\x86;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\ucrt\x86;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\x86;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\ucrt\x86;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\ucrt\x86;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\x86;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\ucrt\x86;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\ucrt\x86;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\x86;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\ucrt\x86;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\ucrt\x86" &:# Libraries paths for 32-bits linking -SET "WIN32_WINSDK=C:\Program Files (x86)\Windows Kits\10" &:# Microsoft Windows 32-bits SDK -SET "WIN32_WINSDKINC=C:\Program Files (x86)\Windows Kits\10\Include\10.0.18362.0" &:# Microsoft Windows 32-bits SDK Include directory - -SET "IA64_CC=" &:# Microsoft Visual C++ IA64 compiler -SET "IA64_AS=" &:# Microsoft IA64 assembler -SET "IA64_LK=" &:# Microsoft IA64 linker -SET "IA64_LB=" &:# Microsoft IA64 librarian -SET "IA64_RC=" &:# Microsoft IA64 resource compiler -SET "IA64_MT=" &:# Microsoft IA64 manifest tool -SET "IA64_PATH=;C:\Windows\System32;C:\Windows" &:# All tools paths for IA64 compilation -SET "IA64_VCINC=" &:# Visual C++ IA64 compiler include dir for MsvcLibX include_next -SET "IA64_CRTINC=" &:# Visual C++ IA64 CRT library include dir for MsvcLibX include_next -SET "IA64_INCPATH=" &:# Include paths for IA64 compilation -SET "IA64_LIBPATH=" &:# Libraries paths for IA64 linking -SET "IA64_WINSDK=" &:# Microsoft Windows IA64 SDK -SET "IA64_WINSDKINC=" &:# Microsoft Windows IA64 SDK Include directory - -SET "WIN64_CC="C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64\CL.EXE"" &:# Microsoft Visual C++ 64-bits compiler -SET "WIN64_AS="C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64\ML64.EXE"" &:# Microsoft 64-bits assembler -SET "WIN64_LK="C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64\LINK.EXE"" &:# Microsoft 64-bits linker -SET "WIN64_LB="C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64\LIB.EXE"" &:# Microsoft 64-bits librarian -SET "WIN64_RC=" &:# Microsoft 64-bits resource compiler -SET "WIN64_MT=" &:# Microsoft 64-bits manifest tool -SET "WIN64_PATH=C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64;C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE;C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\Tools;C:\Windows\System32;C:\Windows" &:# All tools paths for 64-bits compilation -SET "WIN64_VCINC=C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include" &:# Visual C++ 64-bits compiler include dir for MsvcLibX include_next -SET "WIN64_CRTINC=C:\Program Files (x86)\Windows Kits\10\Include\10.0.18362.0\ucrt" &:# Visual C++ 64-bits CRT library include dir for MsvcLibX include_next -SET "WIN64_INCPATH=C:\Users\admin\Desktop\temp\MyGitHub\C\MsvcLibX\include;C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include;:\Program Files (x86)\Windows Kits\10\Include\10.0.17763.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.17763.0\shared;C:\Program Files (x86)\Windows Kits\10\Include\10.0.17763.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.17763.0\winrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.18362.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.18362.0\shared;C:\Program Files (x86)\Windows Kits\10\Include\10.0.18362.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.18362.0\winrt" &:# Include paths for 64-bits compilation -SET "WIN64_LIBPATH=C:\Users\admin\Desktop\temp\MyGitHub\C\MsvcLibX\lib;C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\lib\amd64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\um\x64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\x64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\ucrt\x64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\ucrt\x64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\x64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\ucrt\x64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\ucrt\x64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\x64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\ucrt\x64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\ucrt\x64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\x64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\ucrt\x64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\ucrt\x64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\x64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\ucrt\x64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\ucrt\x64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\x64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\ucrt\x64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\ucrt\x64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\x64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\ucrt\x64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\ucrt\x64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\x64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\ucrt\x64;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\ucrt\x64" &:# Libraries paths for 64-bits linking -SET "WIN64_WINSDK=C:\Program Files (x86)\Windows Kits\10" &:# Microsoft Windows 64-bits SDK -SET "WIN64_WINSDKINC=C:\Program Files (x86)\Windows Kits\10\Include\10.0.18362.0" &:# Microsoft Windows 64-bits SDK Include directory - -SET "ARM_CC="C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64_arm\CL.EXE"" &:# Microsoft Visual C++ ARM compiler -SET "ARM_AS="C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64_arm\ARMASM.EXE"" &:# Microsoft ARM assembler -SET "ARM_LK="C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64_arm\LINK.EXE"" &:# Microsoft ARM linker -SET "ARM_LB="C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64_arm\LIB.EXE"" &:# Microsoft ARM librarian -SET "ARM_RC=" &:# Microsoft ARM resource compiler -SET "ARM_MT=" &:# Microsoft ARM manifest tool -SET "ARM_PATH=C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64_arm;C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64;C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE;C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\Tools;C:\Windows\System32;C:\Windows" &:# All tools paths for ARM compilation -SET "ARM_VCINC=C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include" &:# Visual C++ ARM compiler include dir for MsvcLibX include_next -SET "ARM_CRTINC=C:\Program Files (x86)\Windows Kits\10\Include\10.0.18362.0\ucrt" &:# Visual C++ ARM CRT library include dir for MsvcLibX include_next -SET "ARM_INCPATH=C:\Users\admin\Desktop\temp\MyGitHub\C\MsvcLibX\include;C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\include;:\Program Files (x86)\Windows Kits\10\Include\10.0.17763.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.17763.0\shared;C:\Program Files (x86)\Windows Kits\10\Include\10.0.17763.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.17763.0\winrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.18362.0\ucrt;C:\Program Files (x86)\Windows Kits\10\Include\10.0.18362.0\shared;C:\Program Files (x86)\Windows Kits\10\Include\10.0.18362.0\um;C:\Program Files (x86)\Windows Kits\10\Include\10.0.18362.0\winrt" &:# Include paths for ARM compilation -SET "ARM_LIBPATH=C:\Users\admin\Desktop\temp\MyGitHub\C\MsvcLibX\lib;C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\lib\arm;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\um\arm;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\arm;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\ucrt\arm;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\ucrt\arm;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\arm;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\ucrt\arm;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\ucrt\arm;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\arm;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\ucrt\arm;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\ucrt\arm;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\arm;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\ucrt\arm;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\ucrt\arm;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\arm;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\ucrt\arm;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\ucrt\arm;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\arm;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\ucrt\arm;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\ucrt\arm;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\arm;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\ucrt\arm;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\ucrt\arm;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.10240.0\ucrt\arm;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.17763.0\ucrt\arm;C:\Program Files (x86)\Windows Kits\10\Lib\10.0.18362.0\ucrt\arm" &:# Libraries paths for ARM linking -SET "ARM_WINSDK=C:\Program Files (x86)\Windows Kits\10" &:# Microsoft Windows ARM SDK -SET "ARM_WINSDKINC=C:\Program Files (x86)\Windows Kits\10\Include\10.0.18362.0" &:# Microsoft Windows ARM SDK Include directory - -SET "ARM64_CC=" &:# Microsoft Visual C++ ARM64 compiler -SET "ARM64_AS=" &:# Microsoft ARM64 assembler -SET "ARM64_LK=" &:# Microsoft ARM64 linker -SET "ARM64_LB=" &:# Microsoft ARM64 librarian -SET "ARM64_RC=" &:# Microsoft ARM64 resource compiler -SET "ARM64_MT=" &:# Microsoft ARM64 manifest tool -SET "ARM64_PATH=;C:\Windows\System32;C:\Windows" &:# All tools paths for ARM64 compilation -SET "ARM64_VCINC=" &:# Visual C++ ARM64 compiler include dir for MsvcLibX include_next -SET "ARM64_CRTINC=" &:# Visual C++ ARM64 CRT library include dir for MsvcLibX include_next -SET "ARM64_INCPATH=" &:# Include paths for ARM64 compilation -SET "ARM64_LIBPATH=" &:# Libraries paths for ARM64 linking -SET "ARM64_WINSDK=" &:# Microsoft Windows ARM64 SDK -SET "ARM64_WINSDKINC=" &:# Microsoft Windows ARM64 SDK Include directory - -:# List of commands to run when make.bat exits -SET "POST_MAKE_ACTIONS=set "MSVCLIBX=C:\Users\admin\Desktop\temp\MyGitHub\C\MsvcLibX"" - -exit /b 0 &:# Configuration done successfully diff --git a/deps/MsvcLibX/src/configure.MsvcLibX.bat b/deps/MsvcLibX/src/configure.MsvcLibX.bat deleted file mode 100644 index 767225480a..0000000000 --- a/deps/MsvcLibX/src/configure.MsvcLibX.bat +++ /dev/null @@ -1,36 +0,0 @@ -@echo off -:#***************************************************************************** -:# * -:# Filename: configure.MsvcLibX.bat * -:# * -:# Description: Special make actions for rebuilding the MsvcLibX library * -:# * -:# Notes: * -:# * -:# History: * -:# 2015-11-06 JFL Created this script. * -:# 2016-09-27 JFL Correct the final MSVCLIBX if there's a different OUTDIR. * -:# 2016-11-03 JFL Removed the side effect creating %OUTDIR%. * -:# 2016-11-07 JFL Removed the dependency on OUTDIR. * -:# Immediately set the system environment. * -:# 2016-11-16 JFL Allow using a predefined alias for this lib base path. * -:# 2016-12-16 JFL Only use setx if requested by user, with PERSISTENT_VARS. * -:# * -:# © Copyright 2016 Hewlett Packard Enterprise Development LP * -:# Licensed under the Apache 2.0 license www.apache.org/licenses/LICENSE-2.0 * -:#***************************************************************************** - -:# Get the full pathname of the MsvcLibX library base directory -if defined MSVCLIBX if not exist "%MSVCLIBX%\include\msvclibx.h" set "MSVCLIBX=" &:# Allow overriding with another alias name, but ignore invalid overrides -if not defined MSVCLIBX for /f "delims=" %%d in ('"pushd .. & cd & popd"') do SET "MSVCLIBX=%%d" &:# Default: Use the current directory - -:# Declare the SDKs and libraries we need -%BEGIN_SDK_DEFS% -%USE_SDK% MSVCLIBX &:# Triggers the emission of a %CONFIG% record for MSVCLIBX -%END_SDK_DEFS% - -:# Set the local environment variable just before make exits, so that future commands in this CMD window have it. -%ADD_POST_MAKE_ACTION% set "MSVCLIBX=%MSVCLIBX%" - -:# Set the system environment variable, so that other CMD windows opened later on inherit it -if defined PERSISTENT_VARS setx MSVCLIBX "%MSVCLIBX%" >NUL diff --git a/deps/MsvcLibX/src/configure.bat b/deps/MsvcLibX/src/configure.bat deleted file mode 100644 index 7037eb92af..0000000000 --- a/deps/MsvcLibX/src/configure.bat +++ /dev/null @@ -1,35 +0,0 @@ -@echo off -:#***************************************************************************** -:# * -:# Filename: configure.bat * -:# * -:# Description: Detect system-specific settings and create config.*.bat * -:# * -:# Notes: Proxy script for %STINCLUDE%\configure.bat. * -:# * -:# Make any change needed in %STINCLUDE%\configure.bat. * -:# * -:# History: * -:# 2016-10-10 JFL jf.larvoire@hpe.com created this file. * -:# 2016-12-15 JFL Search for the real make.bat in [.|..|../..]\include. * -:# * -:# © Copyright 2016 Hewlett Packard Enterprise Development LP * -:# Licensed under the Apache 2.0 license www.apache.org/licenses/LICENSE-2.0 * -:#***************************************************************************** - -:# Get the full pathname of the STINCLUDE library directory -if defined STINCLUDE if not exist "%STINCLUDE%\make.bat" set "STINCLUDE=" &:# Allow overriding with another alias name, but ignore invalid overrides -for %%p in (. .. ..\..) do if not defined STINCLUDE if exist %%p\include\make.bat ( :# Default: Search it the current directory, and 2 levels above. - for /f "delims=" %%d in ('"pushd %%p\include & cd & popd"') do SET "STINCLUDE=%%d" -) -if not defined STINCLUDE ( :# Try getting the copy in the master environment - for /f "tokens=3" %%v in ('reg query "HKCU\Environment" /v STINCLUDE 2^>NUL') do set "STINCLUDE=%%v" -) - -if not exist %STINCLUDE%\make.bat ( - >&2 echo %0 Error: Cannot find SysToolsLib's global C include directory. Please define variable STINCLUDE. - exit /b 1 -) - -if [%1]==[-d] echo "%STINCLUDE%\configure.bat" %* -"%STINCLUDE%\configure.bat" %* diff --git a/deps/MsvcLibX/src/debugv.c b/deps/MsvcLibX/src/debugv.c index fb2d6fd101..5d410c1309 100644 --- a/deps/MsvcLibX/src/debugv.c +++ b/deps/MsvcLibX/src/debugv.c @@ -13,7 +13,7 @@ * Licensed under the Apache 2.0 license - www.apache.org/licenses/LICENSE-2.0 * \*****************************************************************************/ -#include "debugm.h" +#include "msvcDebugm.h" #if defined(_DEBUG) diff --git a/deps/MsvcLibX/src/dirent.c b/deps/MsvcLibX/src/dirent.c index fa664a7353..1ab2e9c002 100644 --- a/deps/MsvcLibX/src/dirent.c +++ b/deps/MsvcLibX/src/dirent.c @@ -38,7 +38,7 @@ #define _UTF8_SOURCE /* Generate the UTF-8 version of WIN32 printf & scandir */ -#include "dirent.h" /* Include our associated .h, in the same dir as this .c. Do not use <>. */ +#include "msvcDirent.h" /* Include our associated .h, in the same dir as this .c. Do not use <>. */ #ifndef _DIRENT_FOR_DOS_WINDOWS #error "This requires MsvcLibX own version of dirent.h for DOS/Windows" #endif @@ -49,9 +49,10 @@ #include #include /* MsvcLibX library extensions */ -#include /* For readlink() */ -#include /* For Filetime2String() */ -#include "debugm.h" /* Use our house debugging framework */ +#include "msvcUnistd.h" /* For readlink() */ +#include "sys/msvcStat.h" /* For Filetime2String() */ +#include "msvcDebugm.h" /* Use our house debugging framework */ +#include "msvcLimits.h" /* Use our house debugging framework */ /*****************************************************************************\ * * diff --git a/deps/MsvcLibX/src/dirname.c b/deps/MsvcLibX/src/dirname.c index df4e4d1ebc..1bdc9d9ba3 100644 --- a/deps/MsvcLibX/src/dirname.c +++ b/deps/MsvcLibX/src/dirname.c @@ -23,8 +23,8 @@ #include #include #include -#include -#include +#include "msvcLibgen.h" +#include "msvcLimits.h" #define TRUE 1 #define FALSE 0 diff --git a/deps/MsvcLibX/src/err2errno.c b/deps/MsvcLibX/src/err2errno.c index 87f9c6c688..306160f664 100644 --- a/deps/MsvcLibX/src/err2errno.c +++ b/deps/MsvcLibX/src/err2errno.c @@ -20,7 +20,7 @@ #include #include /* MsvcLibX library extensions */ -#include "debugm.h" +#include "msvcDebugm.h" #ifdef _WIN32 @@ -65,7 +65,6 @@ int _get_errno_from_oserr(unsigned long dwErr) { return errno; } #else -#pragma message("Using the default " MSVCLIBX_STRINGIZE(_get_errno_from_oserr) "()") /* Equivalent function in MSVC library. Does not know about symlink errors. */ extern int __cdecl _get_errno_from_oserr(unsigned long oserrno); #endif diff --git a/deps/MsvcLibX/src/exe b/deps/MsvcLibX/src/exe deleted file mode 100644 index 0afeaf5d6b..0000000000 --- a/deps/MsvcLibX/src/exe +++ /dev/null @@ -1,99 +0,0 @@ -#!/bin/bash -#*****************************************************************************# -# # -# Filename: exe # -# # -# Description: Build simple C/C++ programs for Unix/Linux # -# # -# Notes: Usage: ./exe PROGRAM # -# # -# Stores the executables in $OS.$PROC/[Debug/] for # -# consistency with the Windows build tools. # -# This allows sharing sources in a host system, and # -# using VMs for building the various Windows and Linux # -# versions in a set of OS-specific subdirectories. # -# # -# History: # -# 2013-12-16 JFL Added support for MinGW64. # -# 2015-12-12 JFL Help now displays the output directory name. # -# 2016-01-07 JFL Added compilation option -Wall. # -# # -# © Copyright 2016 Hewlett Packard Enterprise Development LP # -# Licensed under the Apache 2.0 license - www.apache.org/licenses/LICENSE-2.0 # -#*****************************************************************************# - -FileNoCase() # Case-independant search for a file. -{ - find . -type f | grep -i -E "./$1$" | sed s=./== -} - -# Identify the OS -OS=`uname -s` -PROC=`uname -p` -if [[ "$OS" == "OSF1" && "`uname -m`" == "alpha" ]] ; then - OS=Tru64 -fi -if [[ "$OS" == "WindowsNT" ]] ; then - OS=WIN32 -fi -OUTDIR=$OS.$PROC -if [[ "${OS:0:7}" == "MINGW32" ]] ; then # Ex: "MINGW32_NT-6.1" - OUTDIR=MINGW32 # MigGW shell if NOT case sensitive - # 2013-12-16 Actually, the 64-bits tool chain also reports MINGW32_NT-6.1 - # So distinguish the two by whether /mingw is mounted on C:\MinGW or C:\MinGW64 - if mount | grep /mingw | grep 64 > /dev/null ; then - OUTDIR=MINGW64 # MigGW shell if NOT case sensitive - fi -fi -if [[ "${OS:0:7}" == "MINGW64" ]] ; then # Ex: ? - OUTDIR=MINGW64 -fi -if [[ "${OS:0:6}" == "CYGWIN" ]] ; then # Ex: "CYGWIN_NT-6.1-WOW64" - OUTDIR=cygwin # Cygwin shell if case sensitive, so use lower case -fi - -# Command line analysis. -case "$1" in - "" | "-h" | "-?" | --help) - echo "Build simple C/C++ programs, storing the executables in $OUTDIR/" - echo "Usage: ./exe PROGRAM" - exit 0 - ;; -esac - -# Identify the source file and program to build. -PROGRAM=$1 -shift -SOURCES=`FileNoCase ${PROGRAM}.c` -CFLAGS="-std=c99 -Wall" # Force compilation in C, even if there are // comments. -if [[ "${SOURCES}" == "" ]] ; then - SOURCES=`FileNoCase ${PROGRAM}.cpp` - CFLAGS="-std=gnu++98 -lstdc++" # Force compilation in C++, even if plain C. - # -lstdc++ prevents error "undefined reference to '__gxx_personality_v0'" -fi -if [[ "${SOURCES}" == "" ]] ; then - echo "Failed to find ${PROGRAM} source." - exit 1 -fi - -# Make sure our include directories are accessible -if [[ -d "/u/JFL/SRC/Include" ]] ; then - if [[ ":$C_INCLUDE_PATH:" != *:/u/JFL/SRC/Include:* ]] ; then - if [[ "$C_INCLUDE_PATH" == "" ]] ; then - export C_INCLUDE_PATH="/u/JFL/SRC/Include" - else - export C_INCLUDE_PATH="$C_INCLUDE_PATH:/u/JFL/SRC/Include" - fi - fi -fi -echo "# C_INCLUDE_PATH=\"$C_INCLUDE_PATH\"" - -# Build it. -# gmake CC=gcc CFLAGS="$CFLAGS" SOURCES="$SOURCES" PROGRAM="$PROGRAM" OS="$OS" $* -mkdir -p $OUTDIR -echo "gcc $CFLAGS -U_DEBUG $SOURCES -o $OUTDIR/$PROGRAM" -gcc $CFLAGS -U_DEBUG $SOURCES -o $OUTDIR/$PROGRAM -mkdir -p $OUTDIR/debug -echo "gcc $CFLAGS -D_DEBUG $SOURCES -o $OUTDIR/debug/$PROGRAM" -gcc $CFLAGS -D_DEBUG $SOURCES -o $OUTDIR/debug/$PROGRAM - diff --git a/deps/MsvcLibX/src/exe.bat b/deps/MsvcLibX/src/exe.bat deleted file mode 100644 index f93d6ba399..0000000000 --- a/deps/MsvcLibX/src/exe.bat +++ /dev/null @@ -1,82 +0,0 @@ -@echo off -:#***************************************************************************** -:# * -:# Filename: exe.bat * -:# * -:# Description: Front end to make.bat, to simply build multiple targets * -:# * -:# Arguments: Use option -? to display a help screen * -:# * -:# Notes: Builds the 16-bits MS-DOS version if Visual C++ 1.52 is * -:# installed in its default location in C:\MSVC. * -:# * -:# History: * -:# 2003-03-31 JFL Adapted from previous projects * -:# 2014-03-21 JFL Builds the 16-bits MS-DOS version if Visual C++ 1.52 is * -:# installed in its default location in C:\MSVC. * -:# 2014-03-27 JFL Changed option -f to use nmake option /A. * -:# Added option -r for completeness. * -:# 2015-11-13 JFL Adapted to the new multitarget make system. * -:# * -:# © Copyright 2016 Hewlett Packard Enterprise Development LP * -:# Licensed under the Apache 2.0 license www.apache.org/licenses/LICENSE-2.0 * -:#***************************************************************************** - -setlocal enableextensions enabledelayedexpansion -goto main - -:main -set "FORCE=0" -set "ACTION=default" -set "EXEC=" -set "MAKEOPTS=" - -goto get_arg -:next_arg -shift -:get_arg -if .%1.==.-?. goto help -if .%1.==./?. goto help -if .%1.==.-a. set "ACTION=all" & goto next_arg -if .%1.==.-d. set "ACTION=debug" & goto next_arg -if .%1.==.-f. set "FORCE=1" & goto next_arg -if .%1.==.-r. set "ACTION=release" & goto next_arg -if .%1.==.-X. set "EXEC=echo" & goto next_arg -set MAKEOPTS=%2 %3 %4 %5 %6 %7 %8 %9 -if "%FORCE%"=="1" set "MAKEOPTS=%MAKEOPTS% /A" -goto %ACTION% - -:help -echo. -echo..exe program builder from a C or C++ source -echo. -echo.Usage: exe [options] program [nmake_options] -echo. -echo.Options: -echo. -echo. -? Display this help page -echo. -a Builds all release ^& debug versions (default) -echo. -d Builds all debug versions only -echo. -f Force building all program targets, irrespective of file dates -echo. -r Builds all release versions only -echo. -X Display the make command generated and exit -echo. -echo.Notes: -echo.* exe myprog ^<==^> make myprog.exe debug\myprog.exe -echo.* This builds all possible OS targets -echo.* To force rebuilding all targets, irrespective of their date, -echo. use nmake option /A. So: exe -f myprog ^<==^> exe myprog /A -goto :eof - -:release -%EXEC% make %MAKEOPTS% %1.exe -goto :eof - -:debug -%EXEC% make %MAKEOPTS% debug\%1.exe -goto :eof - -:default -:all -%EXEC% make %MAKEOPTS% %1.exe debug\%1.exe -goto :eof diff --git a/deps/MsvcLibX/src/filetime.c b/deps/MsvcLibX/src/filetime.c index e22bc2f2a9..084b5eef67 100644 --- a/deps/MsvcLibX/src/filetime.c +++ b/deps/MsvcLibX/src/filetime.c @@ -9,7 +9,7 @@ * History: * * 2014-02-26 JFL Created this module. * * 2014-03-24 JFL Renamed "statx.h" as the standard . * -* 2014-07-03 JFL Filetime2String: Output time with µs precision if possib. * +* 2014-07-03 JFL Filetime2String: Output time with �s precision if possib. * * 2016-09-13 JFL Fixed a warning. * * * * Copyright 2016 Hewlett Packard Enterprise Development LP * @@ -18,8 +18,8 @@ #define _CRT_SECURE_NO_WARNINGS 1 /* Avoid Visual C++ security warnings */ -#include /* Define time_t */ -#include +#include "msvcTime.h" /* Define time_t */ +#include "sys/msvcStat.h" #ifdef _MSDOS @@ -230,7 +230,7 @@ struct tm *LocalFileTime(const time_t *pt) { } /* Generate a string with the local file time, in the ISO 8601 date/time format */ -/* 2014-07-03 Output time with µs precision if possible */ +/* 2014-07-03 Output time with �s precision if possible */ char *Filetime2String(const FILETIME *pFT, char *pBuf, size_t nBufSize) { FILETIME lft; SYSTEMTIME sTime; @@ -246,7 +246,7 @@ char *Filetime2String(const FILETIME *pFT, char *pBuf, size_t nBufSize) { uli.LowPart = lft.dwLowDateTime; uli.HighPart = lft.dwHighDateTime; iFraction = (int)(uli.QuadPart % 10000000); /* FILETIME has 100ns resolution */ - iFraction /= 10; /* Convert 100ns resolution to 1µs resolution */ + iFraction /= 10; /* Convert 100ns resolution to 1�s resolution */ wsprintf(pBuf+19, ".%06d", iFraction); } else if (nBufSize >= 24) { wsprintf(pBuf+19, ".%03d", sTime.wMilliseconds); diff --git a/deps/MsvcLibX/src/fnmatch.c b/deps/MsvcLibX/src/fnmatch.c index 021cfc5900..d6f640f4c0 100644 --- a/deps/MsvcLibX/src/fnmatch.c +++ b/deps/MsvcLibX/src/fnmatch.c @@ -26,8 +26,8 @@ #include #include -#include "fnmatch.h" /* Include our associated .h, in the same dir as this .c. Do not use <>. */ -#include "debugm.h" +#include "msvcFnmatch.h" /* Include our associated .h, in the same dir as this .c. Do not use <>. */ +#include "msvcDebugm.h" #ifndef TRUE #define TRUE 1 diff --git a/deps/MsvcLibX/src/fstat.c b/deps/MsvcLibX/src/fstat.c index ba767a7bae..124eda8119 100644 --- a/deps/MsvcLibX/src/fstat.c +++ b/deps/MsvcLibX/src/fstat.c @@ -21,10 +21,10 @@ #include #include #include -/* MsvcLibX library extensions */ -#include -#include "debugm.h" #include +/* MsvcLibX library extensions */ +#include "sys/msvcStat.h" +#include "msvcDebugm.h" #if defined(_MSDOS) diff --git a/deps/MsvcLibX/src/fullpath.c b/deps/MsvcLibX/src/fullpath.c index 0d60b53002..1cc2bf4271 100644 --- a/deps/MsvcLibX/src/fullpath.c +++ b/deps/MsvcLibX/src/fullpath.c @@ -18,12 +18,12 @@ #define _UTF8_SOURCE /* Generate the UTF-8 version of routines */ #include -#include #include +#include "msvcLimits.h" #ifdef _WIN32 /* Automatically defined when targeting a Win32 application */ -#include /* Also includes MsvcLibX' WIN32 UTF-8 extensions */ +#include "msvcWindows.h" /* Also includes MsvcLibX' WIN32 UTF-8 extensions */ /*---------------------------------------------------------------------------*\ * * diff --git a/deps/MsvcLibX/src/getcwd.c b/deps/MsvcLibX/src/getcwd.c index 766a40f003..314c59504a 100644 --- a/deps/MsvcLibX/src/getcwd.c +++ b/deps/MsvcLibX/src/getcwd.c @@ -20,8 +20,9 @@ #include #include /* MsvcLibX library extensions */ -#include -#include "debugm.h" +#include "msvcUnistd.h" +#include "msvcDebugm.h" +#include "msvcLimits.h" #if defined(_MSDOS) diff --git a/deps/MsvcLibX/src/getopt.c b/deps/MsvcLibX/src/getopt.c index 67baf949a1..ba0b2ccb33 100644 --- a/deps/MsvcLibX/src/getopt.c +++ b/deps/MsvcLibX/src/getopt.c @@ -40,7 +40,7 @@ #include #include #include -#include "getopt.h" +#include "msvcGetopt.h" #ifndef _DIAGASSERT #ifdef NDEBUG diff --git a/deps/MsvcLibX/src/getppid.c b/deps/MsvcLibX/src/getppid.c index 17bd075916..062beff3b0 100644 --- a/deps/MsvcLibX/src/getppid.c +++ b/deps/MsvcLibX/src/getppid.c @@ -21,7 +21,7 @@ * Licensed under the Apache 2.0 license - www.apache.org/licenses/LICENSE-2.0 * \*****************************************************************************/ -#include +#include "msvcUnistd.h" #ifdef _WIN32 diff --git a/deps/MsvcLibX/src/gettimeofday.c b/deps/MsvcLibX/src/gettimeofday.c index f9150b9b7c..b485edeb9e 100644 --- a/deps/MsvcLibX/src/gettimeofday.c +++ b/deps/MsvcLibX/src/gettimeofday.c @@ -15,8 +15,8 @@ #include "msvclibx.h" -#include -#include +#include "msvcTime.h" +#include "sys/msvcTime.h" #ifdef _MSDOS /* MS-DOS only has a 1-second resolution on system time. diff --git a/deps/MsvcLibX/src/iconv.c b/deps/MsvcLibX/src/iconv.c index c76d655e25..40b6e6462d 100644 --- a/deps/MsvcLibX/src/iconv.c +++ b/deps/MsvcLibX/src/iconv.c @@ -23,8 +23,9 @@ #include #include /* MsvcLibX library extensions */ -#include "iconv.h" -#include "debugm.h" +#include "msvcIconv.h" +#include "msvcDebugm.h" +#include "msvcLimits.h" #if defined(_MSDOS) diff --git a/deps/MsvcLibX/src/lstat.c b/deps/MsvcLibX/src/lstat.c index 9a42b0f587..e107fd8706 100644 --- a/deps/MsvcLibX/src/lstat.c +++ b/deps/MsvcLibX/src/lstat.c @@ -29,13 +29,14 @@ #include #include #include +#include /* MsvcLibX library extensions */ #include "msvclibx.h" -#include -#include -#include /* For ResolveLinks() definition */ -#include "debugm.h" -#include +#include +#include "msvcDirent.h" +#include "msvcUnistd.h" /* For ResolveLinks() definition */ +#include "msvcDebugm.h" +#include "msvcLimits.h" #if defined(_MSDOS) /* Make sure it's only defined it in one of the lstatxxx versions */ diff --git a/deps/MsvcLibX/src/main.c b/deps/MsvcLibX/src/main.c index c90c111f10..f366b081ad 100644 --- a/deps/MsvcLibX/src/main.c +++ b/deps/MsvcLibX/src/main.c @@ -19,13 +19,13 @@ #define _UTF8_SOURCE #define _CRT_SECURE_NO_WARNINGS /* Avoid depreciation warnings */ -#include #include "msvclibx.h" +#include "msvcStdio.h" #ifdef _WIN32 #include -#include /* For MsvcLibX' codePage global variable */ +#include "msvcIconv.h" /* For MsvcLibX' codePage global variable */ /*---------------------------------------------------------------------------*\ * * diff --git a/deps/MsvcLibX/src/make.bat b/deps/MsvcLibX/src/make.bat deleted file mode 100644 index 7a27256122..0000000000 --- a/deps/MsvcLibX/src/make.bat +++ /dev/null @@ -1,35 +0,0 @@ -@echo off -:#***************************************************************************** -:# * -:# Filename: make.bat * -:# * -:# Description: Build DOS and Windows targets * -:# * -:# Notes: Proxy script for %STINCLUDE%\make.bat. * -:# * -:# If any change is needed, put it in %STINCLUDE%\make.bat. * -:# * -:# History: * -:# 2016-10-10 JFL jf.larvoire@hpe.com created this file. * -:# 2016-12-15 JFL Search for the real make.bat in [.|..|../..]\include. * -:# * -:# © Copyright 2016 Hewlett Packard Enterprise Development LP * -:# Licensed under the Apache 2.0 license www.apache.org/licenses/LICENSE-2.0 * -:#***************************************************************************** - -:# Get the full pathname of the STINCLUDE library directory -if defined STINCLUDE if not exist "%STINCLUDE%\make.bat" set "STINCLUDE=" &:# Allow overriding with another alias name, but ignore invalid overrides -for %%p in (. .. ..\..) do if not defined STINCLUDE if exist %%p\include\make.bat ( :# Default: Search it the current directory, and 2 levels above. - for /f "delims=" %%d in ('"pushd %%p\include & cd & popd"') do SET "STINCLUDE=%%d" -) -if not defined STINCLUDE ( :# Try getting the copy in the master environment - for /f "tokens=3" %%v in ('reg query "HKCU\Environment" /v STINCLUDE 2^>NUL') do set "STINCLUDE=%%v" -) - -if not exist %STINCLUDE%\make.bat ( - >&2 echo %0 Error: Cannot find SysToolsLib's global C include directory. Please define variable STINCLUDE. - exit /b 1 -) - -if [%1]==[-d] echo "%STINCLUDE%\make.bat" %* -"%STINCLUDE%\make.bat" %* diff --git a/deps/MsvcLibX/src/mb2wpath.c b/deps/MsvcLibX/src/mb2wpath.c index db6897a3d8..097d3e7367 100644 --- a/deps/MsvcLibX/src/mb2wpath.c +++ b/deps/MsvcLibX/src/mb2wpath.c @@ -17,7 +17,7 @@ #define _UTF8_SOURCE /* Generate the UTF-8 version of printf routines */ #include "msvclibx.h" -#include "debugm.h" +#include "msvcDebugm.h" #if defined(_WIN32) diff --git a/deps/MsvcLibX/src/mkdir.c b/deps/MsvcLibX/src/mkdir.c index 9d23c14f64..24e98a52ba 100644 --- a/deps/MsvcLibX/src/mkdir.c +++ b/deps/MsvcLibX/src/mkdir.c @@ -22,8 +22,9 @@ #include /* For _mkdir() */ #include /* MsvcLibX library extensions */ -#include +#include #include "msvclibx.h" +#include "msvcLimits.h" #ifdef _WIN32 diff --git a/deps/MsvcLibX/src/mkdtemp.c b/deps/MsvcLibX/src/mkdtemp.c index 99bd5197ce..86bfbf25cf 100644 --- a/deps/MsvcLibX/src/mkdtemp.c +++ b/deps/MsvcLibX/src/mkdtemp.c @@ -13,11 +13,11 @@ * Licensed under the Apache 2.0 license - www.apache.org/licenses/LICENSE-2.0 * \*****************************************************************************/ -#include #include #include #include #include +#include "msvcUnistd.h" char *mkdtemp(char *pszName) { char *pszXXX, *pc; diff --git a/deps/MsvcLibX/src/mkstemp.c b/deps/MsvcLibX/src/mkstemp.c index 573f601bf4..f587cff48d 100644 --- a/deps/MsvcLibX/src/mkstemp.c +++ b/deps/MsvcLibX/src/mkstemp.c @@ -15,7 +15,7 @@ #define _CRT_SECURE_NO_WARNINGS 1 /* Avoid Visual C++ security warnings */ -#include +#include "msvcUnistd.h" #include #include #include diff --git a/deps/MsvcLibX/src/open.c b/deps/MsvcLibX/src/open.c index 4e33390e2a..dd70409410 100644 --- a/deps/MsvcLibX/src/open.c +++ b/deps/MsvcLibX/src/open.c @@ -19,8 +19,9 @@ #include #include "msvclibx.h" -#include "fcntl.h" -#include "debugm.h" +#include "msvcFcntl.h" +#include "msvcDebugm.h" +#include "msvcLimits.h" #ifdef _WIN32 diff --git a/deps/MsvcLibX/src/readlink.c b/deps/MsvcLibX/src/readlink.c index 5e691ff86f..4abc91e8e2 100644 --- a/deps/MsvcLibX/src/readlink.c +++ b/deps/MsvcLibX/src/readlink.c @@ -27,16 +27,17 @@ #define _UTF8_SOURCE /* Generate the UTF-8 version of routines */ -#include +#include "msvcUnistd.h" #pragma comment(lib, "Mpr.lib") #include -#include "debugm.h" +#include "msvcDebugm.h" +#include "msvcLimits.h" #ifdef _WIN32 #include -#include "reparsept.h" +#include "msvcReparsept.h" /* Get the Reparse Point Tag for a mount point - Wide char version */ /* See http://msdn.microsoft.com/en-us/library/windows/desktop/aa365511(v=vs.85).aspx */ diff --git a/deps/MsvcLibX/src/realpath.c b/deps/MsvcLibX/src/realpath.c index 0d99ff631a..5fbcf773a2 100644 --- a/deps/MsvcLibX/src/realpath.c +++ b/deps/MsvcLibX/src/realpath.c @@ -31,13 +31,15 @@ #define _UTF8_SOURCE /* Generate the UTF-8 version of routines */ -#include #include #include #include #include /* For _getdcwd() */ #include /* For toupper() */ -#include "debugm.h" +#include "msvcDebugm.h" +#include "msvcLimits.h" +#include "msvcUnistd.h" +#include "msvcWindows.h" #define TRUE 1 #define FALSE 0 diff --git a/deps/MsvcLibX/src/spawn.c b/deps/MsvcLibX/src/spawn.c index 08b81449c1..1dede9b712 100644 --- a/deps/MsvcLibX/src/spawn.c +++ b/deps/MsvcLibX/src/spawn.c @@ -19,8 +19,9 @@ /* Microsoft C libraries include files */ #include /* MsvcLibX library extensions */ -#include "debugm.h" +#include "msvcDebugm.h" #include "msvclibx.h" +#include "msvcLimits.h" #ifdef _WIN32 diff --git a/deps/MsvcLibX/src/src2objs.bat b/deps/MsvcLibX/src/src2objs.bat deleted file mode 100644 index b840e308c4..0000000000 --- a/deps/MsvcLibX/src/src2objs.bat +++ /dev/null @@ -1,125 +0,0 @@ -@echo off -:****************************************************************************** -:* * -:* Filename: src2objs.bat * -:* * -:* Description: Generate object files names from source files names * -:* * -:* Notes: * -:* * -:* History: * -:* 2010-04-07 JFL Created this batch. * -:* * -:# © Copyright 2016 Hewlett Packard Enterprise Development LP * -:# Licensed under the Apache 2.0 license www.apache.org/licenses/LICENSE-2.0 * -:****************************************************************************** - -setlocal 2>NUL -set ARG0=%0 - -:# Mechanism for calling subroutines. Done by {call %0 _call_ label [arguments]}. -if .%1.==._call_. shift /2 & goto %2 -set CALL=call %0 _call_ -set RETURN=goto end -:# Silent return. Used for routines silently called via call :label. -set _RETURN=goto _end -set PUTVARS=call :putvars - -:# Set global defaults -setlocal -set OUTFILE=obj\objects.mak -set OUTPATH=obj -set NO_EXEC=0 -goto get_args - -:help -echo Generate object files names from source files names -echo. -echo Usage: %ARG0% [options] source ... -echo. -echo Options: -echo -?^|-h This help -echo -o {pathname} Output file pathname. Default: %OUTFILE% -echo -X Display object files names, but do not create the output file -goto end - -:get_args -if .%1.==.. goto help -if .%1.==.-?. goto help -if .%1.==./?. goto help -if %1==-o shift & goto set_out -if %1==-X shift & goto no_exec -goto go - -:set_out -set OUTFILE=%1 -:# Split the path. Uses a fake drive @ to prevent prepending the current path on an existing drive. -for %%F in (@:"%OUTFILE%") do ( - set "OUTPATH=%%~dpF" -) -:# Remove the head "@:\ and tail \ to the path -set "OUTPATH=%OUTPATH:~4,-1%" -shift -goto get_args - -:no_exec -set NO_EXEC=1 -goto get_args - -:# Check prerequisites -:check -verify other 2>nul -setlocal enableextensions -if errorlevel 1 ( - echo>&2 Error: Unable to enable command extensions. - exit /b 1 -) -set VAR=before -if "%VAR%" == "before" ( - set VAR=after - if not "!VAR!" == "after" ( - echo>&2 Error: Delayed environment variable expansion must be enabled. - echo>&2 Please restart your cmd.exe shell with the /V option, - echo>&2 or set HKLM\Software\Microsoft\Command Processor\DelayedExpansion=1 - exit /b 1 - ) -) -%_RETURN% - -:go -%CALL% check -if errorlevel 1 exit /b 1 -set OBJECTS= -:next -if .%1.==.. goto done -for %%s in (%1) do ( - set EXT=%%~xs - set OBJ= - if .!EXT!.==..c. set OBJ=obj - if .!EXT!.==..C. set OBJ=obj - if .!EXT!.==..cpp. set OBJ=obj - if .!EXT!.==..CPP. set OBJ=obj - if .!EXT!.==..asm. set OBJ=obj - if .!EXT!.==..ASM. set OBJ=obj - if .!EXT!.==..rc. set OBJ=res - if .!EXT!.==..RC. set OBJ=res - if .!OBJ!.==.. ( - echo>&2 Error: Unsupported source type: !EXT! - echo>&2 Please add a conversion rule in %ARG0% - ) else ( - if .!OBJECTS!.==.. ( - set OBJECTS=%OUTPATH%\%%~ns.!OBJ! - ) else ( - set OBJECTS=!OBJECTS! %OUTPATH%\%%~ns.!OBJ! - ) - ) -) -shift -goto next -:done -echo OBJECTS=%OBJECTS% -if %NO_EXEC%==0 echo>%OUTFILE% OBJECTS=%OBJECTS% - -:end -:_end - diff --git a/deps/MsvcLibX/src/symlink.c b/deps/MsvcLibX/src/symlink.c index 0784fc9f41..ce2bbe58a2 100644 --- a/deps/MsvcLibX/src/symlink.c +++ b/deps/MsvcLibX/src/symlink.c @@ -27,17 +27,18 @@ #define _UTF8_SOURCE /* Generate the UTF-8 version of routines */ -#include +#include "msvcUnistd.h" #pragma comment(lib, "Mpr.lib") #include -#include "debugm.h" +#include "msvcDebugm.h" +#include "msvcLimits.h" #ifdef _WIN32 #include -#include "reparsept.h" +#include "msvcReparsept.h" /*---------------------------------------------------------------------------*\ * * diff --git a/deps/MsvcLibX/src/uname.c b/deps/MsvcLibX/src/uname.c index 81a4c3c49a..afa2ef0d5e 100644 --- a/deps/MsvcLibX/src/uname.c +++ b/deps/MsvcLibX/src/uname.c @@ -21,7 +21,7 @@ * Licensed under the Apache 2.0 license - www.apache.org/licenses/LICENSE-2.0 * \*****************************************************************************/ -#include "sys/utsname.h" +#include "sys/msvcTsname.h" #include /* For itoa() */ static char major[4] = {0}; diff --git a/deps/MsvcLibX/src/utime.c b/deps/MsvcLibX/src/utime.c index 0a1a323e0b..cbddfecb01 100644 --- a/deps/MsvcLibX/src/utime.c +++ b/deps/MsvcLibX/src/utime.c @@ -22,10 +22,10 @@ #define _CRT_SECURE_NO_WARNINGS 1 /* Avoid Visual C++ security warnings */ #include -#include /* Must be included before any direct or indirect inclusion */ -#include - -#include "debugm.h" +#include "sys/msvcTime.h" /* Must be included before any direct or indirect inclusion */ +#include "msvcUtime.h" +#include "msvcDebugm.h" +#include "msvcLimits.h" #if defined(_DEBUG) #include @@ -35,7 +35,7 @@ #include #include /* For MSVC's _get_osfhandle() */ -#include /* For MsvcLibX's ResolveLinks() */ +#include "msvcUnistd.h" /* For MsvcLibX's ResolveLinks() */ /* Convert a Windows FILETIME to a Unix time_t. A FILETIME is the number of 100-nanosecond intervals since January 1, 1601. diff --git a/deps/MsvcLibX/src/utimes.c b/deps/MsvcLibX/src/utimes.c index 7638b932b4..9326bb5f74 100644 --- a/deps/MsvcLibX/src/utimes.c +++ b/deps/MsvcLibX/src/utimes.c @@ -23,10 +23,10 @@ #define _CRT_SECURE_NO_WARNINGS 1 /* Avoid Visual C++ security warnings */ #include -#include /* Must be included before any direct or indirect inclusion */ -#include - -#include "debugm.h" +#include "sys/msvcTime.h" /* Must be included before any direct or indirect inclusion */ +#include "sys/msvcStat.h" +#include "msvcDebugm.h" +#include "msvcLimits.h" #if defined(_DEBUG) #include @@ -36,7 +36,7 @@ #include #include /* For MSVC's _get_osfhandle() */ -#include /* For MsvcLibX's ResolveLinks() */ +#include "msvcUnistd.h" /* For MsvcLibX's ResolveLinks() */ DEBUG_CODE( int Timeval2String(char *buf, size_t bufsize, const struct timeval *tvp) { diff --git a/deps/MsvcLibX/src/xfreopen.c b/deps/MsvcLibX/src/xfreopen.c index 772e81f34f..80311bbac6 100644 --- a/deps/MsvcLibX/src/xfreopen.c +++ b/deps/MsvcLibX/src/xfreopen.c @@ -18,7 +18,7 @@ #include #include #include -#include "xfreopen.h" +#include "msvcXfreopen.h" FILE *xfreopen(const char *filename, const char *mode, FILE *stream) { int iMode = 0; diff --git a/deps/pthread/pthread.h b/deps/pthread/pthread.h index e08bf22abc..87673398d0 100644 --- a/deps/pthread/pthread.h +++ b/deps/pthread/pthread.h @@ -228,6 +228,8 @@ typedef unsigned long ULONG_PTR; #include "config.h" #endif /* HAVE_PTW32_CONFIG_H */ +#include "msvcTime.h" + #if !defined(NEED_FTIME) #include #else /* NEED_FTIME */ diff --git a/deps/pthread/sched.h b/deps/pthread/sched.h index 8c1096d887..d9bcc2d27f 100644 --- a/deps/pthread/sched.h +++ b/deps/pthread/sched.h @@ -100,18 +100,19 @@ #endif #endif /* PTW32_SCHED_LEVEL >= PTW32_SCHED_LEVEL_MAX */ -#if (defined(__MINGW64__) || defined(__MINGW32__)) || defined(_UWIN) -# if PTW32_SCHED_LEVEL >= PTW32_SCHED_LEVEL_MAX -/* For pid_t */ -# include -/* Required by Unix 98 */ -# include -# else - typedef int pid_t; -# endif -#else - typedef int pid_t; -#endif +// #if (defined(__MINGW64__) || defined(__MINGW32__)) || defined(_UWIN) +// # if PTW32_SCHED_LEVEL >= PTW32_SCHED_LEVEL_MAX +// /* For pid_t */ +// # include +// /* Required by Unix 98 */ +// # include +// # else +// typedef int pid_t; +// # endif +// #else +// typedef int pid_t; +// #endif +#include /* Thread scheduling policies */ diff --git a/deps/pthread/semaphore.h b/deps/pthread/semaphore.h index ecc29fc33d..9714365b61 100644 --- a/deps/pthread/semaphore.h +++ b/deps/pthread/semaphore.h @@ -99,6 +99,8 @@ #endif #endif /* PTW32_SEMAPHORE_LEVEL >= PTW32_SEMAPHORE_LEVEL_MAX */ +#include "sys/msvcTypes.h" + #define _POSIX_SEMAPHORES #if defined(__cplusplus) diff --git a/src/os/inc/osFile.h b/src/os/inc/osFile.h index e99c64c2e0..dc19c8177c 100644 --- a/src/os/inc/osFile.h +++ b/src/os/inc/osFile.h @@ -56,18 +56,6 @@ int32_t taosFileRename(char *fullPath, char *suffix, char delimiter, char **dstP // TAOS_OS_FUNC_FILE_GETTMPFILEPATH void taosGetTmpfilePath(const char *fileNamePrefix, char *dstPath); -#ifdef TAOS_OS_FUNC_FILE_ISDIR - #define S_ISDIR(m) (((m) & 0170000) == (0040000)) -#endif - -#ifdef TAOS_OS_FUNC_FILE_ISREG - #define S_ISREG(m) !(S_ISDIR(m)) -#endif - -#ifdef TAOS_OS_FUNC_FILE_ISLNK - #define S_ISLNK(m) 0 -#endif - #ifndef TAOS_OS_FUNC_FILE_FTRUNCATE #define taosFtruncate ftruncate #endif diff --git a/src/os/inc/osWindows.h b/src/os/inc/osWindows.h index bdfb4acb5b..778474db0f 100644 --- a/src/os/inc/osWindows.h +++ b/src/os/inc/osWindows.h @@ -18,9 +18,7 @@ #include #include -#include #include -#include #include #include #include @@ -35,15 +33,17 @@ #include #include #include -#include -#include -#include -#include #include "winsock2.h" #include #include #include -#include +#include +#include +#include "msvcProcess.h" +#include "msvcDirect.h" +#include "msvcFcntl.h" +#include "sys/msvcStat.h" +#include "sys/msvcTypes.h" #ifdef __cplusplus extern "C" { @@ -126,7 +126,6 @@ char *stpncpy (char *dest, const char *src, size_t n); typedef int (*__compar_fn_t)(const void *, const void *); #define ssize_t int #define bzero(ptr, size) memset((ptr), 0, (size)) -#define mkdir(pathname, mode) _mkdir(pathname) #define strcasecmp _stricmp #define strncasecmp _strnicmp #define wcsncasecmp _wcsnicmp @@ -138,7 +137,6 @@ typedef int (*__compar_fn_t)(const void *, const void *); #define twrite write #define getpid _getpid -int gettimeofday(struct timeval *tv, struct timezone *tz); struct tm *localtime_r(const time_t *timep, struct tm *result); char * strptime(const char *buf, const char *fmt, struct tm *tm); char * strsep(char **stringp, const char *delim); @@ -147,11 +145,6 @@ int flock(int fd, int option); int fsync(int filedes); char * strndup(const char *s, size_t n); -// for function open in stat.h -#define S_IRWXU _S_IREAD -#define S_IRWXG _S_IWRITE -#define S_IRWXO _S_IWRITE - // for access function in io.h #define F_OK 00 //Existence only #define W_OK 02 //Write - only diff --git a/src/os/src/windows/w64Time.c b/src/os/src/windows/w64Time.c index 1484b13843..ce7eada6a0 100644 --- a/src/os/src/windows/w64Time.c +++ b/src/os/src/windows/w64Time.c @@ -16,18 +16,6 @@ #include #include -int gettimeofday(struct timeval *tv, struct timezone *tz) { - time_t t; - t = time(NULL); - SYSTEMTIME st; - GetLocalTime(&st); - - tv->tv_sec = (long)t; - tv->tv_usec = st.wMilliseconds * 1000; - - return 0; -} - struct tm *localtime_r(const time_t *timep, struct tm *result) { localtime_s(result, timep); return result; diff --git a/src/tsdb/src/tsdbFile.c b/src/tsdb/src/tsdbFile.c index 4cb5f76414..b73db35bff 100644 --- a/src/tsdb/src/tsdbFile.c +++ b/src/tsdb/src/tsdbFile.c @@ -18,7 +18,6 @@ #include "tchecksum.h" #include "tsdbMain.h" #include "tutil.h" -#include "dirent.h" #define TAOS_RANDOM_FILE_FAIL_TEST @@ -203,7 +202,7 @@ void tsdbSeekFileGroupIter(SFileGroupIter *pIter, int fid) { pIter->index = -1; pIter->fileId = -1; } else { - pIter->index = POINTER_DISTANCE(ptr, pFileH->pFGroup) / sizeof(SFileGroup); + pIter->index = (int)(POINTER_DISTANCE(ptr, pFileH->pFGroup) / sizeof(SFileGroup)); pIter->fileId = ((SFileGroup *)ptr)->fileId; } } -- GitLab