# Copyright: 2022-2023 Paul Obermeier (obermeier@tcl3d.org) # Distributed under BSD license. # # BuildType: MSys / gcc proc Init_cfitsio { libName libVersion } { SetScriptAuthor $libName "Paul Obermeier" "obermeier@tcl3d.org" SetLibHomepage $libName "https://heasarc.gsfc.nasa.gov/fitsio/" SetLibDependencies $libName "None" SetPlatforms $libName "All" SetWinCompilers $libName "gcc" } proc Build_cfitsio { libName libVersion buildDir instDir devDir distDir } { set buildDirMSys [MSysPath $buildDir] set instDirMSys [MSysPath $instDir] if { [UseStage "Extract" $libName] } { ExtractLibrary $libName $buildDir } if { [UseStage "Configure" $libName] } { set cmd "" if { [IsDebugBuild] } { append cmd "CFLAGS='-g -Dg77Fortran -fPIC' " } else { append cmd "CFLAGS='-O2 -Dg77Fortran -fPIC' " } append cmd "$buildDirMSys/configure " append cmd "--prefix=$instDirMSys " append cmd "--disable-curl " MSysRun $libName "${libName}_Configure" $buildDir "$cmd" } if { [UseStage "Compile" $libName] } { MSysBuild $libName $buildDir "install" } if { [UseStage "Distribute" $libName] } { StripLibraries "$instDir" if { [IsWindows] } { MultiFileCopy "$instDir/lib" "$devDir/lib" "*.a" MultiFileCopy "$instDir/lib" "$distDir/lib" "*.a" } else { LibFileCopy "$instDir" "$devDir" "lib*" LibFileCopy "$instDir" "$distDir" "*.dylib *.so*" } foreach libDir { lib lib64 } { set pcFile [file join $instDir $libDir "pkgconfig" "${libName}.pc"] if { [file exists $pcFile] } { SingleFileCopy "$pcFile" "$devDir/bin" } } MultiFileCopy "$instDir/include" "$devDir/include/${libName}" "*" true } return true }