a :êdgã@sldZddlZddlZddlmZmZddlmZddlm Z Gdd„dej ƒZ dd „Z e d krhee ƒƒdS) z"Tests for distutils.unixccompiler.éN)ÚEnvironmentVarGuardÚ run_unittest)Ú sysconfig)Ú UnixCCompilerc@sjeZdZdd„Zdd„Ze ejdkd¡dd„ƒZ e  ejd kd ¡d d „ƒZ e  ejd kd ¡d d„ƒZ dS)ÚUnixCCompilerTestCasecCs,tj|_tj|_Gdd„dtƒ}|ƒ|_dS)Nc@seZdZdd„ZdS)z4UnixCCompilerTestCase.setUp..CompilerWrappercSs | d¡S)Nz/foo)Zruntime_library_dir_option©Úself©r ú>/usr/local/lib/python3.9/distutils/tests/test_unixccompiler.pyÚ rpath_foosz>UnixCCompilerTestCase.setUp..CompilerWrapper.rpath_fooN)Ú__name__Ú __module__Ú __qualname__r r r r r ÚCompilerWrappersr)ÚsysÚplatformÚ_backup_platformrÚget_config_varÚ_backup_get_config_varrÚcc)rrr r r ÚsetUp szUnixCCompilerTestCase.setUpcCs|jt_|jt_dS©N)rrrrrrrr r r ÚtearDownszUnixCCompilerTestCase.tearDownÚwin32zcan't test on WindowscCsXdt_| |j ¡d¡dt_tj}dd„}|t_| |j ¡ddg¡dd„}|t_| |j ¡ddg¡d d„}|t_| |j ¡ddg¡|t_d t_d d„}|t_| |j ¡d ¡d t_d d„}|t_| |j ¡d¡d t_dd„}|t_| |j ¡d ¡d t_dd„}|t_| |j ¡d¡d t_dd„}|t_| |j ¡d¡dS)NÚdarwinz-L/foozhp-uxcSsdS)NZxxxr ©Úvr r r Úgcv%sz=UnixCCompilerTestCase.test_runtime_libdir_option..gcvz+scSsdS)NÚgccr rr r r r*sz-Wl,+scSsdS)Nzg++r rr r r r/sZbarcSs|dkr dS|dkrdSdS)NÚCCrÚGNULDÚyesr rr r r r8sz-Wl,--enable-new-dtags,-R/foocSs|dkr dS|dkrdSdS)Nrrr Únor rr r r rBsz -Wl,-R/foocSs|dkr dS|dkrdSdS)Nrzx86_64-pc-linux-gnu-gcc-4.4.2r r!r rr r r rMscSs|dkr dS|dkrdSdS)Nrrr r!r rr r r rWsz-R/foocSs|dkr dS|dkrdSdS)Nrrr r"r rr r r ras)rrÚ assertEqualrr rr)rZold_gcvrr r r Útest_runtime_libdir_optionsDz0UnixCCompilerTestCase.test_runtime_libdir_optionrztest only relevant for OS XcCsfdd„}|t_tƒ*}d|d<|d=t |j¡Wdƒn1sD0Y| |jjdd¡dS)NcSs|dkr dSdS©NÚLDSHAREDz*gcc-4.2 -bundle -undefined dynamic_lookup zgcc-4.2r rr r r rmszAUnixCCompilerTestCase.test_osx_cc_overrides_ldshared..gcvÚmy_ccrr&r©rrrZcustomize_compilerrr#Z linker_so©rrÚenvr r r Útest_osx_cc_overrides_ldsharedis*z4UnixCCompilerTestCase.test_osx_cc_overrides_ldsharedcCshdd„}|t_tƒ,}d|d<d|d<t |j¡Wdƒn1sF0Y| |jjdd¡dS) NcSs|dkr dSdSr%r rr r r r}sz=UnixCCompilerTestCase.test_osx_explicit_ldshared..gcvr'rzmy_ld -bundle -dynamicr&rZmy_ldr(r)r r r Útest_osx_explicit_ldsharedxs*z0UnixCCompilerTestCase.test_osx_explicit_ldsharedN) r r rrrÚunittestZskipIfrrr$Z skipUnlessr+r,r r r r r s Q rcCs t t¡Sr)r-Z makeSuiterr r r r Ú test_suite‰sr.Ú__main__)Ú__doc__rr-Z test.supportrrZ distutilsrZdistutils.unixccompilerrZTestCaserr.r r r r r Ús