 d9cafb7ca2
			
		
	
	d9cafb7ca2
	
	
	
		
			
			java_doc rule was using $(location :foo) instead of $(classpath :foo) macro. This is similar but not the same. The subtle difference is the replacement that is done for java_library() when only exported deps are used. While location macro doesn't work here, because there are no out file associated with such a java_library, classpath macro correctly resolves the dependencies. Change-Id: Iab67dff9c332027765bc0da8c46810de11974de8
		
			
				
	
	
		
			39 lines
		
	
	
		
			853 B
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			39 lines
		
	
	
		
			853 B
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| def java_doc(
 | |
|     name,
 | |
|     title,
 | |
|     pkgs,
 | |
|     paths,
 | |
|     srcs = [],
 | |
|     deps = [],
 | |
|     visibility = [],
 | |
|     do_it_wrong = False,
 | |
|   ):
 | |
|   if do_it_wrong:
 | |
|     sourcepath = paths
 | |
|   else:
 | |
|     sourcepath = ['$SRCDIR/' + n for n in paths]
 | |
|   genrule(
 | |
|     name = name,
 | |
|     cmd = ' '.join([
 | |
|       'while ! test -f .buckconfig; do cd ..; done;',
 | |
|       'javadoc',
 | |
|       '-quiet',
 | |
|       '-protected',
 | |
|       '-encoding UTF-8',
 | |
|       '-charset UTF-8',
 | |
|       '-notimestamp',
 | |
|       '-windowtitle "' + title + '"',
 | |
|       '-link http://docs.oracle.com/javase/7/docs/api',
 | |
|       '-subpackages ',
 | |
|       ':'.join(pkgs),
 | |
|       '-sourcepath ',
 | |
|       ':'.join(sourcepath),
 | |
|       ' -classpath ',
 | |
|       ':'.join(['$(classpath %s)' % n for n in deps]),
 | |
|       '-d $TMP',
 | |
|     ]) + ';jar cf $OUT -C $TMP .',
 | |
|     srcs = srcs,
 | |
|     out = name + '.jar',
 | |
|     visibility = visibility,
 | |
| )
 |