@echo off rem tools/incdir.bat rem rem SPDX-License-Identifier: Apache-2.0 rem rem Licensed to the Apache Software Foundation (ASF) under one or more rem contributor license agreements. See the NOTICE file distributed with rem this work for additional information regarding copyright ownership. The rem ASF licenses this file to you under the Apache License, Version 2.0 (the rem "License"); you may not use this file except in compliance with the rem License. You may obtain a copy of the License at rem rem http://www.apache.org/licenses/LICENSE-2.0 rem rem Unless required by applicable law or agreed to in writing, software rem distributed under the License is distributed on an "AS IS" BASIS, WITHOUT rem WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the rem License for the specific language governing permissions and limitations rem under the License. rem rem Handle command line options set progname=%0 set pathtype=user :ArgLoop rem [-d] [-w] [-s] [-h]. [-w] and [-d] Ignored for compatibility with incdir.sh if "%1"=="-d" goto :NextArg if "%1"=="-w" goto :NextArg if "%1"=="-h" goto :Usage if "%1"=="-s" ( set pathtype=system goto :NextArg ) goto :CheckCompiler :NextArg shift goto :ArgLoop :CheckCompiler if "%1"=="" ( echo ERROR: Missing compiler name goto :Usage ) set ccpath=%1 shift set compiler= for /F %%i in ("%ccpath%") do set compiler=%%~ni if "%1"=="" ( echo ERROR: Missing directory paths goto :Usage ) rem Check for some well known, non-GCC Windows native tools that require rem a special output format as well as special paths :GetFormat set fmt=std if "%compiler%"=="ez8cc" goto :SetZdsFormt if "%compiler%"=="zneocc" goto :SetZdsFormt if "%compiler%"=="ez80cc" goto :SetZdsFormt goto :GeneratePaths :SetZdsFormt set fmt=zds rem Generate the compiler include path directives. :GeneratePaths set response= :DirLoop if "%1" == "" ( echo %response% goto :End ) if "%fmt%"=="zds" goto :GenerateZdsPath if "%response%"=="" goto :FirstStdPath if "%pathtype%"=="system" goto :NextStdSystemPath set response=%response% -I "%1" goto :EndOfDirLoop :NextStdSystemPath set response=%response% -isystem "%1" goto :EndOfDirLoop :FirstStdPath if "%pathtype%"=="system" goto :FirstStdSystemPath set response=-I "%1" goto :EndOfDirLoop :FirstStdSystemPath set response=-isystem "%1" goto :EndOfDirLoop :GenerateZdsPath if "%response%"=="" goto :FirstZdsPath set response=%response%;%1 goto :EndOfDirLoop :FirstZdsPath if "%pathtype%"=="system" goto :FirstZdsSystemPath set response=-usrinc:%1 goto :EndOfDirLoop :FirstZdsSystemPath set response=-stdinc:%1 :EndOfDirLoop shift goto :DirLoop :Usage echo %progname% is a tool for flexible generation of include path arguments for a echo variety of different compilers in a variety of compilation environments echo USAGE: %progname% [-w] [-d] [-s] [-h] ^ ^ [^ [^ ...]] echo Where: echo ^ echo The full path to your compiler echo ^ [^ [^ ...]] echo A list of include directories echo -w, -d echo For compatibility with incdir.sh (ignored) echo -s echo Generate standard, system header file paths instead of normal user echo header file paths. echo -h echo Shows this help text and exits. :End