@@ -63,18 +63,23 @@ impl Step for Gcc {
6363 }
6464
6565 build_gcc ( & metadata, builder, target) ;
66-
67- let lib_alias = metadata. install_dir . join ( "lib/libgccjit.so.0" ) ;
68- if !lib_alias. exists ( ) {
69- t ! ( builder. symlink_file( & libgccjit_path, lib_alias) ) ;
70- }
66+ create_lib_alias ( builder, & libgccjit_path) ;
7167
7268 t ! ( metadata. stamp. write( ) ) ;
7369
7470 GccOutput { libgccjit : libgccjit_path }
7571 }
7672}
7773
74+ /// Creates a libgccjit.so.0 alias next to libgccjit.so if it does not
75+ /// already exist
76+ fn create_lib_alias ( builder : & Builder < ' _ > , libgccjit : & PathBuf ) {
77+ let lib_alias = libgccjit. parent ( ) . unwrap ( ) . join ( "libgccjit.so.0" ) ;
78+ if !lib_alias. exists ( ) {
79+ t ! ( builder. symlink_file( libgccjit, lib_alias) ) ;
80+ }
81+ }
82+
7883pub struct Meta {
7984 stamp : BuildStamp ,
8085 out_dir : PathBuf ,
@@ -109,8 +114,11 @@ fn try_download_gcc(builder: &Builder<'_>, target: TargetSelection) -> Option<Pa
109114 builder. config . download_ci_gcc ( & sha, & root) ;
110115 t ! ( gcc_stamp. write( ) ) ;
111116 }
117+
112118 // FIXME: put libgccjit.so into a lib directory in dist::Gcc
113- Some ( root. join ( "libgccjit.so" ) )
119+ let libgccjit = root. join ( "libgccjit.so" ) ;
120+ create_lib_alias ( builder, & libgccjit) ;
121+ Some ( libgccjit)
114122}
115123
116124#[ cfg( test) ]
@@ -210,7 +218,7 @@ fn build_gcc(metadata: &Meta, builder: &Builder<'_>, target: TargetSelection) {
210218 . env ( "CXXFLAGS" , "-Wno-everything -g -O2" )
211219 . env ( "CFLAGS" , "-Wno-everything -g -O2" )
212220 . arg ( "--enable-host-shared" )
213- . arg ( "--enable-languages=jit" )
221+ . arg ( "--enable-languages=c, jit,lto " )
214222 . arg ( "--enable-checking=release" )
215223 . arg ( "--disable-bootstrap" )
216224 . arg ( "--disable-multilib" )
0 commit comments