From owner-freebsd-ports@freebsd.org Thu Dec 14 20:43:55 2017 Return-Path: Delivered-To: freebsd-ports@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 0FEA2E8EB4C for ; Thu, 14 Dec 2017 20:43:55 +0000 (UTC) (envelope-from svysh.fbsd@gmail.com) Received: from mail-lf0-x230.google.com (mail-lf0-x230.google.com [IPv6:2a00:1450:4010:c07::230]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 85ACE784D6 for ; Thu, 14 Dec 2017 20:43:54 +0000 (UTC) (envelope-from svysh.fbsd@gmail.com) Received: by mail-lf0-x230.google.com with SMTP id f13so8120105lff.12 for ; Thu, 14 Dec 2017 12:43:54 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=to:from:subject:message-id:date:user-agent:mime-version :content-transfer-encoding:content-language; bh=67+RRd97MWuUv7lfQiChwqKY1xFRCLFqDskAob+kuIM=; b=uI8e/znGRZWM7WVE+Ca9gCcpCSdCU2OMHI+8DK4Z5lGqFaGRPm2IzXAbW7abYnqVEO MWgqmMeRYKmFnL9mZVr1sTDbVT3Hc/iNTPxF7prpDCSFZwTx9uENtoUaMLUw8p0swECn zoPA5r/7qkE4YnB8OKeFC6papTzohlL07U8ucerj8rCvqswjpFJHIIS4aZd3MavfhH8u zYwTLTo4zVDbvRm27bHUYvxtfvcyDtJJSBb9KagqMNNiwLb+B69c343BkRiWS8NqwSDd S3STCjfPB9o+GYGk+6Jdw3SWsOc0zgGtAcXnWfpHxJc6aEFMjAahGiDxwDLnemmxWPkT SnJQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:to:from:subject:message-id:date:user-agent :mime-version:content-transfer-encoding:content-language; bh=67+RRd97MWuUv7lfQiChwqKY1xFRCLFqDskAob+kuIM=; b=duq4sEIcIUtnBhsz2LrbaMq+zomGXdOL1RgR6d2Y1ACFE4ScOB0UZo/GWm9z/OYc0O rd8/ctUcpwAByg/gScEfHNutLhOUUi/CKMxCZoavKQF7FwJ6OFkVR8rjpxp2mK6xHyPT Z32I9buqi0nAF8VbRaUQFG9XATK+ZNyfAE+snpGtijaOsgJxFTPjYU+tKLoDuUFgogEA XpfRuHtI6oaQEBwSqmF/VIiPSH+DlV7r778GZGJN5Eh0/NDo8SzMh6M0erYDGDhNosOT 5VBwpRMIIsYKJqNeO6WXasFfOckNLH7mKif0QRKPQjHMoCOR1Qqn2ZzJnACh56LA+IOC yTow== X-Gm-Message-State: AKGB3mJ/kBKaX6zxS7krYdr1/adSsPkKmLdKoYUUWb8G9he1UK0Y7yPJ jrBv8KB7y8EauLKCwoJZFN+0/C8S X-Google-Smtp-Source: ACJfBos62tL/PPgJFj/BqpsRYgW2zX6qwyKOJ8egTMS//33LAyEpCosqrYfpJ0Yp340xbl2GtGkvfw== X-Received: by 10.46.5.12 with SMTP id 12mr4618222ljf.116.1513284231909; Thu, 14 Dec 2017 12:43:51 -0800 (PST) Received: from [192.168.1.4] (ppp83-237-2-85.pppoe.mtu-net.ru. [83.237.2.85]) by smtp.gmail.com with ESMTPSA id q20sm1011533lfq.44.2017.12.14.12.43.50 for (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 14 Dec 2017 12:43:51 -0800 (PST) To: freebsd-ports@freebsd.org From: Sergei Vyhenski Subject: github: handmade vs autogenerated distibution Message-ID: Date: Thu, 14 Dec 2017 23:43:51 +0300 User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.5.0 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Content-Language: en-US X-BeenThere: freebsd-ports@freebsd.org X-Mailman-Version: 2.1.25 Precedence: list List-Id: Porting software to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 14 Dec 2017 20:43:55 -0000 Hi, Some projects on Github provide handmade distribution tarball (let us call it H-tarball) for a release. The contents of this H-tarball could be essentially different from the check-out'ed source. The latter being identical to the autogenerated tarball (let us call it A-tarball), which we get with USE_GITHUB construct in the port's Makefile. H-tarball could contain files, which are missing from the A-tarball, such as: - configure script, - several Makefile's - documentation prebuilt from several formats In one example (which is expat, see below) - to build documentation (seems like) it requires this very expat to be installed in advance, thus bringing us to the cycle dependency. No wonder that the author of expat went into trouble and provided the H-tarball. Hence, building from A-tarball becomes a challenging task, which goes far beyond from saying "USES=autoreconf gmake" and "GNU_CONFIGURE=yes". Example for textproc/expat2 ver. 2.5.5: H-tarball: https://github.com/libexpat/libexpat/releases/download/R_2_2_5/expat-2.2.5.tar.bz2 source: https://github.com/libexpat/libexpat/tree/master/expat A-tarball: https://codeload.github.com/libexpat/libexpat/tar.gz/R_2_2_5?dummy=/R_2_2_5_GH0.tar.bz2 Playing with GH_* variables, I was able to fetch A-tarball within guidelines of bsd.sites.mk. But to fetch H-tarball, I could only invent the following: PORTNAME=       expat PORTVERSION=    2.2.5 MASTER_SITES= https://github.com/libexpat/libexpat/releases/download/R_${PORTVERSION:S|.|_|g}/ Also, this project has declared that it moves from SF to GH. It still publishes H-tarballs on SF. But it seems that switching of the FreeBSD port to take distribution from GH is inevitable. Do you think that explicit MASTER_SITES instead of USE_GITHUB (thus using H-tarball) here contradicts to some rules of good stile? Do you think that fighting with A-tarball is always necessary? Regards, Sergei