file (as in /usr/bin/file) does not honor "-L" when using mime type output.
As the ports makefile checks for shared library existance vie "file -L
--mime-type" = "application/x-sharedlib" this results in ports trying to
re-install already existing libraries.
Fix: Honestly, I'm not sure what the "&= MAGIC_MIME_TYPE" is supposed to do here,
but it actually deletes all other options from flags.
Someone with a better understanding of the code might want to check if the
code maybe was actually supposed to be "ms->flags |= MAGIC_MIME_TYPE" here?
I just added MAGIC_SYMLINK here to keep it from being deleted to fix the
problem at hand.
run file with "-L" and "--mime-type" on a symlink.
without "-L" it's ok:
ice:~>file -b --mime-type /usr/local/lib/libdb-4.2.so.2
ice:~>file -b -L --mime-type /usr/local/lib/libdb-4.2.so.2 :(
ice:~>LD_LIBRARY_PATH=/usr/obj/usr/src/lib/libmagic file -b -L --mime-type /usr/local/lib/libdb-4.2.so.2
For bugs matching the following criteria:
Status: In Progress Changed: (is less than) 2014-06-01
Reset to default assignee and clear in-progress tags.
Mail being skipped