o
    4ˆYhŒ  ã                   @   sz   d dl Z d dlZ d dlZd dlZd dlZdd„ Zdd„ Ze j e j 	e  
¡ e j¡¡fdd„Zedkr;eejd	 ƒ dS dS )
é    Nc                 C   s>   t j | ¡rt  | ¡}t  | |jtjB tjB tjB ¡ d S d S )N)	ÚosÚpathÚexistsÚstatÚchmodÚst_modeÚS_IREADÚS_IRGRPÚS_IROTH)ÚfilenameÚst© r   ú0/home/birch/BIRCH/install-scripts/setplatform.pyÚchmod_ar   s   
ÿ
ÿþr   c                 C   sd   t  | | d ¡ t| dƒ}t| d dƒ}|D ]}||v r"| ||¡}| |¡ q| ¡  | ¡  d S )Nú~ÚwÚr)ÚshutilÚmoveÚopenÚreplaceÚwriteÚclose)ÚfileÚ	searchExpÚ
replaceExpÚdestinationÚsourceÚliner   r   r   Ú
replaceAll   s   
r   c                 C   s¦   t j | ddd¡}t j | ddd¡}ttjƒdk rtdƒ tjd }|dv rDt|d| d	| ƒ t|ƒ t|d
| d| ƒ t|ƒ d S td| d ƒ t 	d¡ d S )NÚlocalÚadminzplatform.sourcezplatform.profile.sourceé   z5setplatform.sh: ERROR! YOU NEED TO SPECIFY A PLAFORM!)zsolaris-sparczsolaris-amd64zlinux-arm64zlinux-x86_64z
osx-x86_64zmacos-arm64zwin7-64z#setenv BIRCH_PLATFORM zsetenv BIRCH_PLATFORM z#BIRCH_PLATFORM=zBIRCH_PLATFORM=z"setplatform.sh: invalid platform (ú))
r   r   ÚjoinÚlenÚsysÚargvÚprintr   r   Úexit)ÚBASEDIRÚPLAT_SRCÚPROF_SRCÚplatformr   r   r   Úsetplatform   s   
r.   Ú__main__r"   )r   Úos.pathr   r&   r   r   r   r   Úabspathr$   ÚgetcwdÚpardirr.   Ú__name__r'   r   r   r   r   Ú<module>   s   (	$ÿ