Linux ports tutorial? WPS Office

Chris H portmaster at BSDforge.com
Thu Dec 14 22:05:46 UTC 2017


On Thu, 14 Dec 2017 09:15:35 -0500 "Pedro Giffuni" <pfg at FreeBSD.org> said
> On 12/13/17 22:31, blubee blubeeme wrote:
>> On Thu, Dec 14, 2017 at 11:17 AM, Pedro Giffuni <pfg at freebsd.org 
>> <mailto:pfg at freebsd.org>> wrote:
>> 
>> Hello;
>> On 13/12/2017 21:11, Chris H wrote:
>> On Wed, 13 Dec 2017 19:56:24 -0500 "Pedro Giffuni"
>> <pfg at FreeBSD.org> said
>> 
>> On 12/10/17 14:55, Eugene Grosbein wrote:
>>> 11.12.2017 2:22, Pedro Giffuni пишет:
>>>> Hello guys;
>>>> 
>>>> I would like to attempt a port for WPS Office (AKA
>> Kingsoft Office):
>>>> 
>>>> http://wps-community.org/
>>>> 
>>>> Are there guidelines for linux ports? I couldn't find
>> much details in the
>>> handbook.
>>>> 
>>>> In particular, how do you handle when the pkg-plist is
>> different for i386
>>> and amd64?
>>>> 
>>>> Some ports use pkg-plist.${ARCH}  but I don't know how
>> those work.
>>> Just have "USES=linux", "USE_LINUX_RPM=yes" and make
>> these two files
>>> pkg-plist.i386 and pkg-plist.amd64
>>> and they are used automatically. Or you could duplicate
>> a magic from
>>> /ports/Mk/Uses/linux.mk <http://linux.mk> in your Makefile:
>>> 
>>> PLIST?= ${PKGDIR}/pkg-plist.${LINUX_ARCH:S/x86_64/amd64/}
>>> 
>>> For details, read Porter's Handbook:
>>> 
>> https://www.freebsd.org/doc/en_US.ISO8859-1/books/porters-handbook/
>> <https://www.freebsd.org/doc/en_US.ISO8859-1/books/porters-handbook/>
>>> 
>> 
>> The handbook has no information about "USE_LINUX_RPM=yes".
>> If I set that it appears the ports framework will ignore
>> MASTER_SITES.
>> 
>> Should I dig into the MK framework to see how to change
>> the repository or should I use the .tar.xz distribution
>> instead? :(.
>> 
>> I'm not sure. But would having a look at the way
>> emulators/linux_base-c(6|7)
>> provide some clues?
>> 
>> 
>> Not really but I think I found something in Mk/Uses/linux.mk
>> <http://linux.mk>:
>> 
>> For the case of USE_LINUX_RPM it is supposed to not do anything
>> when MASTER_SITES is defined but it is somewhat messy, and somehow
>> it always uses ${MASTER_SITE_CENTOS_LINUX}. Any port that uses RPM
>> but not the Centos repositories?
>> 
>>     Just a thought, and hope it helps!
>> 
>> Thanks, I just have to keep digging :(.
>> 
>> Pedro.
>> 
>> The linux packaging is okay but I'd recommend learning how the porting 
>> process and not just wrapping up a linux binary in FreeBSD.
>>
> 
> Well ... of course if I had the source code I would not be dealing RPMs 
> for the linuxulator.
> 
> Software can be free but not include source code.  It can still be 
> desirable for FreeBSD.
> 
>> The main reason for that is you can port your way into a corner that 
>> relies on very Linux specific stuff that there's just no solution for 
>> yet nor will there be one unless you port the entire Linux kernel to 
>> FreeBSD.
>>
> 
>Which is why we have a linuxulator.
OK Pedro, just so I know I understand your intentions correctly;
You need a way to unpack all the .rpm's, and separate them by
$arch -- 32bit -vs- 64bit, so that you can create the correct pkg-plist(s)
for each of them. Is that correct?

I'll await your response before a solution for that.

--Chris
> 
>Pedro.




More information about the freebsd-ports mailing list