Issue 115964

Summary: cleanup .jnilib mess
Product: Build Tools Reporter: hjs <hans-joachim.lankenau>
Component: solenvAssignee: hjs <hans-joachim.lankenau>
Status: CLOSED FIXED QA Contact: issues@tools <issues>
Severity: Trivial    
Priority: P3 CC: ingo.schmidt-rosbiegal, issues, ivo.hinkelmann, stephan.bergmann.secondary
Version: current   
Target Milestone: ---   
Hardware: Mac   
OS: Mac OS X 10   
Issue Type: DEFECT Latest Confirmation in: ---
Developer Difficulty: ---

Description hjs 2010-12-07 11:53:12 UTC
creating libraries with the .jnilib extension is done in several places (at
least deliver.pl and macosx-create-bundle) with differing strategies. this
results in funny names like libuno_cppuhelpergcc3.dylib.3.jnilib.jnilib...
Comment 1 hjs 2010-12-07 11:54:56 UTC
CCed: sb ihi
Comment 2 hjs 2010-12-08 10:00:58 UTC
- .jnilib files are created at link time if SHLnCREATEJNILIB is set.
- they have regular entries in the d.lst
- no more .jnilib magic in deliver.pl
Comment 3 ivo.hinkelmann 2010-12-08 12:33:41 UTC
this is just for 2 libs?
Comment 4 ivo.hinkelmann 2010-12-08 12:34:52 UTC
this concept appears to me much more reliable ;)
Comment 5 Stephan Bergmann 2010-12-08 12:50:07 UTC
Grepping DEV300_m95 scp2 for "jnilib" shows that at least three libraries are
needed as jnilibs: libhsqldb.jnilib, libjava_uno.jnilib, and libjpipe.jnilib. 
While the first and last are addressed by
<http://hg.services.openoffice.org/cws/ause128/rev/604a09f512df>, the second one
appears to be still missing.

Furthermore, there are libraries implementing JNI functionality but which appear
not to be used with .jnilib names on Mac OS X (e.g., libjuh.dylib).  I will take
care to clean those up in a follow-up issue.
Comment 6 ivo.hinkelmann 2010-12-08 12:53:25 UTC
ok ... reopen the issue
Comment 7 ingo.schmidt-rosbiegal 2010-12-08 13:17:19 UTC
Looking into the setup script of an Mac installation set, I can see three
entries containing "jnilib". But two of them are Shortcuts. This means this are
links, that are created during installation (of the dmg file). Only the file
"libjpipe.jnilib" is as file included into the installation set. So only this
one file must be located in the solver.

1.
File gid_File_Dl_JavaUno
	Name = "libjava_uno.dylib";

Shortcut gid_Shortcut_Dl_JavaUno
	FileID = gid_File_Dl_JavaUno;
	Name = "libjava_uno.jnilib";

2.
File gid_File_Dl_Jpipe
	Name = "libjpipe.jnilib";

3.
File gid_File_Lib_Hsqldb_2
	Name = "libhsqldb.dylib";

Shortcut gid_Shortcut_Lib_Hsqldb_2
	FileID = gid_File_Lib_Hsqldb_2;
	Name = "libhsqldb.jnilib";
Comment 8 hjs 2010-12-08 14:19:08 UTC
adding .jnilib creation for libjava_uno.dylib. it's not needed for packing but
some tests may require it.
Comment 9 ivo.hinkelmann 2010-12-08 15:11:43 UTC
ok now we have also libjava_uno.jnilib