123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145 |
- @echo off
- rem tools/incdir.sh
- 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] ^<compiler-path^> ^<dir1^> [^<dir2^> [^<dir3^> ...]]
- echo Where:
- echo ^<compiler-path^>
- echo The full path to your compiler
- echo ^<dir1^> [^<dir2^> [^<dir3^> ...]]
- 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
|