Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 19 Aug 2018 02:07:50 -0300
From:      Helen Koike <helen.koike@collabora.com>
To:        freebsd-ports@freebsd.org
Subject:   Re: workflow question: how do you maintain the port in sync with upstream?
Message-ID:  <59108090-e771-f20f-244e-9b6e98427128@collabora.com>
In-Reply-To: <CALM2mE=hXWocn8DDA23Qy6SEaFZg6OtoAQsAYWwhzc5eObwGpA@mail.gmail.com>
References:  <05457c2b-b85c-a929-20e7-38ff1b2899d6@collabora.com> <CALM2mEmnrLmLApeuun9h2OPJbj_wMXY9u-q=PUGyNpy5w8XfQg@mail.gmail.com> <87211ccd-bb2f-cd03-ecde-fd123d0c9ca5@collabora.com> <CALM2mEkV-pyQneSiSrWuBQ2VxoM-UAADSDjm5o2HhjD4FWBQYA@mail.gmail.com> <c0e1f68d-d1c7-b74d-b058-d758f46a7e1b@collabora.com> <CALM2mE=hXWocn8DDA23Qy6SEaFZg6OtoAQsAYWwhzc5eObwGpA@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help


On 08/14/2018 11:41 AM, blubee blubeeme wrote:
> On Tue, Aug 14, 2018 at 8:56 PM Helen Koike <helen.koike@collabora.com>
> wrote:
> 
>>
>>
>> On 08/13/2018 09:50 PM, blubee blubeeme wrote:
>>>
>>>
>>> On Tue, Aug 14, 2018, 08:26 Helen Koike <helen.koike@collabora.com
>>> <mailto:helen.koike@collabora.com>> wrote:
>>>
>>>
>>>
>>>     On 08/13/2018 08:00 PM, blubee blubeeme wrote:
>>>     >
>>>     >
>>>     > On Tue, Aug 14, 2018, 06:30 Helen Koike <helen.koike@collabora.com
>>>     <mailto:helen.koike@collabora.com>
>>>     > <mailto:helen.koike@collabora.com
>>>     <mailto:helen.koike@collabora.com>>> wrote:
>>>     >
>>>     >     Hello,
>>>     >
>>>     >     I am new to the community, I am maintaining two packages and I
>>>     would
>>>     >     like to check with you if there is a better workflow to do
>> this.
>>>     >
>>>     >     The upstream project of the port I am maintaining is held in
>>>     github, and
>>>     >     I also have patches in the /usr/ports/sysutils/myport/file/
>>>     folder.
>>>     >
>>>     >     So I keep a fork of the upstream project with a branch
>>>     containing a
>>>     >     commit with the patches from the
>> /usr/ports/sysutils/myport/file/.
>>>     >
>>>     >     Every time I need to update the port to a newer version, I do
>>>     a git pull
>>>     >     in this branch, then I run a script [1] to re-generate the
>>>     patches in
>>>     >     the /usr/ports/sysutils/myport/file/
>>
> This one is fairly straight forward, you can simply replace that string
> with a regex command;
> This is an example of running a replace command for strings after the patch
> phase of the build;
> 
> post-patch:
> 	@${REINPLACE_CMD} -e 's|for Linux|for FreeBSD|g' ${WRKSRC}/README
> 
> 
> 
>>>     >
>>>     >     This script basically generates a file.orig of all modified
>>>     files in
>>>     >     git, then copy the modified file to WORK_DIR, then run make
>>>     makepatch.
>>>     >
>>>     >
>>>     >     for file in ${CHANGES}; do
>>>     >             mv ${WORK_DIR}/${file} ${WORK_DIR}/${file}.orig
>>>     >             cp ${PROJECT_PATH}/${file} ${WORK_DIR}/${file}
>>>     >     done
>>>     >     make makepatch
>>
> Depending on how drastic the changes are, you can use the above command to
> simply replace strings;
> There's also binary alias, that allows to replace sed with gsed:
> https://www.freebsd.org/doc/en/books/porters-handbook/binary-alias.html
> 
> Speaking of which, FreeBSD has access to all the GNU tools such as;
> gmake [gnu make]
> gsed    [gnu sed]
> 
> if it's only a few commands you can use binary alias.


Interesting, but unfortunately (if I understand correctly) this is only
for build time no? but I need to replace sed by gsed in the final
script, not just in the build time.

Thanks
Helen



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?59108090-e771-f20f-244e-9b6e98427128>