diff options
Diffstat (limited to 'dev-ada/gprbuild')
-rw-r--r-- | dev-ada/gprbuild/files/gprbuild-2018-gentoo.patch | 167 | ||||
-rw-r--r-- | dev-ada/gprbuild/files/gprbuild-2018.xml | 93 | ||||
-rw-r--r-- | dev-ada/gprbuild/gprbuild-2018-r2.ebuild (renamed from dev-ada/gprbuild/gprbuild-2018-r1.ebuild) | 18 |
3 files changed, 178 insertions, 100 deletions
diff --git a/dev-ada/gprbuild/files/gprbuild-2018-gentoo.patch b/dev-ada/gprbuild/files/gprbuild-2018-gentoo.patch index 35a98ae03fcb..9f62ec9ff9d4 100644 --- a/dev-ada/gprbuild/files/gprbuild-2018-gentoo.patch +++ b/dev-ada/gprbuild/files/gprbuild-2018-gentoo.patch @@ -96,3 +96,170 @@ when Copy_Source_Dir => Copy_Source_Directory := new String'(Line (1 .. Last)); +--- a/share/gprconfig/compilers.xml 2018-10-17 14:36:15.100480516 +0200 ++++ b/share/gprconfig/compilers.xml 2018-10-17 15:38:57.333256634 +0200 +@@ -20,15 +20,15 @@ + <!-- GCC 3.x & 4.x (not for GNAT Pro)--> + <compiler_description> + <name>GCC</name> +- <executable prefix="1">(.*-wrs-.*|.*-sysgo.*|.*-elf-.*|.*-eabi-.*|.*-eabispe-.*|avr-.*|.*-elinos-linux.*|.*-generic-linux-gnu-|.*-pc-mingw32.*|.*-xcoff-.*|arm-linux-androideabi-|arm-linux-gnueabi-|arm-linux-gnueabihf-|e500v2-gnu-linux-|powerpc-.*-linux.*-|.*-darwin.*-|aarch64-linux-gnu-)?gcc</executable> ++ <executable prefix="1">(.*-wrs-.*|.*-sysgo.*|.*-elf-.*|.*-eabi-.*|.*-eabispe-.*|avr-.*|.*-elinos-linux.*|.*-generic-linux-gnu-|.*-pc-mingw32.*|.*-xcoff-.*|arm-linux-androideabi-|arm-linux-gnueabi-|arm-linux-gnueabihf-|e500v2-gnu-linux-|powerpc-.*-linux.*-|.*-darwin.*-|aarch64-linux-gnu-)?gcc-@VER@</executable> + <version> +- <external>${PREFIX}gcc -v</external> ++ <external>${PREFIX}gcc-@VER@ -v</external> + <nogrep regexp="for GNAT Pro"></nogrep> + <grep regexp="^gcc \S+ (\S+)" group="1"></grep> + </version> + <languages>C</languages> + <target> +- <external>${PREFIX}gcc -dumpmachine</external> ++ <external>${PREFIX}gcc-@VER@ -dumpmachine</external> + <grep regexp="[^\r\n]+"></grep> + </target> + </compiler_description> +@@ -170,14 +170,14 @@ + --> + <compiler_description> + <name>GNAT</name> +- <executable prefix="1">(.*-wrs-.*|.*-sysgo.*|.*-elf-.*|.*-eabi-.*|.*-eabispe-.*|avr-.*|.*-elinos-linux.*|.*-generic-linux-gnu-|.*-pc-mingw32.*|.*-xcoff-.*|arm-linux-androideabi-|arm-linux-gnueabi-|arm-linux-gnueabihf-|e500v2-gnu-linux-|powerpc-.*-linux.*-|.*-darwin.*-|aarch64-linux-gnu-|.*-qnx.*)?gnatls</executable> ++ <executable prefix="1">(.*-wrs-.*|.*-sysgo.*|.*-elf-.*|.*-eabi-.*|.*-eabispe-.*|avr-.*|.*-elinos-linux.*|.*-generic-linux-gnu-|.*-pc-mingw32.*|.*-xcoff-.*|arm-linux-androideabi-|arm-linux-gnueabi-|arm-linux-gnueabihf-|e500v2-gnu-linux-|powerpc-.*-linux.*-|.*-darwin.*-|aarch64-linux-gnu-|.*-qnx.*)?gnatls-@VER@</executable> + <version> +- <external>${PREFIX}gnatls -v --version</external> ++ <external>${PREFIX}gnatls-@VER@ -v --version</external> + <grep regexp="^GNATLS.+?(\d+(\.\d+)?)" group="1"></grep> + </version> + <languages>Ada</languages> + <variable name="gcc_version"> +- <external>${PREFIX}gcc -v</external> ++ <external>${PREFIX}gcc-@VER@ -v</external> + <grep regexp="^[-\w]*gcc \S+ (\S+)" group="1"></grep> + </variable> + <runtimes default="default,kernel,native"> +@@ -187,71 +187,11 @@ + <directory group="1" >\.\./$TARGET/lib/gnat/(.*)/adalib/</directory> + </runtimes> + <target> +- <external>${PREFIX}gcc -dumpmachine</external> ++ <external>${PREFIX}gcc-@VER@ -dumpmachine</external> + <grep regexp="[^\r\n]+"></grep> + </target> + </compiler_description> + +- <!-- CodePeer --> +- +- <compiler_description> +- <name>GNAT_CODEPEER</name> +- <executable prefix="1">(.*codepeer-)gnatls</executable> +- <version> +- <external>${PREFIX}gnatls -v</external> +- <grep regexp="^GNATLS.+?(\d+(\.\d+)?)" group="1"></grep> +- </version> +- <languages>Ada</languages> +- <variable name="gcc_version"> +- <external>${PREFIX}gcc -v</external> +- <grep regexp="^[-\w]*gcc \S+ (\S+)" group="1"></grep> +- </variable> +- <runtimes default="default,native"> +- <directory group="default" >\.\./lib/gcc/.*/$gcc_version/adalib/</directory> +- <directory group="1" >\.\./lib/gnat/(.*)/adalib/</directory> +- <directory group="1" >\.\./lib/gcc/.*/$gcc_version/rts-(.*)/adalib/</directory> +- </runtimes> +- <target>codepeer</target> +- </compiler_description> +- +- <!-- C Target --> +- +- <compiler_description> +- <name>GNAT_C</name> +- <executable prefix="1">(c-)gnatls</executable> +- <version> +- <external>${PREFIX}gnatls -v</external> +- <grep regexp="^GNATLS.+?(\d+(\.\d+)?)" group="1"></grep> +- </version> +- <languages>Ada</languages> +- <variable name="gcc_version"> +- <external>${PREFIX}gcc -v</external> +- <grep regexp="^[-\w]*gcc \S+ (\S+)" group="1"></grep> +- </variable> +- <runtimes default="default"> +- <directory group="default" >\.\./libexec/gnat_ccg/lib/gcc/.*/$gcc_version/adalib/</directory> +- <directory group="1" >\.\./lib/gnat/(.*)/adalib/</directory> +- </runtimes> +- <target>c</target> +- </compiler_description> +- +- <!-- GNAT_DOTNET --> +- +- <compiler_description> +- <name>GNAT_DOTNET</name> +- <executable prefix="1">(.*dotnet-)gnatls</executable> +- <version> +- <external>${PREFIX}gnatls -v</external> +- <grep regexp="^GNATLS.+?(\d+(\.\d+)?)" group="1"></grep> +- </version> +- <languages>Ada</languages> +- <runtimes default="default,kernel"> +- <directory group="default" >\.\./lib/dotgnat/adalib/</directory> +- <directory group="1" >\.\./lib/dotgnat/rts-(.*)/adalib/</directory> +- </runtimes> +- <target>dotnet</target> +- </compiler_description> +- + <!-- G77 --> + <compiler_description> + <name>G77</name> +@@ -295,21 +295,6 @@ + </target> + </compiler_description> + +- <!-- LLVM Compiler --> +- <compiler_description> +- <name>LLVM</name> +- <executable>clang</executable> +- <version> +- <external>clang -v</external> +- <grep regexp=".*(LLVM|clang) version ([0-9.]*)" group="2"></grep> +- </version> +- <languages>C</languages> +- <target> +- <external>clang -dumpmachine</external> +- <grep regexp="[^\r\n]+"></grep> +- </target> +- </compiler_description> +- + <!-- Windres compiler --> + <compiler_description> + <name>WINDRES</name> +--- a/share/gprconfig/gnat.xml 2018-10-17 18:38:35.547094541 +0200 ++++ b/share/gprconfig/gnat.xml 2018-10-17 18:40:16.281379341 +0200 +@@ -60,7 +60,7 @@ + &filter_gnat; + <config> + package Compiler is +- for Driver ("Ada") use "${PATH(ada)}${PREFIX(ada)}gcc"; ++ for Driver ("Ada") use "${PATH(ada)}${PREFIX(ada)}gcc-@VER@"; + for Language_Kind ("Ada") use "unit_based"; + for Dependency_Kind ("Ada") use "ALI_File"; + for Leading_Required_Switches ("Ada") use +--- a/share/gprconfig/c.xml 2018-10-17 21:31:44.442501471 +0200 ++++ b/share/gprconfig/c.xml 2018-10-17 21:33:06.562088044 +0200 +@@ -14,7 +14,7 @@ + </compilers> + <config> + package Compiler is +- for Driver ("C") use "${PATH(c)}${PREFIX(c)}gcc"; ++ for Driver ("C") use "${PATH(c)}${PREFIX(c)}gcc-@VER@"; + end Compiler; + </config> + </configuration> +--- a/share/gprconfig/linker.xml 2018-10-17 21:36:15.856883517 +0200 ++++ b/share/gprconfig/linker.xml 2018-10-17 21:35:15.985896804 +0200 +@@ -1044,7 +1044,7 @@ + </targets> + <config> + for Library_Partial_Linker use +- ("${PATH(c)}${PREFIX(c)}gcc", "-nostdlib", "-Wl,-r", "-o"); ++ ("${PATH(c)}${PREFIX(c)}gcc-@VER@", "-nostdlib", "-Wl,-r", "-o"); + </config> + </configuration> + diff --git a/dev-ada/gprbuild/files/gprbuild-2018.xml b/dev-ada/gprbuild/files/gprbuild-2018.xml deleted file mode 100644 index 56c4f8969192..000000000000 --- a/dev-ada/gprbuild/files/gprbuild-2018.xml +++ /dev/null @@ -1,93 +0,0 @@ -<?xml version="1.0" ?> -<gprconfig> - <compiler_description> - <name>GNAT-@VER@</name> - <executable prefix="1">gnatls-@VER@</executable> - <version> - <external>${PREFIX}gnatls-@VER@ -v --version</external> - <grep regexp="^GNATLS.+?(\d+(\.\d+)?)" group="1"></grep> - </version> - <languages>Ada</languages> - <variable name="gcc_version"> - <external>${PREFIX}gcc-@VER@ -v</external> - <grep regexp="^[-\w]*gcc \S+ (\S+)" group="1"></grep> - </variable> - <runtimes default="default,kernel,native"> - <directory group="default" >\.\./lib/gcc(-lib)?/$TARGET/$gcc_version/adalib/</directory> - <directory group="default" contents="^rts-">\.\./lib/gcc(-lib)?/$TARGET/$gcc_version/ada_object_path</directory> - <directory group="2" >\.\./lib/gcc(-lib)?/$TARGET/$gcc_version/rts-(.*)/adalib/</directory> - <directory group="1" >\.\./$TARGET/lib/gnat/(.*)/adalib/</directory> - </runtimes> - <target> - <external>${PREFIX}gcc-@VER@ -dumpmachine</external> - <grep regexp="[^\r\n]+"></grep> - </target> - </compiler_description> - - <configuration> - <compilers> - <compiler name="GNAT-@VER@" /> - </compilers> - <config> - package Compiler is - for Driver ("Ada") use "${PATH(ada)}${PREFIX(ada)}gcc-@VER@"; - for Language_Kind ("Ada") use "unit_based"; - for Dependency_Kind ("Ada") use "ALI_File"; - for Leading_Required_Switches ("Ada") use - ("-c", "-x", "ada", "-gnatA") - & Compiler'Leading_Required_Switches ("Ada"); - for Mapping_File_Switches ("Ada") use ("-gnatem="); - for Mapping_Spec_Suffix ("Ada") use "%s"; - for Mapping_Body_Suffix ("Ada") use "%b"; - for Config_File_Switches ("Ada") use ("-gnatec="); - for Include_Path_File ("Ada") use "ADA_PRJ_INCLUDE_FILE"; - for Multi_Unit_Switches ("Ada") use ("-gnateI"); - for Multi_Unit_Object_Separator ("Ada") use "~"; - for Config_Body_File_Name ("Ada") use - "pragma Source_File_Name_Project (%u, Body_File_Name => ""%f"");"; - for Config_Spec_File_Name ("Ada") use - "pragma Source_File_Name_Project (%u, Spec_File_Name => ""%f"");"; - for Config_Body_File_Name_Index ("Ada") use - "pragma Source_File_Name_Project (%u, Body_File_Name => ""%f"", Index => %i);"; - for Config_Spec_File_Name_Index ("Ada") use - "pragma Source_File_Name_Project (%u, Spec_File_Name => ""%f"", Index => %i);"; - for Config_Body_File_Name_Pattern ("Ada") use - "pragma Source_File_Name_Project " & - " (Body_File_Name => ""*%b""," & - " Casing => %c," & - " Dot_Replacement => ""%d"");"; - for Config_Spec_File_Name_Pattern ("Ada") use - "pragma Source_File_Name_Project " & - " (Spec_File_Name => ""*%s""," & - " Casing => %c," & - " Dot_Replacement => ""%d"");"; - for Config_File_Unique ("Ada") use "False"; - for PIC_Option ("Ada") use ("-fPIC"); - for Leading_Required_Switches ("Ada") use - Compiler'Leading_Required_Switches ("Ada") & ("--RTS=${RUNTIME_DIR(ada)}"); - for Driver ("C") use "${PATH(c)}${PREFIX(c)}gcc-@VER@"; - for Leading_Required_Switches ("C") use - ("-c", "-x", "c") & Compiler'Leading_Required_Switches ("C"); - for Include_Switches_Via_Spec ("C") use ("cc1", "-I"); - for Max_Command_Line_Length use "8192"; - for Response_File_Format ("C") use "GCC_GNU"; - for Dependency_Switches ("C") use ("-MMD", "-MF", ""); - for PIC_Option ("C") use ("-fPIC"); - end Compiler; - - package Binder is - for Objects_Path_File ("Ada") use "ADA_PRJ_OBJECTS_FILE"; - for Driver ("Ada") use - "${GPRCONFIG_PREFIX}libexec/gprbuild/gprbind"; - for Switches ("Ada") use ("--gnatbind_path=gnatbind-@VER@"); - for Required_Switches ("Ada") use - Binder'Required_Switches ("Ada") & ("--RTS=${RUNTIME_DIR(ada)}"); - end Binder; - - for Toolchain_Version ("Ada") use "GNAT ${VERSION(ada)}"; - -for Runtime_Dir ("Ada") use "${RUNTIME_DIR(ada)}"; - for Library_Encapsulated_Supported use "true"; - </config> - </configuration> -</gprconfig> diff --git a/dev-ada/gprbuild/gprbuild-2018-r1.ebuild b/dev-ada/gprbuild/gprbuild-2018-r2.ebuild index 3f325332e8e2..91e3da95792d 100644 --- a/dev-ada/gprbuild/gprbuild-2018-r1.ebuild +++ b/dev-ada/gprbuild/gprbuild-2018-r2.ebuild @@ -37,17 +37,22 @@ src_prepare() { else GCC_PV=7.3.1 fi - sed -e "s:@VER@:${GCC_PV}:g" "${FILESDIR}"/${P}.xml > gnat-${GCC_PV}.xml - rm share/gprconfig/c.xml || die default sed -i \ - -e "s:@GNATBIND@:gnatbind-${GCC_PV}:g" \ - src/gprlib.adb \ + -e "s:@VER@:${GCC_PV}:g" \ + share/gprconfig/compilers.xml \ + share/gprconfig/gnat.xml \ + share/gprconfig/c.xml \ + share/gprconfig/linker.xml \ || die sed -i \ - -e "s:\"-Wl,-r\":\"-r\":g" \ - share/gprconfig/linker.xml \ + -e "s:@GNATBIND@:gnatbind-${GCC_PV}:g" \ + src/gprlib.adb \ || die +# sed -i \ +# -e "s:\"-Wl,-r\":\"-r\":g" \ +# share/gprconfig/linker.xml \ +# || die } src_configure() { @@ -84,6 +89,5 @@ src_install() { insinto /usr/share/gpr doins share/_default.gpr insinto /usr/share/gprconfig - doins gnat-${GCC_PV}.xml einstalldocs } |