Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

How to tag files with multiple platform binaries? #90

Open
peterjc opened this issue Aug 19, 2016 · 8 comments
Open

How to tag files with multiple platform binaries? #90

peterjc opened this issue Aug 19, 2016 · 8 comments
Labels

Comments

@peterjc
Copy link
Contributor

peterjc commented Aug 19, 2016

No description provided.

@hexylena
Copy link
Member

Hmm. We tag all for multiple architectures, but nothing for multi-platform.

Can you elaborate on the use case a bit?

@peterjc
Copy link
Contributor Author

peterjc commented Aug 19, 2016

This is not so common - the only example which immediately comes to mind is SNNS which I just added recently, see 82a541b and the comment. Although this release only included binaries for Linux x64, from the folder naming convention the author presumably has also included Linux 32 bit binaries as well in the past.

@hexylena
Copy link
Member

hexylena commented Aug 19, 2016

Ah, just multiple architectures, then all is used there.

For things like scripts which are cross arch + cross platform, I think we've used src all in the past.

@peterjc
Copy link
Contributor Author

peterjc commented Aug 19, 2016

I saw this was used for JAR files and followed this in 4d6b36e

So basically use src for multiple OS (even if not really source code), and all for multiple CPU arch?

@hexylena
Copy link
Member

Yep, precisely.

We could add another tag all or so for the OS if need be, but it isn't really used anywhere, since almost no one (that we know of) consumes urls.tsv.

@peterjc
Copy link
Contributor Author

peterjc commented Aug 19, 2016

Although these values do appear in the filenames used on the public depot URLs...

@peterjc
Copy link
Contributor Author

peterjc commented Aug 26, 2016

Concrete example, PhyML provides a ZIP file containing pre-compiled binaries for 32 bit Windows, 32 bit Linux, 64 bit Linux, and 64 bit Mac OS X:

$ curl -L -O http://www.atgc-montpellier.fr/download/binaries/phyml/PhyML-3.1.zip
$ unzip PhyML-3.1.zip 
Archive:  /tmp/PhyML-3.1.zip
   creating: PhyML-3.1/
  inflating: PhyML-3.1/PhyML-3.1_linux32  
  inflating: PhyML-3.1/PhyML-3.1_linux64  
  inflating: PhyML-3.1/PhyML-3.1_macOS-MountainLion  
  inflating: PhyML-3.1/PhyML-3.1_manual.pdf  
  inflating: PhyML-3.1/PhyML-3.1_win32.exe  
  inflating: PhyML-3.1/README        
  inflating: PhyML-3.1/phyml.bat 
$ file PhyML-3.1/PhyML-3.1_linux32
PhyML-3.1/PhyML-3.1_linux32: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.15, not stripped
$ file PhyML-3.1/PhyML-3.1_linux64
PhyML-3.1/PhyML-3.1_linux64: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.24, not stripped
$ file PhyML-3.1/PhyML-3.1_win32.exe 
PhyML-3.1/PhyML-3.1_win32.exe: PE32 executable for MS Windows (console) Intel 80386 32-bit
$ file PhyML-3.1/PhyML-3.1_macOS-MountainLion
PhyML-3.1/PhyML-3.1_macOS-MountainLion: Mach-O 64-bit executable x86_64
$ ./PhyML-3.1/PhyML-3.1_macOS-MountainLion --version


. This is PhyML version 20120412.

@hexylena
Copy link
Member

We could add a bin all, if there is something quite so undesirable about src in URLs. That would be a trivial change.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants