philippe44 / LMS-ShairTunes2W

Airtunes with LMS (fork of https://github.com/disaster123/shairport2_plugin)
65 stars 3 forks source link

Support for Solaris/OmniOS. #3

Closed chincheta0815 closed 7 years ago

chincheta0815 commented 7 years ago

Is there a way to support the plugin on Solaris/OmniOS?

I have such a system running with disaster's plugin. When you tell me a way how to compile the plugins essentials, I would create a pull request for you.

philippe44 commented 7 years ago

I'm not sure I fully understand the question I think we discussed it on the squeezebox forum. I don't have a Solaris compiling system, but the makefile shall be easy to modify. There is a common makefile for all platforms where you need to change a few macros that points to the main folder and to tinymdnssvc (you'll find it on my github pages as well). Then create a makefile.sol (eg) starting from makefile.armhf (eg) and adapt it to whatever compilation options are needed by you C compiler on Solaris

chincheta0815 commented 7 years ago

You got the question partly ;o)

I already have the plugin running, but it is the disaster123 one. This has to be installed manually... I now thought to use the one you provide since it comes with LMS.

Compiling the helper-binary should work for me as I already did that.

I was wondering on how to compile the perl stuff and put that into the file structure. My idea: I do a fork, add all stuff needed for OmniOS and give you a pull request. Therefore, I need some input on where the essential things have to be changed...

philippe44 commented 7 years ago

if you are willing to compile the helper, I'll take care of the perl changes and integrate everything into the package. Then, whenever I'll do an help update, I'll let you know. I can try to do a Solaris compile environment, but I need to look it a QEMU solution exist. For the helper changes, they should be very minimum: you mainly have a few #ifdef WIN32 or #if WIN but the #else is either not specific to another OS except in a few rare cases where there are specificities for Linux, OSX or freeBSD. Look at platform.h. The mDNS server that I've modified to run for Windows should be exactly the same and I expect it to tun directly under Solaris

chincheta0815 commented 7 years ago

Yes I am willing ;o) Only issue right now: platform.h is referenced in hairtunes.c but not in the makefiles... is that intended or can I fix that?

philippe44 commented 7 years ago

that's an error. I added it recently for the debug modifications and forgot to put it in the makefile dependencies (although that file -almost- never change). I re-looked at the code and in fact you might have to do nothing, unless there is some SunOS idiosyncrasies with sockets, which according to the previous code, if it was working in Solaris, should not be the case

chincheta0815 commented 7 years ago

Just a short info: The reason for the confusing diff was that I changed the line ending with dos2unix...

philippe44 commented 7 years ago

oh ... that makes sense. I mostly edit under Windows and my editors transparently handle CRLF issues (they leave the file to whatever format it is) but I've made the mistake a few times to use another editor that forces CRLF, Problem is that I won't see the mess created unless I edit under a non-DOS OS, which I've not done yet (at least recently) for ShairTunes2W. If you prefer, you can push the changes again then, I'll double check with another diff tool with my local version and then accept your changes. It was just uneasy for me to see what was going on as I'm travelling currently and have limited access to my main machine

philippe44 commented 7 years ago

So I've modified a bit the platform.h, These new files should produce a workable helper

philippe44 commented 7 years ago

Tell me if you see my comment about what needs to be buit in lib/

chincheta0815 commented 7 years ago

Yep. I read your comment on the perl stuff in /lib.

Do you have a build-script for that? Otherwise I would do one...

Am 29.12.2016 um 06:26 schrieb philippe44 notifications@github.com:

Tell me if you see my comment about what needs to be buit in lib/

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/philippe44/ShairTunes2/issues/3#issuecomment-269583635, or mute the thread https://github.com/notifications/unsubscribe-auth/ACKOnZ8Vk9r_34xqPzHFirZndEk6UoXSks5rM0SYgaJpZM4LPdrP.

philippe44 commented 7 years ago

no I don't - as I don't need to do that often, I left it manual. Once you cpan the OpenSSL::Crypt::RSA, you'll find what's needed under the site_perl sub-directory

philippe44 commented 7 years ago

It's pushed the update in the dev repository. Let me know if it works

chincheta0815 commented 7 years ago

Well, with your github.com repo pull to my server and then put everything into the plugins dir it worked. Just enabling it in LMS did not as it downloaded a version of ShairTunes that does not support Solaris...

If I have to change something to get a "dev" plugin, please tell me.

philippe44 commented 7 years ago

did you add the dev repository in the LMS 3rd part plugin?

chincheta0815 commented 7 years ago

no. until now i did not know that there is one existing ;o) can you provide the url?

philippe44 commented 7 years ago

it's here http://forums.slimdevices.com/showthread.php?106289-announce-ShairTunes2W-Airtunes-on-LMS-(forked-version-with-Windows-support)&p=865036&viewfull=1#post865036

philippe44 commented 7 years ago

As you are using an x86 Solaris version, I've downloaded a VM and compiled the helper from it. Can you le tme know if this 0.41.1 works for you? If it does, then I won't need to bother you every time I'll make a change in the helper

chincheta0815 commented 7 years ago

Hey Philippe,

sorry for the late reply.

The dev-repo works! Only thing to mention: Could you add the perl Modules for the „Oracle Solaris“ perl?

My ones are for a self compiled 5.18. On OmniOS which I am using the perl version is 5.16.

Maybe you could add the respective perl lib for the original Solaris version from the Virtual Box?

Am 02.01.2017 um 02:36 schrieb philippe44 notifications@github.com:

As you are using an x86 SOlaris version, I've downloaded a VM and compiled the helper from it. Can you le tme know if this 0.41.1 works for you? If it does, then I won't need to bother you every time I'll make a change in the helper

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/philippe44/ShairTunes2/issues/3#issuecomment-269928642, or mute the thread https://github.com/notifications/unsubscribe-auth/ACKOnbgKFo4cTt8d8atFtL0TCE_RP-YZks5rOFSegaJpZM4LPdrP.

philippe44 commented 7 years ago

my Perl version is 5.12 - I'm not sure I should add them, might be more confusing, no?

chincheta0815 commented 7 years ago

Well, to be honest, I think that would be awesome. This would mean, that Solaris/Illumos is supported with the base packages...

It might be that you have the original Oracle Solaris running which uses Perl 5.12. Illumos based distros (OmniOS, OpenIndian...) might use 5.14...

I woud say put in there what one can get... I will have a look for the original 5.14 ones that come with OmniOS...

Is that okay for you?

BTW: I have another question concerning the use of one of your LMS-to-... bridges for another project I am working on. Where can I put that best to get the valuable input from you I appreciate?

philippe44 commented 7 years ago

done, don't know if it will work, but I've added the 5.12 modules. For the other topic, you can contact me at my email: philippe_44@outlook.com

chincheta0815 commented 7 years ago

Thanks a lot.

Just wrote you an eMail.

 

Gesendet: Dienstag, 17. Januar 2017 um 06:19 Uhr Von: philippe44 notifications@github.com An: philippe44/ShairTunes2 ShairTunes2@noreply.github.com Cc: chincheta0815 Rouven_Weiler@gmx.net, Author author@noreply.github.com Betreff: Re: [philippe44/ShairTunes2] Support for Solaris/OmniOS. (#3)

done, don't know if it will work, but I've added the 5.12 modules. For the other topic, you can contact me at my email: philippe_44@outlook.com

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub, or mute the thread.