-
Notifications
You must be signed in to change notification settings - Fork 32
Open
Description
The JAVAFILES target builds a class file out of the java sources. However, it runs javac $(JFLAGS) ... , where JFLAGS is defined further up in the Makefile as -d $(pkglibdir). $(pkglibdir) is usually under /usr so not writable for a non-root user.
I think what is needed here is building the class file into a temporary build directory under the current (source) directory and then installing the class file into $pglibdir during make install.
Currently, the build fails with a cryptic error while writing JDBCUtils error that is not obviously due to permission problems:
javac -d /usr/lib/postgresql/16/lib /<<PKGBUILDDIR>>/JDBCUtils.java /<<PKGBUILDDIR>>/JDBCDriverLoader.java /<<PKGBUILDDIR>>/JDBCConnection.java /<<PKGBUILDDIR>>/resultSetInfo.java
/<<PKGBUILDDIR>>/JDBCUtils.java:29: error: error while writing JDBCUtils: /usr/lib/postgresql/16/lib/JDBCUtils.class
public class JDBCUtils {
^
Note: /<<PKGBUILDDIR>>/JDBCConnection.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
1 error
make[1]: *** [/<<PKGBUILDDIR>>/Makefile:37: JAVAFILES] Error 1
Metadata
Metadata
Assignees
Labels
No labels