From owner-freebsd-ports-bugs@freebsd.org Wed Feb 21 09:44:28 2018 Return-Path: Delivered-To: freebsd-ports-bugs@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 215B0F17E38 for ; Wed, 21 Feb 2018 09:44:28 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) Received: from mxrelay.ysv.freebsd.org (mxrelay.ysv.freebsd.org [IPv6:2001:1900:2254:206a::19:3]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client CN "mxrelay.ysv.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id AE8086FC13 for ; Wed, 21 Feb 2018 09:44:27 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) Received: from kenobi.freebsd.org (kenobi.freebsd.org [IPv6:2001:1900:2254:206a::16:76]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mxrelay.ysv.freebsd.org (Postfix) with ESMTPS id BD9132823 for ; Wed, 21 Feb 2018 09:44:26 +0000 (UTC) (envelope-from bugzilla-noreply@freebsd.org) Received: from kenobi.freebsd.org ([127.0.1.118]) by kenobi.freebsd.org (8.15.2/8.15.2) with ESMTP id w1L9iQ5d092486 for ; Wed, 21 Feb 2018 09:44:26 GMT (envelope-from bugzilla-noreply@freebsd.org) Received: (from www@localhost) by kenobi.freebsd.org (8.15.2/8.15.2/Submit) id w1L9iQbm092485 for freebsd-ports-bugs@FreeBSD.org; Wed, 21 Feb 2018 09:44:26 GMT (envelope-from bugzilla-noreply@freebsd.org) X-Authentication-Warning: kenobi.freebsd.org: www set sender to bugzilla-noreply@freebsd.org using -f From: bugzilla-noreply@freebsd.org To: freebsd-ports-bugs@FreeBSD.org Subject: [Bug 226087] GH_SUBDIR fails with nested submodules Date: Wed, 21 Feb 2018 09:44:26 +0000 X-Bugzilla-Reason: AssignedTo X-Bugzilla-Type: new X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: Ports & Packages X-Bugzilla-Component: Individual Port(s) X-Bugzilla-Version: Latest X-Bugzilla-Keywords: X-Bugzilla-Severity: Affects Only Me X-Bugzilla-Who: FreeBSD@ShaneWare.Biz X-Bugzilla-Status: New X-Bugzilla-Resolution: X-Bugzilla-Priority: --- X-Bugzilla-Assigned-To: freebsd-ports-bugs@FreeBSD.org X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: bug_id short_desc product version rep_platform op_sys bug_status bug_severity priority component assigned_to reporter attachments.created Message-ID: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: https://bugs.freebsd.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 X-BeenThere: freebsd-ports-bugs@freebsd.org X-Mailman-Version: 2.1.25 Precedence: list List-Id: Ports bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 21 Feb 2018 09:44:28 -0000 https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D226087 Bug ID: 226087 Summary: GH_SUBDIR fails with nested submodules Product: Ports & Packages Version: Latest Hardware: Any OS: Any Status: New Severity: Affects Only Me Priority: --- Component: Individual Port(s) Assignee: freebsd-ports-bugs@FreeBSD.org Reporter: FreeBSD@ShaneWare.Biz Created attachment 190852 --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=3D190852&action= =3Dedit Example port Makefile with nested submodules I was experimenting with a new port and found a limitation of the use github subdir feature. It would seem that sub-sub-modules fail. Starting with the base project, some submodules are needed to build it and these work fine. To make the project useful I also need some of the plugins, each of which a= re sepearate github projects and need to be placed within the base projects so= urce tree to compile. One of these also has a submodule that also has submodules, the first one c= an be in place correctly, but when the sub-sub-modules are included, things are not put in the right place. The first submodule installs into plugins/AudibleInstruments and the sub-sub-module should go into plugins/AudibleInstruments/eurorack. What app= ears to happen is the avrlib submodule is first put into place which creates the AudibleInstruments/eurorack folder to position it, then as the AudibleInstruments folder exists, the first submodule gets installed into plugins/AudibleInstruments/AudibleInstruments-v0.5.0 and the eurorack module gets placed into plugins/AudibleInstruments/eurorack/eurorack-916d9620b538, which means the submodules are not placed inside the parent project were th= ey need to be. I can remove the subdir settings for these and manually move them into posi= tion in the post-extract stage and things work as wanted. Expected dir layout - plugins/AudibleInstruments plugins/AudibleInstruments/eurorack plugins/AudibleInstruments/eurorack/avr_audio_bootloader plugins/AudibleInstruments/eurorack/avrlib plugins/AudibleInstruments/eurorack/avrlibx plugins/AudibleInstruments/eurorack/stm_audio_bootloader plugins/AudibleInstruments/eurorack/stmlib Layout achieved using nested GH_SUBDIR - plugins/AudibleInstruments plugins/AudibleInstruments/AudibleInstruments-0.5.0 plugins/AudibleInstruments/eurorack plugins/AudibleInstruments/eurorack/eurorack-916d9620b538 plugins/AudibleInstruments/eurorack/avrlib plugins/AudibleInstruments/eurorack/avrlibx plugins/AudibleInstruments/eurorack/stm_audio_bootloader plugins/AudibleInstruments/eurorack/stmlib To me this appears to be a variation in the order that submodules are processed, I expect the fix would be to sort submodules by path and process them in that order so that parent submodules are always in place before any sub-sub-modules are extracted. --=20 You are receiving this mail because: You are the assignee for the bug.=