File: //proc/self/root/lib/python3.6/site-packages/gyp/generator/__pycache__/ninja.cpython-36.opt-1.pyc
3
?9�^8� � @ s� d dl mZ d dlZd dlZd dlZd dlZd dlZd dlZd dl Z d dl
Z
d dlZd dlZd dl
Z
d dlZ
d dlmZ d dlZ
d dljZd dlZ
yd dlmZ W n ek
r� d dlmZ Y nX d dlmZ d dljZdddddd d
ddd
ddddd�Zg ag ag adae
j j!� Z"dd� Z#dd� Z$dd� Z%dd� Z&G dd� de'�Z(G dd� de'�Z)dd � Z*d!d"� Z+d#d$� Z,d8d&d'�Z-d(d)� Z.d*d+� Z/d,d-� Z0d.d/� Z1d0d1� Z2d2d3� Z3d4d5� Z4d6d7� Z5dS )9� )�print_functionN)�
OrderedSet)�StringIO)�GetEnvironFallback� �libz.az$!INTERMEDIATE_DIRz$!PRODUCT_DIR/genz
$!PRODUCT_DIRz$|CONFIGURATION_NAMEz${root}z
${dirname}z ${source}z${ext}z${name})�EXECUTABLE_PREFIX�EXECUTABLE_SUFFIX�STATIC_LIB_PREFIX�STATIC_LIB_SUFFIX�SHARED_LIB_PREFIX�INTERMEDIATE_DIRZSHARED_INTERMEDIATE_DIR�PRODUCT_DIR�CONFIGURATION_NAME�RULE_INPUT_ROOT�RULE_INPUT_DIRNAME�RULE_INPUT_PATH�RULE_INPUT_EXT�RULE_INPUT_NAMEc C s | j |�r| t|�d � S | S )N)�
startswith�len)�arg�prefix� r �/usr/lib/python3.6/ninja.py�StripPrefixH s
r c C s8 t jd| �r| S |dkr$tjj| �S d| jdd� d S )zTQuote a string such that it will be interpreted as a single argument
by the shell.z^[a-zA-Z0-9_=.\\/-]+$�win�'z"'"z'"'"z'"'"')�re�match�gyp�msvs_emulationZQuoteForRspFile�replace)r �flavorr r r �QuoteShellArgumentN s
r$ c C s0 |dkr| j ddtd� �} ttjd| �|�S )zYTakes a preprocessor define and returns a -D parameter that's ninja- and
shell-escaped.r �#z\%03oz-D)r"