From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: =?utf-8?Q?Llu=C3=ADs?= Newsgroups: gmane.emacs.devel Subject: Re: Project detection and configuration Date: Fri, 16 Oct 2015 23:24:16 +0200 Message-ID: <87egguqzgf.fsf@fimbulvetr.bsc.es> References: <87a8rlcuhu.fsf@fimbulvetr.bsc.es> <561F2F31.2060001@yandex.ru> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Trace: ger.gmane.org 1445030724 28107 80.91.229.3 (16 Oct 2015 21:25:24 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Fri, 16 Oct 2015 21:25:24 +0000 (UTC) Cc: emacs-devel@gnu.org To: Dmitry Gutov Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Fri Oct 16 23:25:11 2015 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1ZnCUu-0003Fe-0O for ged-emacs-devel@m.gmane.org; Fri, 16 Oct 2015 23:25:08 +0200 Original-Received: from localhost ([::1]:55933 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZnCUt-0001Pm-3A for ged-emacs-devel@m.gmane.org; Fri, 16 Oct 2015 17:25:07 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:54921) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZnCUA-0000lH-LP for emacs-devel@gnu.org; Fri, 16 Oct 2015 17:24:23 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1ZnCU7-0006qC-IT for emacs-devel@gnu.org; Fri, 16 Oct 2015 17:24:22 -0400 Original-Received: from mout.gmx.net ([212.227.17.22]:63855) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1ZnCU7-0006q2-Ce for emacs-devel@gnu.org; Fri, 16 Oct 2015 17:24:19 -0400 Original-Received: from localhost ([84.88.51.85]) by mail.gmx.com (mrgmx103) with ESMTPSA (Nemesis) id 0MZU7V-1a7kZo1r6D-00LBlQ; Fri, 16 Oct 2015 23:24:17 +0200 Mail-Followup-To: Dmitry Gutov , emacs-devel@gnu.org In-Reply-To: <561F2F31.2060001@yandex.ru> (Dmitry Gutov's message of "Thu, 15 Oct 2015 07:44:33 +0300") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.5 (gnu/linux) X-Provags-ID: V03:K0:x43bjrO/Ifcd34xqJFgRv0pL+ryjeOJYJADTa+g7XxmISqMZ6G9 5ri39WaTJW3RsApKoeORgF0OFS5fNSchsn6TtY+aWfpMW386sd0TNWoe8MZAPrRCETXI51m 84twPAB5FfjCQvC3NM5qkxlx13plRz4zSptgbn3GEJsSb1DuczvCafS3utiYZVeaKr/RDh4 2GMhbWM51bQf6+AhJLmMg== X-UI-Out-Filterresults: notjunk:1;V01:K0:qxg2yAAWnRE=:eOAgpinsZWNdAwd3ho5oW6 4Ck7pFKLPGUBCZTaz4VycBS90VnndpvsVfH8Y5rAi3VlPFFXSWp6k4+N70XjRY3Vi4cqocRMp 2SopzSXB/KNJrEMyAZP/hNxYE7cnRM664DC1KJqfm3GrJaZDCez2oGyN8RgJ9PWN9Cpvr2Rd7 7VPWz2OZmIItNpky5B+02OAZ2cDEphD22DOqWpG3ln3EFKc3IY1U7bvB582vCofaUnKNc9K3U LoW6jyvJZXBjufqyaOeiPkMgNMHohu/KhIPL+ja6t5bsDsamCcwQ8Q0NOlr/12lHp8izugVGd ML415pruIdzcR1ZJDb3wWvBulHahj+cuLGxVvT/JTO38BwHrjCLAUlGSTMoZoFfT4TnEJ/uhK rzLf425OoE4PenYnoURUcXIfkUM9i16deksAmcp3C+H1qlDb6UUm6SFkpRh4j6m949y1g/beI sSGvjU8gI3QRNnMfnhbQEN2T6weUrZHThBgydTfyOrMeUJqk7Kk8e2aam3KlG9YOGtPfae4tb OsbMBXal9mWjSS6HEbyZLcMqnPMCNdht56u8xSfE87fXxUNWl9iRpL7RzjyCUf6eBeO3nCZpT 7rb9DHemvKrHxMyDFkmvZ8GaQQncBMSDomxGvS2HdHfoT5UgZ0Dg++pef7+ayN5seY5bsiBVp 0TiTIVbiwEV4OrH+ALsonxYkhTfMJkMDGHD+X+V0kJZyaex2eWMH5ScfbpVOIfxVS+uQqD7Ci yem51PA9NXIlny2T3/4M6WQhKkbx7qd8pZuoE18hROW9w/U01SDO4LFCAWqGBAltNgaFNScw X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 212.227.17.22 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:191795 Archived-At: Dmitry Gutov writes: > On 10/14/2015 06:58 PM, Llu=C3=ADs wrote: >> * Repository >> ** Detect the root directory that conforms a checked-out repository >> ** Ignore repository-specific files on other components >> ** Interact with repo-management tools? > You might want to look at lisp/progmodes/project.el in the current master= , if > you haven't already. I wasn't aware of it, thanks. >> * Project information >> ** Name, version, homepage, etc > I think these are very low priority. Completely true. >> * Build system >> ** This one seems rather tricky to provide a unified interface >> ** Detect autotools, hand-made makefiles, ant, maven, linux, etc. >> ** Build modes of a project (e.g., debug vs release) >> ** Generate files (targets) of a project >> ** Create release tarballs? > I'd rather have a flat list of tasks, so that different tasks could do ma= ny of > these things. > Do we really need to be able to know, programmatically, that a certain ta= sk is > related to the "debug" build? Otherwise, it would simply be to the build = tool > integration to include (or not) "debug" in the returned task name. Hmmmm, it's not that a task is debug only, but that it's not the same a tas= k in debug mode than in release mode. For example, you can have a debug and a re= lease build of the same program, each on its own out-of-tree build directory. Therefore a make command would differ based on the target *and* = the build mode. Still, I'm not sure there's a clean way to handle this without hardcoding t= he difference between task and build mode. And I'm not even sure this makes se= nse on all types of builds. >> ** Sometimes identifies the root directory of the project > When it does, a project implementation will have to handle this. Using > `locate-dominating-file' or `file-exists-p' is not hard. Right. My point is that using a repository root is a sane default most of t= he time, but sometimes it might be necessary to use project-specific informati= on for that. For example, imagine some linux kernel checkout (which can be pro= perly identified) that is stored on some sub-directory of a larger repository. Still, the root directory is not a useful piece of information per se, but = it can be handy to derive other information like paths to look for other files. Cheers, Lluis --=20 "And it's much the same thing with knowledge, for whenever you learn something new, the whole world becomes that much richer." -- The Princess of Pure Reason, as told by Norton Juster in The Phantom Tollbooth