From 26345f1357371ec12cf81fd77b56e7220bb0fcea Mon Sep 17 00:00:00 2001 From: ReneEnjilian Date: Wed, 30 Jul 2025 22:38:36 +0200 Subject: [PATCH 01/57] project structure --- .../apache/sysds/cujava/CudaException.java | 23 +++++++++++++++++++ .../java/org/apache/sysds/cujava/Pointer.java | 23 +++++++++++++++++++ .../java/org/apache/sysds/cujava/Sizeof.java | 23 +++++++++++++++++++ .../org/apache/sysds/cujava/cudaDataType.java | 23 +++++++++++++++++++ .../apache/sysds/cujava/runtime/CuJava.java | 23 +++++++++++++++++++ .../sysds/cujava/runtime/cudaDeviceProp.java | 23 +++++++++++++++++++ .../sysds/cujava/runtime/cudaError.java | 23 +++++++++++++++++++ .../sysds/cujava/runtime/cudaMemcpyKind.java | 23 +++++++++++++++++++ 8 files changed, 184 insertions(+) create mode 100644 src/main/java/org/apache/sysds/cujava/CudaException.java create mode 100644 src/main/java/org/apache/sysds/cujava/Pointer.java create mode 100644 src/main/java/org/apache/sysds/cujava/Sizeof.java create mode 100644 src/main/java/org/apache/sysds/cujava/cudaDataType.java create mode 100644 src/main/java/org/apache/sysds/cujava/runtime/CuJava.java create mode 100644 src/main/java/org/apache/sysds/cujava/runtime/cudaDeviceProp.java create mode 100644 src/main/java/org/apache/sysds/cujava/runtime/cudaError.java create mode 100644 src/main/java/org/apache/sysds/cujava/runtime/cudaMemcpyKind.java diff --git a/src/main/java/org/apache/sysds/cujava/CudaException.java b/src/main/java/org/apache/sysds/cujava/CudaException.java new file mode 100644 index 00000000000..00869b25c18 --- /dev/null +++ b/src/main/java/org/apache/sysds/cujava/CudaException.java @@ -0,0 +1,23 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +package org.apache.sysds.cujava; + +public class CudaException { +} diff --git a/src/main/java/org/apache/sysds/cujava/Pointer.java b/src/main/java/org/apache/sysds/cujava/Pointer.java new file mode 100644 index 00000000000..2569a041435 --- /dev/null +++ b/src/main/java/org/apache/sysds/cujava/Pointer.java @@ -0,0 +1,23 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +package org.apache.sysds.cujava; + +public class Pointer { +} diff --git a/src/main/java/org/apache/sysds/cujava/Sizeof.java b/src/main/java/org/apache/sysds/cujava/Sizeof.java new file mode 100644 index 00000000000..6f7b9df5dcd --- /dev/null +++ b/src/main/java/org/apache/sysds/cujava/Sizeof.java @@ -0,0 +1,23 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +package org.apache.sysds.cujava; + +public class Sizeof { +} diff --git a/src/main/java/org/apache/sysds/cujava/cudaDataType.java b/src/main/java/org/apache/sysds/cujava/cudaDataType.java new file mode 100644 index 00000000000..00ecba0669a --- /dev/null +++ b/src/main/java/org/apache/sysds/cujava/cudaDataType.java @@ -0,0 +1,23 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +package org.apache.sysds.cujava; + +public class cudaDataType { +} diff --git a/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java b/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java new file mode 100644 index 00000000000..6c51b669379 --- /dev/null +++ b/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java @@ -0,0 +1,23 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +package org.apache.sysds.cujava.runtime; + +public class CuJava { +} diff --git a/src/main/java/org/apache/sysds/cujava/runtime/cudaDeviceProp.java b/src/main/java/org/apache/sysds/cujava/runtime/cudaDeviceProp.java new file mode 100644 index 00000000000..89c57486be4 --- /dev/null +++ b/src/main/java/org/apache/sysds/cujava/runtime/cudaDeviceProp.java @@ -0,0 +1,23 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +package org.apache.sysds.cujava.runtime; + +public class cudaDeviceProp { +} diff --git a/src/main/java/org/apache/sysds/cujava/runtime/cudaError.java b/src/main/java/org/apache/sysds/cujava/runtime/cudaError.java new file mode 100644 index 00000000000..accfa3df842 --- /dev/null +++ b/src/main/java/org/apache/sysds/cujava/runtime/cudaError.java @@ -0,0 +1,23 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +package org.apache.sysds.cujava.runtime; + +public class cudaError { +} diff --git a/src/main/java/org/apache/sysds/cujava/runtime/cudaMemcpyKind.java b/src/main/java/org/apache/sysds/cujava/runtime/cudaMemcpyKind.java new file mode 100644 index 00000000000..aaedd46b8ee --- /dev/null +++ b/src/main/java/org/apache/sysds/cujava/runtime/cudaMemcpyKind.java @@ -0,0 +1,23 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +package org.apache.sysds.cujava.runtime; + +public class cudaMemcpyKind { +} From e4328e300e0b59be839156a490b2a446d39ada11 Mon Sep 17 00:00:00 2001 From: ReneEnjilian Date: Thu, 31 Jul 2025 15:17:03 +0200 Subject: [PATCH 02/57] identify driver package in cuJava --- .../apache/sysds/cujava/driver/CUcontext.java | 23 +++++++++++++++++++ .../apache/sysds/cujava/driver/CUdevice.java | 23 +++++++++++++++++++ .../cujava/driver/CUdevice_attribute.java | 23 +++++++++++++++++++ .../sysds/cujava/driver/CUdeviceptr.java | 23 +++++++++++++++++++ .../sysds/cujava/driver/CUfunction.java | 23 +++++++++++++++++++ .../apache/sysds/cujava/driver/CUmodule.java | 23 +++++++++++++++++++ .../apache/sysds/cujava/driver/CUresult.java | 23 +++++++++++++++++++ .../apache/sysds/cujava/driver/CUstream.java | 23 +++++++++++++++++++ .../sysds/cujava/driver/CuJavaDriver.java | 23 +++++++++++++++++++ 9 files changed, 207 insertions(+) create mode 100644 src/main/java/org/apache/sysds/cujava/driver/CUcontext.java create mode 100644 src/main/java/org/apache/sysds/cujava/driver/CUdevice.java create mode 100644 src/main/java/org/apache/sysds/cujava/driver/CUdevice_attribute.java create mode 100644 src/main/java/org/apache/sysds/cujava/driver/CUdeviceptr.java create mode 100644 src/main/java/org/apache/sysds/cujava/driver/CUfunction.java create mode 100644 src/main/java/org/apache/sysds/cujava/driver/CUmodule.java create mode 100644 src/main/java/org/apache/sysds/cujava/driver/CUresult.java create mode 100644 src/main/java/org/apache/sysds/cujava/driver/CUstream.java create mode 100644 src/main/java/org/apache/sysds/cujava/driver/CuJavaDriver.java diff --git a/src/main/java/org/apache/sysds/cujava/driver/CUcontext.java b/src/main/java/org/apache/sysds/cujava/driver/CUcontext.java new file mode 100644 index 00000000000..d1c2d11fef1 --- /dev/null +++ b/src/main/java/org/apache/sysds/cujava/driver/CUcontext.java @@ -0,0 +1,23 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +package org.apache.sysds.cujava.driver; + +public class CUcontext { +} diff --git a/src/main/java/org/apache/sysds/cujava/driver/CUdevice.java b/src/main/java/org/apache/sysds/cujava/driver/CUdevice.java new file mode 100644 index 00000000000..eb3aee28188 --- /dev/null +++ b/src/main/java/org/apache/sysds/cujava/driver/CUdevice.java @@ -0,0 +1,23 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +package org.apache.sysds.cujava.driver; + +public class CUdevice { +} diff --git a/src/main/java/org/apache/sysds/cujava/driver/CUdevice_attribute.java b/src/main/java/org/apache/sysds/cujava/driver/CUdevice_attribute.java new file mode 100644 index 00000000000..94edb14e099 --- /dev/null +++ b/src/main/java/org/apache/sysds/cujava/driver/CUdevice_attribute.java @@ -0,0 +1,23 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +package org.apache.sysds.cujava.driver; + +public class CUdevice_attribute { +} diff --git a/src/main/java/org/apache/sysds/cujava/driver/CUdeviceptr.java b/src/main/java/org/apache/sysds/cujava/driver/CUdeviceptr.java new file mode 100644 index 00000000000..2dc89620852 --- /dev/null +++ b/src/main/java/org/apache/sysds/cujava/driver/CUdeviceptr.java @@ -0,0 +1,23 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +package org.apache.sysds.cujava.driver; + +public class CUdeviceptr { +} diff --git a/src/main/java/org/apache/sysds/cujava/driver/CUfunction.java b/src/main/java/org/apache/sysds/cujava/driver/CUfunction.java new file mode 100644 index 00000000000..fcfe7ecab02 --- /dev/null +++ b/src/main/java/org/apache/sysds/cujava/driver/CUfunction.java @@ -0,0 +1,23 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +package org.apache.sysds.cujava.driver; + +public class CUfunction { +} diff --git a/src/main/java/org/apache/sysds/cujava/driver/CUmodule.java b/src/main/java/org/apache/sysds/cujava/driver/CUmodule.java new file mode 100644 index 00000000000..65dc72c9bf5 --- /dev/null +++ b/src/main/java/org/apache/sysds/cujava/driver/CUmodule.java @@ -0,0 +1,23 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +package org.apache.sysds.cujava.driver; + +public class CUmodule { +} diff --git a/src/main/java/org/apache/sysds/cujava/driver/CUresult.java b/src/main/java/org/apache/sysds/cujava/driver/CUresult.java new file mode 100644 index 00000000000..91a9b8ad61f --- /dev/null +++ b/src/main/java/org/apache/sysds/cujava/driver/CUresult.java @@ -0,0 +1,23 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +package org.apache.sysds.cujava.driver; + +public class CUresult { +} diff --git a/src/main/java/org/apache/sysds/cujava/driver/CUstream.java b/src/main/java/org/apache/sysds/cujava/driver/CUstream.java new file mode 100644 index 00000000000..c5e3ec2f298 --- /dev/null +++ b/src/main/java/org/apache/sysds/cujava/driver/CUstream.java @@ -0,0 +1,23 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +package org.apache.sysds.cujava.driver; + +public class CUstream { +} diff --git a/src/main/java/org/apache/sysds/cujava/driver/CuJavaDriver.java b/src/main/java/org/apache/sysds/cujava/driver/CuJavaDriver.java new file mode 100644 index 00000000000..a8757d74e73 --- /dev/null +++ b/src/main/java/org/apache/sysds/cujava/driver/CuJavaDriver.java @@ -0,0 +1,23 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +package org.apache.sysds.cujava.driver; + +public class CuJavaDriver { +} From b4dc0e0f2cbf7f0b416873f936d185f3c5b67007 Mon Sep 17 00:00:00 2001 From: ReneEnjilian Date: Fri, 1 Aug 2025 22:42:39 +0200 Subject: [PATCH 03/57] design new Pointer class for GPU --- .../sysds/cujava/NativePointerObject.java | 42 ++++++ .../java/org/apache/sysds/cujava/Pointer.java | 120 +++++++++++++++++- 2 files changed, 161 insertions(+), 1 deletion(-) create mode 100644 src/main/java/org/apache/sysds/cujava/NativePointerObject.java diff --git a/src/main/java/org/apache/sysds/cujava/NativePointerObject.java b/src/main/java/org/apache/sysds/cujava/NativePointerObject.java new file mode 100644 index 00000000000..13936bf00ef --- /dev/null +++ b/src/main/java/org/apache/sysds/cujava/NativePointerObject.java @@ -0,0 +1,42 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +package org.apache.sysds.cujava; + +public abstract class NativePointerObject { + + private final long nativePointer; + + protected NativePointerObject() { + nativePointer = 0; + } + + protected NativePointerObject(long nativePointer) { + this.nativePointer = nativePointer; + } + + protected NativePointerObject(NativePointerObject other) { + this.nativePointer = other.nativePointer; + } + + protected long getNativePointer() { + return nativePointer; + } + +} diff --git a/src/main/java/org/apache/sysds/cujava/Pointer.java b/src/main/java/org/apache/sysds/cujava/Pointer.java index 2569a041435..05647c0e4dc 100644 --- a/src/main/java/org/apache/sysds/cujava/Pointer.java +++ b/src/main/java/org/apache/sysds/cujava/Pointer.java @@ -19,5 +19,123 @@ package org.apache.sysds.cujava; -public class Pointer { +import java.nio.Buffer; +import java.nio.ByteBuffer; +import java.nio.CharBuffer; +import java.nio.ShortBuffer; +import java.nio.IntBuffer; +import java.nio.FloatBuffer; +import java.nio.LongBuffer; +import java.nio.DoubleBuffer; +import java.nio.ByteOrder; + +public class Pointer extends NativePointerObject { + + private long byteOffset; + private final Buffer buffer; + private final NativePointerObject[] pointers; + + public Pointer() { + buffer = null; + pointers = null; + byteOffset = 0; + } + + protected Pointer(long nativePointerValue) { + super(nativePointerValue); + buffer = null; + pointers = null; + byteOffset = 0; + } + + private Pointer(Buffer buffer) { + this.buffer = buffer; + pointers = null; + byteOffset = 0; + } + + private Pointer(NativePointerObject[] pointers) { + buffer = null; + this.pointers = pointers; + byteOffset = 0; + } + + protected Pointer(Pointer other) { + super(other.getNativePointer()); + this.buffer = other.buffer; + this.pointers = other.pointers; + this.byteOffset = other.byteOffset; + } + + protected Pointer(Pointer other, long byteOffset) { + this(other); + this.byteOffset += byteOffset; + } + + public static Pointer to(byte[] values) { + return new Pointer(ByteBuffer.wrap(values)); + } + + public static Pointer to(char[] values) { + return new Pointer(CharBuffer.wrap(values)); + } + + public static Pointer to(short[] values) { + return new Pointer(ShortBuffer.wrap(values)); + } + + public static Pointer to(int[] values) { + return new Pointer(IntBuffer.wrap(values)); + } + + public static Pointer to(float[] values) { + return new Pointer(FloatBuffer.wrap(values)); + } + + public static Pointer to(long[] values) { + return new Pointer(LongBuffer.wrap(values)); + } + + public static Pointer to(double[] values) { + return new Pointer(DoubleBuffer.wrap(values)); + } + + public static Pointer to(NativePointerObject... pointers) { + if(pointers == null) { + throw new IllegalArgumentException( + "The pointers argument is null – expected one or more NativePointerObject references."); + } + return new Pointer(pointers); + } + + public Pointer withByteOffset(long byteOffset) { + return new Pointer(this, byteOffset); + } + + protected long getByteOffset() { + return byteOffset; + } + + public ByteBuffer getByteBuffer(long byteOffset, long byteSize) { + if(buffer == null) { + return null; + } + if(!(buffer instanceof ByteBuffer internalByteBuffer)) { + return null; + } + ByteBuffer byteBuffer = internalByteBuffer.slice(); + byteBuffer.limit(Math.toIntExact(byteOffset + byteSize)); + byteBuffer.position(Math.toIntExact(byteOffset)); + return byteBuffer.slice().order(ByteOrder.nativeOrder()); + } + + public static Pointer to(Buffer buffer) { + if(buffer == null || (!buffer.isDirect() && !buffer.hasArray())) { + throw new IllegalArgumentException( + "Invalid buffer: argument is null or neither direct nor backed by an array; " + + "expected a non-null direct buffer or one with an accessible backing array."); + } + return new Pointer(buffer); + } + } From 3aacd42c1c5b28985d5aaf2a4b85c46bc17377db Mon Sep 17 00:00:00 2001 From: ReneEnjilian Date: Sat, 2 Aug 2025 03:27:00 +0200 Subject: [PATCH 04/57] implement sizeof class --- .../java/org/apache/sysds/cujava/Sizeof.java | 24 +++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/src/main/java/org/apache/sysds/cujava/Sizeof.java b/src/main/java/org/apache/sysds/cujava/Sizeof.java index 6f7b9df5dcd..b53a1fa6e81 100644 --- a/src/main/java/org/apache/sysds/cujava/Sizeof.java +++ b/src/main/java/org/apache/sysds/cujava/Sizeof.java @@ -20,4 +20,28 @@ package org.apache.sysds.cujava; public class Sizeof { + + /** + * CUDA expects sizes in bytes. The JDK provides sizes in bits. + * Hence, we divide the sizes provided by the JDK by 8 to obtain bytes. + */ + + public static final int BYTE = Byte.SIZE / 8; + + public static final int CHAR = Character.SIZE / 8; + + public static final int SHORT = Short.SIZE / 8; + + public static final int INT = Integer.SIZE / 8; + + public static final int FLOAT = Float.SIZE / 8; + + public static final int LONG = Long.SIZE / 8; + + public static final int DOUBLE = Double.SIZE / 8; + + // Keep constructor private to prevent instantiation + private Sizeof() { + } + } From eac4673c74f019579b7fdd97d7c397f85cd99ffd Mon Sep 17 00:00:00 2001 From: ReneEnjilian Date: Sat, 2 Aug 2025 19:23:54 +0200 Subject: [PATCH 05/57] implement CudaDataType class --- .../org/apache/sysds/cujava/CudaDataType.java | 100 ++++++++++++++++++ .../org/apache/sysds/cujava/cudaDataType.java | 23 ---- 2 files changed, 100 insertions(+), 23 deletions(-) create mode 100644 src/main/java/org/apache/sysds/cujava/CudaDataType.java delete mode 100644 src/main/java/org/apache/sysds/cujava/cudaDataType.java diff --git a/src/main/java/org/apache/sysds/cujava/CudaDataType.java b/src/main/java/org/apache/sysds/cujava/CudaDataType.java new file mode 100644 index 00000000000..17dda43ff28 --- /dev/null +++ b/src/main/java/org/apache/sysds/cujava/CudaDataType.java @@ -0,0 +1,100 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +package org.apache.sysds.cujava; + +/** + * CUDA data-type constants (mirror of cudaDataType_t). Grouped: all real (R) types first, then complex (C) companions. + */ + +public class CudaDataType { + + /* ─────── Real scalars ─────── */ + + /** 16-bit IEEE half-precision float (fp16) */ + public static final int CUDA_R_16F = 2; + /** 16-bit bfloat16 */ + public static final int CUDA_R_16BF = 14; + /** 32-bit IEEE single-precision float */ + public static final int CUDA_R_32F = 0; + /** 64-bit IEEE double-precision float */ + public static final int CUDA_R_64F = 1; + + /** 4-bit signed integer */ + public static final int CUDA_R_4I = 16; + /** 4-bit unsigned integer */ + public static final int CUDA_R_4U = 18; + /** 8-bit signed integer */ + public static final int CUDA_R_8I = 3; + /** 8-bit unsigned integer */ + public static final int CUDA_R_8U = 8; + /** 16-bit signed integer */ + public static final int CUDA_R_16I = 20; + /** 16-bit unsigned integer */ + public static final int CUDA_R_16U = 22; + /** 32-bit signed integer */ + public static final int CUDA_R_32I = 10; + /** 32-bit unsigned integer */ + public static final int CUDA_R_32U = 12; + /** 64-bit signed integer */ + public static final int CUDA_R_64I = 24; + /** 64-bit unsigned integer */ + public static final int CUDA_R_64U = 26; + + /** 8-bit float, FP-8 format E4M3 */ + public static final int CUDA_R_8F_E4M3 = 28; + /** 8-bit float, FP-8 format E5M2 */ + public static final int CUDA_R_8F_E5M2 = 29; + + + /* ─────── Complex pairs (real + imaginary) ─────── */ + + /** two fp16 numbers: (real, imag) */ + public static final int CUDA_C_16F = 6; + /** two bfloat16 numbers */ + public static final int CUDA_C_16BF = 15; + /** two 32-bit floats */ + public static final int CUDA_C_32F = 4; + /** two 64-bit doubles */ + public static final int CUDA_C_64F = 5; + + /** two 4-bit signed integers */ + public static final int CUDA_C_4I = 17; + /** two 4-bit unsigned integers */ + public static final int CUDA_C_4U = 19; + /** two 8-bit signed integers */ + public static final int CUDA_C_8I = 7; + /** two 8-bit unsigned integers */ + public static final int CUDA_C_8U = 9; + /** two 16-bit signed integers */ + public static final int CUDA_C_16I = 21; + /** two 16-bit unsigned integers */ + public static final int CUDA_C_16U = 23; + /** two 32-bit signed integers */ + public static final int CUDA_C_32I = 11; + /** two 32-bit unsigned integers */ + public static final int CUDA_C_32U = 13; + /** two 64-bit signed integers */ + public static final int CUDA_C_64I = 25; + /** two 64-bit unsigned integers */ + public static final int CUDA_C_64U = 27; + + private CudaDataType() { /* utility class – no instantiation */ } + +} diff --git a/src/main/java/org/apache/sysds/cujava/cudaDataType.java b/src/main/java/org/apache/sysds/cujava/cudaDataType.java deleted file mode 100644 index 00ecba0669a..00000000000 --- a/src/main/java/org/apache/sysds/cujava/cudaDataType.java +++ /dev/null @@ -1,23 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, - * software distributed under the License is distributed on an - * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY - * KIND, either express or implied. See the License for the - * specific language governing permissions and limitations - * under the License. - */ - -package org.apache.sysds.cujava; - -public class cudaDataType { -} From 80bf049c5a25aa2e9396a9c1de9c04acbc464b54 Mon Sep 17 00:00:00 2001 From: ReneEnjilian Date: Sat, 2 Aug 2025 19:27:13 +0200 Subject: [PATCH 06/57] refactor class names --- .../cujava/runtime/{cudaDeviceProp.java => CudaDeviceProp.java} | 2 +- .../sysds/cujava/runtime/{cudaError.java => CudaError.java} | 2 +- .../cujava/runtime/{cudaMemcpyKind.java => CudaMemcpyKind.java} | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) rename src/main/java/org/apache/sysds/cujava/runtime/{cudaDeviceProp.java => CudaDeviceProp.java} (96%) rename src/main/java/org/apache/sysds/cujava/runtime/{cudaError.java => CudaError.java} (97%) rename src/main/java/org/apache/sysds/cujava/runtime/{cudaMemcpyKind.java => CudaMemcpyKind.java} (96%) diff --git a/src/main/java/org/apache/sysds/cujava/runtime/cudaDeviceProp.java b/src/main/java/org/apache/sysds/cujava/runtime/CudaDeviceProp.java similarity index 96% rename from src/main/java/org/apache/sysds/cujava/runtime/cudaDeviceProp.java rename to src/main/java/org/apache/sysds/cujava/runtime/CudaDeviceProp.java index 89c57486be4..6bd9820e847 100644 --- a/src/main/java/org/apache/sysds/cujava/runtime/cudaDeviceProp.java +++ b/src/main/java/org/apache/sysds/cujava/runtime/CudaDeviceProp.java @@ -19,5 +19,5 @@ package org.apache.sysds.cujava.runtime; -public class cudaDeviceProp { +public class CudaDeviceProp { } diff --git a/src/main/java/org/apache/sysds/cujava/runtime/cudaError.java b/src/main/java/org/apache/sysds/cujava/runtime/CudaError.java similarity index 97% rename from src/main/java/org/apache/sysds/cujava/runtime/cudaError.java rename to src/main/java/org/apache/sysds/cujava/runtime/CudaError.java index accfa3df842..265a9a4fa9a 100644 --- a/src/main/java/org/apache/sysds/cujava/runtime/cudaError.java +++ b/src/main/java/org/apache/sysds/cujava/runtime/CudaError.java @@ -19,5 +19,5 @@ package org.apache.sysds.cujava.runtime; -public class cudaError { +public class CudaError { } diff --git a/src/main/java/org/apache/sysds/cujava/runtime/cudaMemcpyKind.java b/src/main/java/org/apache/sysds/cujava/runtime/CudaMemcpyKind.java similarity index 96% rename from src/main/java/org/apache/sysds/cujava/runtime/cudaMemcpyKind.java rename to src/main/java/org/apache/sysds/cujava/runtime/CudaMemcpyKind.java index aaedd46b8ee..2b13ad4c79d 100644 --- a/src/main/java/org/apache/sysds/cujava/runtime/cudaMemcpyKind.java +++ b/src/main/java/org/apache/sysds/cujava/runtime/CudaMemcpyKind.java @@ -19,5 +19,5 @@ package org.apache.sysds.cujava.runtime; -public class cudaMemcpyKind { +public class CudaMemcpyKind { } From 4ac9c83292b34898423a985dd0579566833a943d Mon Sep 17 00:00:00 2001 From: ReneEnjilian Date: Sat, 2 Aug 2025 21:23:55 +0200 Subject: [PATCH 07/57] add CudaException --- .../java/org/apache/sysds/cujava/CudaException.java | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/src/main/java/org/apache/sysds/cujava/CudaException.java b/src/main/java/org/apache/sysds/cujava/CudaException.java index 00869b25c18..bcc901af3e9 100644 --- a/src/main/java/org/apache/sysds/cujava/CudaException.java +++ b/src/main/java/org/apache/sysds/cujava/CudaException.java @@ -19,5 +19,15 @@ package org.apache.sysds.cujava; -public class CudaException { +public class CudaException extends RuntimeException { + + private static final long serialVersionUID = 1587809813906124159L; + + public CudaException(String message) { + super(message); + } + + public CudaException(String message, Throwable cause) { + super(message, cause); + } } From 12d5caf9e01bcc320bc12bbc2c48e99889e1b651 Mon Sep 17 00:00:00 2001 From: ReneEnjilian Date: Sun, 3 Aug 2025 14:40:04 +0200 Subject: [PATCH 08/57] cpp/jni structure --- src/main/cpp/jni/CMakeLists.txt | 0 src/main/cpp/jni/cublas/cujava_cublas.cpp | 18 ++++++++++++++++++ src/main/cpp/jni/cudnn/cujava_cudnn.cpp | 18 ++++++++++++++++++ src/main/cpp/jni/cusolver/cujava_cusolver.cpp | 18 ++++++++++++++++++ src/main/cpp/jni/cusparse/cujava_cusparse.cpp | 18 ++++++++++++++++++ src/main/cpp/jni/driver/cujava_driver.cpp | 18 ++++++++++++++++++ src/main/cpp/jni/runtime /cujava_runtime.cpp | 18 ++++++++++++++++++ 7 files changed, 108 insertions(+) create mode 100644 src/main/cpp/jni/CMakeLists.txt create mode 100644 src/main/cpp/jni/cublas/cujava_cublas.cpp create mode 100644 src/main/cpp/jni/cudnn/cujava_cudnn.cpp create mode 100644 src/main/cpp/jni/cusolver/cujava_cusolver.cpp create mode 100644 src/main/cpp/jni/cusparse/cujava_cusparse.cpp create mode 100644 src/main/cpp/jni/driver/cujava_driver.cpp create mode 100644 src/main/cpp/jni/runtime /cujava_runtime.cpp diff --git a/src/main/cpp/jni/CMakeLists.txt b/src/main/cpp/jni/CMakeLists.txt new file mode 100644 index 00000000000..e69de29bb2d diff --git a/src/main/cpp/jni/cublas/cujava_cublas.cpp b/src/main/cpp/jni/cublas/cujava_cublas.cpp new file mode 100644 index 00000000000..042f3ce1f39 --- /dev/null +++ b/src/main/cpp/jni/cublas/cujava_cublas.cpp @@ -0,0 +1,18 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ diff --git a/src/main/cpp/jni/cudnn/cujava_cudnn.cpp b/src/main/cpp/jni/cudnn/cujava_cudnn.cpp new file mode 100644 index 00000000000..042f3ce1f39 --- /dev/null +++ b/src/main/cpp/jni/cudnn/cujava_cudnn.cpp @@ -0,0 +1,18 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ diff --git a/src/main/cpp/jni/cusolver/cujava_cusolver.cpp b/src/main/cpp/jni/cusolver/cujava_cusolver.cpp new file mode 100644 index 00000000000..042f3ce1f39 --- /dev/null +++ b/src/main/cpp/jni/cusolver/cujava_cusolver.cpp @@ -0,0 +1,18 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ diff --git a/src/main/cpp/jni/cusparse/cujava_cusparse.cpp b/src/main/cpp/jni/cusparse/cujava_cusparse.cpp new file mode 100644 index 00000000000..042f3ce1f39 --- /dev/null +++ b/src/main/cpp/jni/cusparse/cujava_cusparse.cpp @@ -0,0 +1,18 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ diff --git a/src/main/cpp/jni/driver/cujava_driver.cpp b/src/main/cpp/jni/driver/cujava_driver.cpp new file mode 100644 index 00000000000..042f3ce1f39 --- /dev/null +++ b/src/main/cpp/jni/driver/cujava_driver.cpp @@ -0,0 +1,18 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ diff --git a/src/main/cpp/jni/runtime /cujava_runtime.cpp b/src/main/cpp/jni/runtime /cujava_runtime.cpp new file mode 100644 index 00000000000..042f3ce1f39 --- /dev/null +++ b/src/main/cpp/jni/runtime /cujava_runtime.cpp @@ -0,0 +1,18 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ From 5602512437ff11e1bc8b893a78122c15f1713136 Mon Sep 17 00:00:00 2001 From: ReneEnjilian Date: Sun, 3 Aug 2025 20:05:35 +0200 Subject: [PATCH 09/57] implement CudaError --- .../sysds/cujava/runtime/CudaError.java | 830 ++++++++++++++++++ 1 file changed, 830 insertions(+) diff --git a/src/main/java/org/apache/sysds/cujava/runtime/CudaError.java b/src/main/java/org/apache/sysds/cujava/runtime/CudaError.java index 265a9a4fa9a..79e0c9fabc3 100644 --- a/src/main/java/org/apache/sysds/cujava/runtime/CudaError.java +++ b/src/main/java/org/apache/sysds/cujava/runtime/CudaError.java @@ -19,5 +19,835 @@ package org.apache.sysds.cujava.runtime; +/** + * This class replicates the Cuda error types from the CUDA runtime API. + * The descriptions are directly taken from the Documentation: + * https://docs.nvidia.com/cuda/archive/12.8.0/pdf/CUDA_Runtime_API.pdf + */ public class CudaError { + + /** + * The API call returned with no errors. In the case of query calls, this also means that the operation being + * queried is complete + */ + public static final int cudaSuccess = 0; + + /** + * This indicates that one or more of the parameters passed to the API call is not within an acceptable range of + * values. + */ + public static final int cudaErrorInvalidValue = 1; + + /** + * The API call failed because it was unable to allocate enough memory or other resources to perform the requested + * operation + */ + public static final int cudaErrorMemoryAllocation = 2; + + /** + * The API call failed because the CUDA driver and runtime could not be initialized. + */ + public static final int cudaErrorInitializationError = 3; + + /** + * This indicates that a CUDA Runtime API call cannot be executed because it is being called during process shut + * down, at a point in time after CUDA driver has been unloaded. + */ + public static final int cudaErrorCudartUnloading = 4; + + /** + * This indicates profiler is not initialized for this run. This can happen when the application is running with + * external profiling tools like visual profiler. + */ + public static final int cudaErrorProfilerDisabled = 5; + + /** + * This error return is deprecated as of CUDA 5.0. It is no longer an error to attempt to enable/disable the + * profiling via cudaProfilerStart or cudaProfilerStop without initialization. + */ + @Deprecated + public static final int cudaErrorProfilerNotInitialized = 6; + + /** + * This error return is deprecated as of CUDA 5.0. It is no longer an error to call cudaProfilerStart() when + * profiling is already enabled. + */ + @Deprecated + public static final int cudaErrorProfilerAlreadyStarted = 7; + + /** + * This error return is deprecated as of CUDA 5.0. It is no longer an error to call cudaProfilerStop() when + * profiling is already disabled. + */ + @Deprecated + public static final int cudaErrorProfilerAlreadyStopped = 8; + + /** + * This indicates that a kernel launch is requesting resources that can never be satisfied by the current device. + * Requesting more shared memory per block than the device supports will trigger this error, as will requesting too + * many threads or blocks. See cudaDeviceProp for more device limitations. + */ + public static final int cudaErrorInvalidConfiguration = 9; + + /** + * This indicates that one or more of the pitch-related parameters passed to the API call is not within the + * acceptable range for pitch. + */ + public static final int cudaErrorInvalidPitchValue = 12; + + /** + * This indicates that the symbol name/identifier passed to the API call is not a valid name or identifier. + */ + public static final int cudaErrorInvalidSymbol = 13; + + /** + * This indicates that at least one host pointer passed to the API call is not a valid host pointer. This error + * return is deprecated as of CUDA 10.1. + */ + @Deprecated + public static final int cudaErrorInvalidHostPointer = 16; + + /** + * This indicates that at least one device pointer passed to the API call is not a valid device pointer. This error + * return is deprecated as of CUDA 10.1. + */ + @Deprecated + public static final int cudaErrorInvalidDevicePointer = 17; + + /** + * This indicates that the texture passed to the API call is not a valid texture. + */ + public static final int cudaErrorInvalidTexture = 18; + + /** + * This indicates that the texture binding is not valid. This occurs if you call cudaGetTextureAlignmentOffset() + * with an unbound texture. + */ + public static final int cudaErrorInvalidTextureBinding = 19; + + /** + * This indicates that the channel descriptor passed to the API call is not valid. This occurs if the format is not + * one of the formats specified by cudaChannelFormatKind, or if one of the dimensions is invalid. + */ + public static final int cudaErrorInvalidChannelDescriptor = 20; + + /** + * This indicates that the direction of the memcpy passed to the API call is not one of the types specified by + * cudaMemcpyKind. + */ + public static final int cudaErrorInvalidMemcpyDirection = 21; + + /** + * This indicated that the user has taken the address of a constant variable, which was forbidden up until the CUDA + * 3.1 release. This error return is deprecated as of CUDA 3.1. Variables in constant memory may now have their + * address taken by the runtime via cudaGetSymbolAddress(). + */ + @Deprecated + public static final int cudaErrorAddressOfConstant = 22; + + /** + * This indicated that a texture fetch was not able to be performed. This was previously used for device emulation + * of texture operations. This error return is deprecated as of CUDA 3.1. Device emulation mode was removed with the + * CUDA 3.1 release. + */ + @Deprecated + public static final int cudaErrorTextureFetchFailed = 23; + + /** + * This indicated that a texture was not bound for access. This was previously used for device emulation of texture + * operations. his error return is deprecated as of CUDA 3.1. Device emulation mode was removed with the CUDA 3.1 + * release + */ + @Deprecated + public static final int cudaErrorTextureNotBound = 24; + + /** + * This indicated that a synchronization operation had failed. This was previously used for some device emulation + * functions. This error return is deprecated as of CUDA 3.1. Device emulation mode was removed with the CUDA 3.1 + * release. + */ + @Deprecated + public static final int cudaErrorSynchronizationError = 25; + + /** + * This indicates that a non-float texture was being accessed with linear filtering. This is not supported by CUDA. + */ + public static final int cudaErrorInvalidFilterSetting = 26; + + /** + * This indicates that an attempt was made to read an unsupported data type as a normalized float. This is not + * supported by CUDA. + */ + public static final int cudaErrorInvalidNormSetting = 27; + + /** + * Mixing of device and device emulation code was not allowed. This error return is deprecated as of CUDA 3.1. + * Device emulation mode was removed with the CUDA 3.1 release. + */ + @Deprecated + public static final int cudaErrorMixedDeviceExecution = 28; + + /** + * This indicates that the API call is not yet implemented. Production releases of CUDA will never return this + * error. This error return is deprecated as of CUDA 4.1. + */ + @Deprecated + public static final int cudaErrorNotYetImplemented = 31; + + /** + * This indicated that an emulated device pointer exceeded the 32-bit address range. Deprecated This error return is + * deprecated as of CUDA 3.1. Device emulation mode was removed with the CUDA 3.1 release. + */ + public static final int cudaErrorMemoryValueTooLarge = 32; + + /** + * This indicates that the CUDA driver that the application has loaded is a stub library. Applications that run with + * the stub rather than a real driver loaded will result in CUDA API returning this error. + */ + public static final int cudaErrorStubLibrary = 34; + + /** + * This indicates that the installed NVIDIA CUDA driver is older than the CUDA runtime library. This is not a + * supported configuration. Users should install an updated NVIDIA display driver to allow the application to run + */ + public static final int cudaErrorInsufficientDriver = 35; + + /** + * This indicates that the API call requires a newer CUDA driver than the one currently installed. Users should + * install an updated NVIDIA CUDA driver to allow the API call to succeed. + */ + public static final int cudaErrorCallRequiresNewerDriver = 36; + + /** + * This indicates that the surface passed to the API call is not a valid surface. + */ + public static final int cudaErrorInvalidSurface = 37; + + /** + * This indicates that multiple global or constant variables (across separate CUDA source files in the application) + * share the same string name. + */ + public static final int cudaErrorDuplicateVariableName = 43; + + /** + * This indicates that multiple textures (across separate CUDA source files in the application) share the same + * string name. + */ + public static final int cudaErrorDuplicateTextureName = 44; + + /** + * This indicates that multiple surfaces (across separate CUDA source files in the application) share the same + * string name. + */ + public static final int cudaErrorDuplicateSurfaceName = 45; + + /** + * This indicates that all CUDA devices are busy or unavailable at the current time. Devices are often + * busy/unavailable due to use of cudaComputeModeProhibited, cudaComputeModeExclusiveProcess, or when long-running + * CUDA kernels have filled up the GPU and are blocking new work from starting. They can also be unavailable due to + * memory constraints on a device that already has active CUDA work being performed. + */ + public static final int cudaErrorDevicesUnavailable = 46; + + /** + * This indicates that the current context is not compatible with this the CUDA Runtime. This can only occur if you + * are using CUDA Runtime/Driver interoperability and have created an existing Driver context using the driver API. + * The Driver context may be incompatible either because the Driver context was created using an older version of + * the API, because the Runtime API call expects a primary driver context and the Driver context is not primary, or + * because the Driver context has been destroyed. Please see Interactions with the CUDA Driver API" for more + * information. + */ + public static final int cudaErrorIncompatibleDriverContext = 49; + + /** + * The device function being invoked (usually via cudaLaunchKernel()) was not previously configured via the + * cudaConfigureCall() function. + */ + public static final int cudaErrorMissingConfiguration = 52; + + /** + * This indicated that a previous kernel launch failed. This was previously used for device emulation of kernel + * launches. This error return is deprecated as of CUDA 3.1. Device emulation mode was removed with the CUDA 3.1 + * release. + */ + @Deprecated + public static final int cudaErrorPriorLaunchFailure = 53; + + /** + * This error indicates that a device runtime grid launch did not occur because the depth of the child grid would + * exceed the maximum supported number of nested grid launches. + */ + public static final int cudaErrorLaunchMaxDepthExceeded = 65; + + /** + * This error indicates that a grid launch did not occur because the kernel uses file-scoped textures which are + * unsupported by the device runtime. Kernels launched via the device runtime only support textures created with the + * Texture Object API's. + */ + public static final int cudaErrorLaunchFileScopedTex = 66; + + /** + * This error indicates that a grid launch did not occur because the kernel uses file-scoped surfaces which are + * unsupported by the device runtime. Kernels launched via the device runtime only support surfaces created with the + * Surface Object API's. + */ + public static final int cudaErrorLaunchFileScopedSurf = 67; + + /** + * This error indicates that a call to cudaDeviceSynchronize made from the device runtime failed because the call + * was made at grid depth greater than either the default (2 levels of grids) or user specified device limit + * cudaLimitDevRuntimeSyncDepth. To be able to synchronize on launched grids at a greater depth successfully, the + * maximum nested depth at which cudaDeviceSynchronize will be called must be specified with the + * cudaLimitDevRuntimeSyncDepth limit to the cudaDeviceSetLimit api before the host-side launch of a kernel using + * the device runtime. Keep in mind that additional levels of sync depth require the runtime to reserve large + * amounts of device memory that cannot be used for user allocations. Note that cudaDeviceSynchronize made from + * device runtime is only supported on devices of compute capability < 9.0. + */ + public static final int cudaErrorSyncDepthExceeded = 68; + + /** + * This error indicates that a device runtime grid launch failed because the launch would exceed the limit + * cudaLimitDevRuntimePendingLaunchCount. For this launch to proceed successfully, cudaDeviceSetLimit must be called + * to set the cudaLimitDevRuntimePendingLaunchCount to be higher than the upper bound of outstanding launches that + * can be issued to the device runtime. Keep in mind that raising the limit of pending device runtime launches will + * require the runtime to reserve device memory that cannot be used for user allocations. + */ + public static final int cudaErrorLaunchPendingCountExceeded = 69; + + /** + * The requested device function does not exist or is not compiled for the proper device architecture. + */ + public static final int cudaErrorInvalidDeviceFunction = 98; + + /** + * This indicates that no CUDA-capable devices were detected by the installed CUDA driver. + */ + public static final int cudaErrorNoDevice = 100; + + /** + * This indicates that the device ordinal supplied by the user does not correspond to a valid CUDA device or that + * the action requested is invalid for the specified device. + */ + public static final int cudaErrorInvalidDevice = 101; + + /** + * This indicates that the device doesn't have a valid Grid License. + */ + public static final int cudaErrorDeviceNotLicensed = 102; + + /** + * By default, the CUDA runtime may perform a minimal set of self-tests, as well as CUDA driver tests, to establish + * the validity of both. Introduced in CUDA 11.2, this error return indicates that at least one of these tests has + * failed and the validity of either the runtime or the driver could not be established. + */ + public static final int cudaErrorSoftwareValidityNotEstablished = 103; + + /** + * This indicates an internal startup failure in the CUDA runtime. + */ + public static final int cudaErrorStartupFailure = 127; + + /** + * This indicates that the device kernel image is invalid. + */ + public static final int cudaErrorInvalidKernelImage = 200; + + /** + * This most frequently indicates that there is no context bound to the current thread. This can also be returned if + * the context passed to an API call is not a valid handle (such as a context that has had cuCtxDestroy() invoked on + * it). This can also be returned if a user mixes different API versions (i.e. 3010 context with 3020 API calls). + * See cuCtxGetApiVersion() for more details. + */ + public static final int cudaErrorDeviceUninitialized = 201; + + /** + * This indicates that the buffer object could not be mapped. + */ + public static final int cudaErrorMapBufferObjectFailed = 205; + + /** + * This indicates that the buffer object could not be unmapped. + */ + public static final int cudaErrorUnmapBufferObjectFailed = 206; + + /** + * This indicates that the specified array is currently mapped and thus cannot be destroyed. + */ + public static final int cudaErrorArrayIsMapped = 207; + + /** + * This indicates that the resource is already mapped. + */ + public static final int cudaErrorAlreadyMapped = 208; + + /** + * This indicates that there is no kernel image available that is suitable for the device. This can occur when a + * user specifies code generation options for a particular CUDA source file that do not include the corresponding + * device configuration. + */ + public static final int cudaErrorNoKernelImageForDevice = 209; + + /** + * This indicates that a resource has already been acquired. + */ + public static final int cudaErrorAlreadyAcquired = 210; + + /** + * This indicates that a resource is not mapped. + */ + public static final int cudaErrorNotMapped = 211; + + /** + * This indicates that a mapped resource is not available for access as an array. + */ + public static final int cudaErrorNotMappedAsArray = 212; + + /** + * This indicates that a mapped resource is not available for access as a pointer. + */ + public static final int cudaErrorNotMappedAsPointer = 213; + + /** + * This indicates that an uncorrectable ECC error was detected during execution. + */ + public static final int cudaErrorECCUncorrectable = 214; + + /** + * This indicates that the cudaLimit passed to the API call is not supported by the active device. + */ + public static final int cudaErrorUnsupportedLimit = 215; + + /** + * This indicates that a call tried to access an exclusive-thread device that is already in use by a different + * thread. + */ + public static final int cudaErrorDeviceAlreadyInUse = 216; + + /** + * This error indicates that P2P access is not supported across the given devices. + */ + public static final int cudaErrorPeerAccessUnsupported = 217; + + /** + * A PTX compilation failed. The runtime may fall back to compiling PTX if an application does not contain a + * suitable binary for the current device. + */ + public static final int cudaErrorInvalidPtx = 218; + + /** + * This indicates an error with the OpenGL or DirectX context. + */ + public static final int cudaErrorInvalidGraphicsContext = 219; + + /** + * This indicates that an uncorrectable NVLink error was detected during the execution. + */ + public static final int cudaErrorNvlinkUncorrectable = 220; + + /** + * This indicates that the PTX JIT compiler library was not found. The JIT Compiler library is used for PTX + * compilation. The runtime may fall back to compiling PTX if an application does not contain a suitable binary for + * the current device. + */ + public static final int cudaErrorJitCompilerNotFound = 221; + + /** + * This indicates that the provided PTX was compiled with an unsupported toolchain. The most common reason for this, + * is the PTX was generated by a compiler newer than what is supported by the CUDA driver and PTX JIT compiler. + */ + public static final int cudaErrorUnsupportedPtxVersion = 222; + + /** + * This indicates that the JIT compilation was disabled. The JIT compilation compiles PTX. The runtime may fall back + * to compiling PTX if an application does not contain a suitable binary for the current device. + */ + public static final int cudaErrorJitCompilationDisabled = 223; + + /** + * This indicates that the provided execution affinity is not supported by the device. + */ + public static final int cudaErrorUnsupportedExecAffinity = 224; + + /** + * This indicates that the code to be compiled by the PTX JIT contains unsupported call to cudaDeviceSynchronize. + */ + public static final int cudaErrorUnsupportedDevSideSync = 225; + + /** + * This indicates that an exception occurred on the device that is now contained by the GPU's error containment + * capability. Common causes are - a. Certain types of invalid accesses of peer GPU memory over nvlink b. Certain + * classes of hardware errors This leaves the process in an inconsistent state and any further CUDA work will return + * the same error. To continue using CUDA, the process must be terminated and relaunched + */ + public static final int cudaErrorContained = 226; + + /** + * This indicates that the device kernel source is invalid. + */ + public static final int cudaErrorInvalidSource = 300; + + /** + * This indicates that the file specified was not found. + */ + public static final int cudaErrorFileNotFound = 301; + + /** + * This indicates that a link to a shared object failed to resolve. + */ + public static final int cudaErrorSharedObjectSymbolNotFound = 302; + + /** + * This indicates that initialization of a shared object failed. + */ + public static final int cudaErrorSharedObjectInitFailed = 303; + + /** + * This error indicates that an OS call failed. + */ + public static final int cudaErrorOperatingSystem = 304; + + /** + * This indicates that a resource handle passed to the API call was not valid. Resource handles are opaque types + * like cudaStream_t and cudaEvent_t. + */ + public static final int cudaErrorInvalidResourceHandle = 400; + + /** + * This indicates that a resource required by the API call is not in a valid state to perform the requested + * operation. + */ + public static final int cudaErrorIllegalState = 401; + + /** + * This indicates an attempt was made to introspect an object in a way that would discard semantically important + * information. This is either due to the object using funtionality newer than the API version used to introspect it + * or omission of optional return arguments. + */ + public static final int cudaErrorLossyQuery = 402; + + /** + * This indicates that a named symbol was not found. Examples of symbols are global/constant variable names, driver + * function names, texture names, and surface names. + */ + public static final int cudaErrorSymbolNotFound = 500; + + /** + * This indicates that asynchronous operations issued previously have not completed yet. This result is not actually + * an error, but must be indicated differently than cudaSuccess (which indicates completion). Calls that may return + * this value include cudaEventQuery() and cudaStreamQuery(). + */ + public static final int cudaErrorNotReady = 600; + + /** + * The device encountered a load or store instruction on an invalid memory address. This leaves the process in an + * inconsistent state and any further CUDA work will return the same error. To continue using CUDA, the process must + * be terminated and relaunched. + */ + public static final int cudaErrorIllegalAddress = 700; + + /** + * This indicates that a launch did not occur because it did not have appropriate resources. Although this error is + * similar to cudaErrorInvalidConfiguration, this error usually indicates that the user has attempted to pass too + * many arguments to the device kernel, or the kernel launch specifies too many threads for the kernel's register + * count. + */ + public static final int cudaErrorLaunchOutOfResources = 701; + + /** + * This indicates that the device kernel took too long to execute. This can only occur if timeouts are enabled - see + * the device property kernelExecTimeoutEnabled for more information. This leaves the process in an inconsistent + * state and any further CUDA work will return the same error. To continue using CUDA, the process must be + * terminated and relaunched. + */ + public static final int cudaErrorLaunchTimeout = 702; + + /** + * This error indicates a kernel launch that uses an incompatible texturing mode. + */ + public static final int cudaErrorLaunchIncompatibleTexturing = 703; + + /** + * This error indicates that a call to cudaDeviceEnablePeerAccess() is trying to re-enable peer addressing on from a + * context which has already had peer addressing enabled. + */ + public static final int cudaErrorPeerAccessAlreadyEnabled = 704; + + /** + * This error indicates that cudaDeviceDisablePeerAccess() is trying to disable peer addressing which has not been + * enabled yet via cudaDeviceEnablePeerAccess() + */ + public static final int cudaErrorPeerAccessNotEnabled = 705; + + /** + * This indicates that the user has called cudaSetValidDevices(), cudaSetDeviceFlags(), cudaD3D9SetDirect3DDevice(), + * cudaD3D10SetDirect3DDevice, cudaD3D11SetDirect3DDevice(), or cudaVDPAUSetVDPAUDevice() after initializing the + * CUDA runtime by calling non-device management operations (allocating memory and launching kernels are examples of + * non-device management operations). This error can also be returned if using runtime/driver interoperability and + * there is an existing CUcontext active on the host thread. + */ + public static final int cudaErrorSetOnActiveProcess = 708; + + /** + * This error indicates that the context current to the calling thread has been destroyed using cuCtxDestroy, or is + * a primary context which has not yet been initialized. + */ + public static final int cudaErrorContextIsDestroyed = 709; + + /** + * An assert triggered in device code during kernel execution. The device cannot be used again. All existing + * allocations are invalid. To continue using CUDA, the process must be terminated and relaunched + */ + public static final int cudaErrorAssert = 710; + + /** + * This error indicates that the hardware resources required to enable peer access have been exhausted for one or + * more of the devices passed to cudaEnablePeerAccess(). + */ + public static final int cudaErrorTooManyPeers = 711; + + /** + * This error indicates that the memory range passed to cudaHostRegister() has already been registered. + */ + public static final int cudaErrorHostMemoryAlreadyRegistered = 712; + + /** + * This error indicates that the pointer passed to cudaHostUnregister() does not correspond to any currently + * registered memory region. + */ + public static final int cudaErrorHostMemoryNotRegistered = 713; + + /** + * Device encountered an error in the call stack during kernel execution, possibly due to stack corruption or + * exceeding the stack size limit. This leaves the process in an inconsistent state and any further CUDA work will + * return the same error. To continue using CUDA, the process must be terminated and relaunched. + */ + public static final int cudaErrorHardwareStackError = 714; + + /** + * The device encountered an illegal instruction during kernel execution This leaves the process in an inconsistent + * state and any further CUDA work will return the same error. To continue using CUDA, the process must be + * terminated and relaunched. + */ + public static final int cudaErrorIllegalInstruction = 715; + + /** + * The device encountered a load or store instruction on a memory address which is not aligned. This leaves the + * process in an inconsistent state and any further CUDA work will return the same error. To continue using CUDA, + * the process must be terminated and relaunched. + */ + public static final int cudaErrorMisalignedAddress = 716; + + /** + * While executing a kernel, the device encountered an instruction which can only operate on memory locations in + * certain address spaces (global, shared, or local), but was supplied a memory address not belonging to an allowed + * address space. This leaves the process in an inconsistent state and any further CUDA work will return the same + * error. To continue using CUDA, the process must be terminated and relaunched. + */ + public static final int cudaErrorInvalidAddressSpace = 717; + + /** + * The device encountered an invalid program counter. This leaves the process in an inconsistent state and any + * further CUDA work will return the same error. To continue using CUDA, the process must be terminated and + * relaunched. + */ + public static final int cudaErrorInvalidPc = 718; + + /** + * An exception occurred on the device while executing a kernel. Common causes include dereferencing an invalid + * device pointer and accessing out of bounds shared memory. Less common cases can be system specific - more + * information about these cases can be found in the system specific user guide. This leaves the process in an + * inconsistent state and any further CUDA work will return the same error. To continue using CUDA, the process must + * be terminated and relaunched. + */ + public static final int cudaErrorLaunchFailure = 719; + + /** + * This error indicates that the number of blocks launched per grid for a kernel that was launched via either + * cudaLaunchCooperativeKernel or cudaLaunchCooperativeKernelMultiDevice exceeds the maximum number of blocks as + * allowed by cudaOccupancyMaxActiveBlocksPerMultiprocessor or + * cudaOccupancyMaxActiveBlocksPerMultiprocessorWithFlags times the number of multiprocessors as specified by the + * device attribute cudaDevAttrMultiProcessorCount. + */ + public static final int cudaErrorCooperativeLaunchTooLarge = 720; + + /** + * An exception occurred on the device while exiting a kernel using tensor memory: the tensor memory was not + * completely deallocated. This leaves the process in an inconsistent state and any further CUDA work will return + * the same error. To continue using CUDA, the process must be terminated and relaunched. + */ + public static final int cudaErrorTensorMemoryLeak = 721; + + /** + * This error indicates the attempted operation is not permitted. + */ + public static final int cudaErrorNotPermitted = 800; + + /** + * This error indicates the attempted operation is not supported on the current system or device. + */ + public static final int cudaErrorNotSupported = 801; + + /** + * This error indicates that the system is not yet ready to start any CUDA work. To continue using CUDA, verify the + * system configuration is in a valid state and all required driver daemons are actively running. More information + * about this error can be found in the system specific user guide. + */ + public static final int cudaErrorSystemNotReady = 802; + + /** + * This error indicates that there is a mismatch between the versions of the display driver and the CUDA driver. + * Refer to the compatibility documentation for supported versions. + */ + public static final int cudaErrorSystemDriverMismatch = 803; + + /** + * This error indicates that the system was upgraded to run with forward compatibility but the visible hardware + * detected by CUDA does not support this configuration. Refer to the compatibility documentation for the supported + * hardware matrix or ensure that only supported hardware is visible during initialization via the + * CUDA_VISIBLE_DEVICES environment variable. + */ + public static final int cudaErrorCompatNotSupportedOnDevice = 804; + + /** + * This error indicates that the MPS client failed to connect to the MPS control daemon or the MPS server. + */ + public static final int cudaErrorMpsConnectionFailed = 805; + + /** + * This error indicates that the remote procedural call between the MPS server and the MPS client failed. + */ + public static final int cudaErrorMpsRpcFailure = 806; + + /** + * This error indicates that the MPS server is not ready to accept new MPS client requests. This error can be + * returned when the MPS server is in the process of recovering from a fatal failure. + */ + public static final int cudaErrorMpsServerNotReady = 807; + + /** + * This error indicates that the hardware resources required to create MPS client have been exhausted. + */ + public static final int cudaErrorMpsMaxClientsReached = 808; + + /** + * This error indicates the hardware resources required to device connections have been exhausted. + */ + public static final int cudaErrorMpsMaxConnectionsReached = 809; + + /** + * This error indicates that the MPS client has been terminated by the server. To continue using CUDA, the process + * must be terminated and relaunched. + */ + public static final int cudaErrorMpsClientTerminated = 810; + + /** + * This error indicates, that the program is using CUDA Dynamic Parallelism, but the current configuration, like + * MPS, does not support it. + */ + public static final int cudaErrorCdpNotSupported = 811; + + /** + * This error indicates, that the program contains an unsupported interaction between different versions of CUDA + * Dynamic Parallelism. + */ + public static final int cudaErrorCdpVersionMismatch = 812; + + /** + * The operation is not permitted when the stream is capturing. + */ + public static final int cudaErrorStreamCaptureUnsupported = 900; + + /** + * The current capture sequence on the stream has been invalidated due to a previous error. + */ + public static final int cudaErrorStreamCaptureInvalidated = 901; + + /** + * The operation would have resulted in a merge of two independent capture sequences. + */ + public static final int cudaErrorStreamCaptureMerge = 902; + + /** + * The capture was not initiated in this stream. + */ + public static final int cudaErrorStreamCaptureUnmatched = 903; + + /** + * The capture sequence contains a fork that was not joined to the primary stream. + */ + public static final int cudaErrorStreamCaptureUnjoined = 904; + + /** + * A dependency would have been created which crosses the capture sequence boundary. Only implicit in-stream + * ordering dependencies are allowed to cross the boundary. + */ + public static final int cudaErrorStreamCaptureIsolation = 905; + + /** + * The operation would have resulted in a disallowed implicit dependency on a current capture sequence from + * cudaStreamLegacy. + */ + public static final int cudaErrorStreamCaptureImplicit = 906; + + /** + * The operation is not permitted on an event which was last recorded in a capturing stream. + */ + public static final int cudaErrorCapturedEvent = 907; + + /** + * A stream capture sequence not initiated with the cudaStreamCaptureModeRelaxed argument to cudaStreamBeginCapture + * was passed to cudaStreamEndCapture in a different thread. + */ + public static final int cudaErrorStreamCaptureWrongThread = 908; + + /** + * This indicates that the wait operation has timed out. + */ + public static final int cudaErrorTimeout = 909; + + /** + * This error indicates that the graph update was not performed because it included changes which violated + * constraints specific to instantiated graph update. + */ + public static final int cudaErrorGraphExecUpdateFailure = 910; + + /** + * This indicates that an async error has occurred in a device outside of CUDA. If CUDA was waiting for an external + * device's signal before consuming shared data, the external device signaled an error indicating that the data is + * not valid for consumption. This leaves the process in an inconsistent state and any further CUDA work will return + * the same error. To continue using CUDA, the process must be terminated and relaunched. + */ + public static final int cudaErrorExternalDevice = 911; + + /** + * This indicates that a kernel launch error has occurred due to cluster misconfiguration. + */ + public static final int cudaErrorInvalidClusterSize = 912; + + /** + * Indiciates a function handle is not loaded when calling an API that requires a loaded function. + */ + public static final int cudaErrorFunctionNotLoaded = 913; + + /** + * This error indicates one or more resources passed in are not valid resource types for the operation. + */ + public static final int cudaErrorInvalidResourceType = 914; + + /** + * This error indicates one or more resources are insufficient or non-applicable for the operation. + */ + public static final int cudaErrorInvalidResourceConfiguration = 915; + + /** + * This indicates that an unknown internal error has occurred. + */ + public static final int cudaErrorUnknown = 999; + + public static final int cudaErrorApiFailureBase = 10000; + + private CudaError() { + // prevent instantiation. + } + } From d5a7a1bbfae4ee979df0213082df04d576b4ec0b Mon Sep 17 00:00:00 2001 From: ReneEnjilian Date: Sun, 3 Aug 2025 22:42:02 +0200 Subject: [PATCH 10/57] implement CudaDeviceProp --- .../sysds/cujava/runtime/CudaDeviceProp.java | 480 ++++++++++++++++++ 1 file changed, 480 insertions(+) diff --git a/src/main/java/org/apache/sysds/cujava/runtime/CudaDeviceProp.java b/src/main/java/org/apache/sysds/cujava/runtime/CudaDeviceProp.java index 6bd9820e847..18c5e1ea7bc 100644 --- a/src/main/java/org/apache/sysds/cujava/runtime/CudaDeviceProp.java +++ b/src/main/java/org/apache/sysds/cujava/runtime/CudaDeviceProp.java @@ -19,5 +19,485 @@ package org.apache.sysds.cujava.runtime; +/** + * This class replicates the CUDA device properties (cudaDeviceProp). + * The descriptions are directly taken from the Documentation: + * https://docs.nvidia.com/cuda/archive/12.8.0/pdf/CUDA_Runtime_API.pdf + */ public class CudaDeviceProp { + + /** + * The maximum value of cudaAccessPolicyWindow::num_bytes. + */ + public int accessPolicyMaxWindowSize; + + /** + * Number of asynchronous engines + */ + public int asyncEngineCount; + + /** + * Device can map host memory with cudaHostAlloc/cudaHostGetDevicePointer + */ + public int canMapHostMemory; + + /** + * Device can access host registered memory at the same virtual address as the CPU + */ + public int canUseHostPointerForRegisteredMem; + + /** + * @deprecated in CUDA 12 Clock frequency in kilohertz + */ + public int clockRate; + + /** + * Indicates device supports cluster launch + */ + public int clusterLaunch; + + /** + * @deprecated Compute mode (See cudaComputeMode) + */ + public int computeMode; + + /** + * Device supports Compute Preemption + */ + public int computePreemptionSupported; + + /** + * Device can possibly execute multiple kernels concurrently + */ + public int concurrentKernels; + + /** + * Device can coherently access managed memory concurrently with the CPU + */ + public int concurrentManagedAccess; + + /** + * Device supports launching cooperative kernels via cudaLaunchCooperativeKernel + */ + public int cooperativeLaunch; + + /** + * @deprecated cudaLaunchCooperativeKernelMultiDevice is deprecated. + */ + public int cooperativeMultiDeviceLaunch; + + /** + * 1 if the device supports deferred mapping CUDA arrays and CUDA mipmapped arrays + */ + public int deferredMappingCudaArraySupported; + + /** + * Device can concurrently copy memory and execute a kernel. Deprecated. Use instead asyncEngineCount. + */ + public int deviceOverlap; + + /** + * Host can directly access managed memory on the device without migration. + */ + public int directManagedMemAccessFromHost; + + /** + * Device has ECC support enabled + */ + public int ECCEnabled; + + /** + * Device supports caching globals in L1 + */ + public int globalL1CacheSupported; + + /** + * Bitmask to be interpreted according to the cudaFlushGPUDirectRDMAWritesOptions enum + */ + public int gpuDirectRDMAFlushWritesOptions; + + /** + * 1 if the device supports GPUDirect RDMA APIs, 0 otherwise + */ + public int gpuDirectRDMASupported; + + /** + * See the cudaGPUDirectRDMAWritesOrdering enum for numerical values + */ + public int gpuDirectRDMAWritesOrdering; + + /** + * Link between the device and the host supports native atomic operations + */ + public int hostNativeAtomicSupported; + + /** + * Device supports using the cudaHostRegister flag cudaHostRegisterReadOnly to register memory that must be mapped + * as read-only to the GPU + */ + public int hostRegisterReadOnlySupported; + + /** + * Device supports host memory registration via cudaHostRegister. + */ + public int hostRegisterSupported; + + /** + * Device is integrated as opposed to discrete + */ + public int integrated; + + /** + * Device supports IPC Events. + */ + public int ipcEventSupported; + + /** + * Device is on a multi-GPU board + */ + public int isMultiGpuBoard; + + /** + * @deprecated Specified whether there is a run time limit on kernels + */ + public int kernelExecTimeoutEnabled; + + /** + * Size of L2 cache in bytes + */ + public int l2CacheSize; + + /** + * Device supports caching locals in L1 + */ + public int localL1CacheSupported; + + /** + * 8-byte locally unique identifier. Value is undefined on TCC and non-Windows platforms + */ + public byte[] luid = new byte[8]; + + /** + * LUID device node mask. Value is undefined on TCC and non-Windows platforms + */ + public int luidDeviceNodeMask; + + /** + * Major compute capability + */ + public int major; + + /** + * Device supports allocating managed memory on this system + */ + public int managedMemory; + + /** + * Maximum number of resident blocks per multiprocessor + */ + public int maxBlocksPerMultiProcessor; + + /** + * Maximum size of each dimension of a grid + */ + public int[] maxGridSize = new int[3]; + + /** + * Maximum 1D surface size + */ + public int maxSurface1D; + + /** + * Maximum 1D layered surface dimensions + */ + public int[] maxSurface1DLayered = new int[2]; + + /** + * Maximum 2D surface dimensions + */ + public int[] maxSurface2D = new int[2]; + + /** + * Maximum 2D layered surface dimensions + */ + public int[] maxSurface2DLayered = new int[3]; + + /** + * Maximum 3D surface dimensions + */ + public int[] maxSurface3D = new int[3]; + + /** + * Maximum Cubemap surface dimensions + */ + public int maxSurfaceCubemap; + + /** + * Maximum Cubemap layered surface dimensions + */ + public int[] maxSurfaceCubemapLayered = new int[2]; + + /** + * Maximum 1D texture size + */ + public int maxTexture1D; + + /** + * Maximum 1D layered texture dimensions + */ + public int[] maxTexture1DLayered = new int[2]; + + /** + * @deprecated Use cudaDeviceGetTexture1DLinearMaxWidth() or cuDeviceGetTexture1DLinearMaxWidth() instead. + */ + public int maxTexture1DLinear; + + /** + * Maximum 1D mipmapped texture size + */ + public int maxTexture1DMipmap; + + /** + * Maximum 2D texture dimensions + */ + public int[] maxTexture2D = new int[2]; + + /** + * Maximum 2D texture dimensions if texture gather operations have to be performed + */ + public int[] maxTexture2DGather = new int[2]; + + /** + * Maximum 2D layered texture dimensions + */ + public int[] maxTexture2DLayered = new int[3]; + + /** + * Maximum dimensions (width, height, pitch) for 2D textures bound to pitched memory + */ + public int[] maxTexture2DLinear = new int[3]; + + /** + * Maximum 2D mipmapped texture dimensions + */ + public int[] maxTexture2DMipmap = new int[2]; + + /** + * Maximum 3D texture dimensions + */ + public int[] maxTexture3D = new int[3]; + + /** + * Contains the maximum alternate 3D texture dimensions + */ + public int[] maxTexture3DAlt = new int[3]; + + /** + * Maximum Cubemap texture dimensions + */ + public int maxTextureCubemap; + + /** + * Maximum Cubemap layered texture dimensions + */ + public int[] maxTextureCubemapLayered = new int[2]; + + /** + * The maximum sizes of each dimension of a block; + */ + public int[] maxThreadsDim = new int[3]; + + /** + * The maximum number of threads per block; + */ + public int maxThreadsPerBlock; + + /** + * The number of maximum resident threads per multiprocessor. + */ + public int maxThreadsPerMultiProcessor; + + /** + * The memory bus width in bits + */ + public int memoryBusWidth; + + /** + * @deprecated The peak memory clock frequency in kilohertz. + */ + public int memoryClockRate; + + /** + * 1 if the device supports using the cudaMallocAsync and cudaMemPool family of APIs, 0 otherwise + */ + public int memoryPoolsSupported; + + /** + * Bitmask of handle types supported with mempool-based IPC + */ + public int memoryPoolSupportedHandleTypes; + + /** + * The maximum pitch in bytes allowed by the memory copy functions that involve memory regions allocated through + * cudaMallocPitch(); + */ + public long memPitch; + + /** + * Minor compute capability + */ + public int minor; + + /** + * Unique identifier for a group of devices on the same multi-GPU board + */ + public int multiGpuBoardGroupID; + + /** + * Number of multiprocessors on device + */ + public int multiProcessorCount; + + /** + * An ASCII string identifying the device; + */ + public byte[] name = new byte[256]; + + /** + * Device supports coherently accessing pageable memory without calling cudaHostRegister on it + */ + public int pageableMemoryAccess; + + /** + * Device accesses pageable memory via the host's page tables + */ + public int pageableMemoryAccessUsesHostPageTables; + + /** + * PCI bus ID of the device + */ + public int pciBusID; + + /** + * PCI device ID of the device + */ + public int pciDeviceID; + + /** + * PCI domain ID of the device + */ + public int pciDomainID; + + /** + * Device's maximum l2 persisting lines capacity setting in bytes + */ + public int persistingL2CacheMaxSize; + + /** + * The maximum number of 32-bit registers available to a thread block; this number is shared by all thread blocks + * simultaneously resident on a multiprocessor; + */ + public int regsPerBlock; + + /** + * 32-bit registers available per multiprocessor + */ + public int regsPerMultiprocessor; + + /** + * Reserved for future use + */ + public int reserved; + + /** + * Shared memory reserved by CUDA driver per block in bytes + */ + public long reservedSharedMemPerBlock; + + /** + * The maximum amount of shared memory available to a thread block in bytes; this amount is shared by all thread + * blocks simultaneously resident on a multiprocessor; + */ + public long sharedMemPerBlock; + + /** + * Per device maximum shared memory per block usable by special opt in + */ + public long sharedMemPerBlockOptin; + + /** + * Shared memory available per multiprocessor in bytes + */ + public long sharedMemPerMultiprocessor; + + /** + * @deprecated Ratio of single precision performance (in floating-point operations per second) to double precision + * performance + */ + public int singleToDoublePrecisionPerfRatio; + + /** + * 1 if the device supports sparse CUDA arrays and sparse CUDA mipmapped arrays, 0 otherwise + */ + public int sparseCudaArraySupported; + + /** + * Is 1 if the device supports stream priorities, or 0 if it is not supported + */ + public int streamPrioritiesSupported; + + /** + * Alignment requirements for surfaces + */ + public long surfaceAlignment; + + /** + * 1 if device is a Tesla device using TCC driver, 0 otherwise + */ + public int tccDriver; + + /** + * The alignment requirement; texture base addresses that are aligned to textureAlignment bytes do not need an + * offset applied to texture fetches; + */ + public long textureAlignment; + + /** + * Pitch alignment requirement for texture references bound to pitched memory + */ + public long texturePitchAlignment; + + /** + * External timeline semaphore interop is supported on the device + */ + public int timelineSemaphoreInteropSupported; + + /** + * The total amount of constant memory available on the device in bytes; + */ + public long totalConstMem; + + /** + * The total amount of global memory available on the device in bytes; + */ + public long totalGlobalMem; + + /** + * 1 if the device shares a unified address space with the host and 0 otherwise. + */ + public int unifiedAddressing; + + /** + * Indicates device supports unified pointers + */ + public int unifiedFunctionPointers; + + /** + * The warp size in threads; + */ + public int warpSize; + + // Uninitialized CudaDeviceProp object + public CudaDeviceProp() { + } } From 015f3dad1010afb28b08d0e0aea1239fdbfa5dd5 Mon Sep 17 00:00:00 2001 From: ReneEnjilian Date: Sun, 3 Aug 2025 22:43:08 +0200 Subject: [PATCH 11/57] add liceanse to Cmake --- src/main/cpp/jni/CMakeLists.txt | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/src/main/cpp/jni/CMakeLists.txt b/src/main/cpp/jni/CMakeLists.txt index e69de29bb2d..cc59154f3c3 100644 --- a/src/main/cpp/jni/CMakeLists.txt +++ b/src/main/cpp/jni/CMakeLists.txt @@ -0,0 +1,20 @@ +#------------------------------------------------------------- +# +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# +#------------------------------------------------------------- From 08bb4053221981c14f6df34de5209eac2265939f Mon Sep 17 00:00:00 2001 From: ReneEnjilian Date: Sun, 3 Aug 2025 23:32:18 +0200 Subject: [PATCH 12/57] implement CudaMemcpyKind --- .../sysds/cujava/runtime/CudaMemcpyKind.java | 30 +++++++++++++++++++ 1 file changed, 30 insertions(+) diff --git a/src/main/java/org/apache/sysds/cujava/runtime/CudaMemcpyKind.java b/src/main/java/org/apache/sysds/cujava/runtime/CudaMemcpyKind.java index 2b13ad4c79d..900cc153e9a 100644 --- a/src/main/java/org/apache/sysds/cujava/runtime/CudaMemcpyKind.java +++ b/src/main/java/org/apache/sysds/cujava/runtime/CudaMemcpyKind.java @@ -20,4 +20,34 @@ package org.apache.sysds.cujava.runtime; public class CudaMemcpyKind { + + /** + * Host -> Host + */ + public static final int cudaMemcpyHostToHost = 0; + + /** + * Host -> Device + */ + public static final int cudaMemcpyHostToDevice = 1; + + /** + * Device -> Host + */ + public static final int cudaMemcpyDeviceToHost = 2; + + /** + * Device -> Device + */ + public static final int cudaMemcpyDeviceToDevice = 3; + + /** + * Autodetect the copy direction (host↔device or device↔device) based on the source and destination pointers. + * Requires Unified Virtual Addressing (UVA). + */ + public static final int cudaMemcpyDefault = 4; + + private CudaMemcpyKind() { + // Private constructor to prevent instantiation. + } } From ed9b4a3bee1fe9a5ecce49c5a88e2c345c2dd952 Mon Sep 17 00:00:00 2001 From: ReneEnjilian Date: Mon, 4 Aug 2025 01:41:27 +0200 Subject: [PATCH 13/57] load lib --- .../apache/sysds/cujava/CuJavaLibLoader.java | 69 +++++++++++++++++++ 1 file changed, 69 insertions(+) create mode 100644 src/main/java/org/apache/sysds/cujava/CuJavaLibLoader.java diff --git a/src/main/java/org/apache/sysds/cujava/CuJavaLibLoader.java b/src/main/java/org/apache/sysds/cujava/CuJavaLibLoader.java new file mode 100644 index 00000000000..879e320b0e9 --- /dev/null +++ b/src/main/java/org/apache/sysds/cujava/CuJavaLibLoader.java @@ -0,0 +1,69 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +package org.apache.sysds.cujava; + +import java.io.IOException; +import java.io.InputStream; +import java.nio.file.*; +public class CuJavaLibLoader { + + private static final String LIB_BASE = "cujava"; // -> libcujava.so / cujava.dll / libcujava.dylib + private static volatile boolean loaded = false; // fast-path guard + + /** Public entry – call from static blocks in binding classes. */ + public static synchronized void load() { + if (loaded) // already done + return; + + // 1) Standard lookup (java.library.path or OS default locations) + try { + System.loadLibrary(LIB_BASE); + loaded = true; + return; + } + catch (UnsatisfiedLinkError ignored) { + // Fall through to JAR extraction + } + + // 2) Extract the library from the JAR (/lib/...) to a temp file + String fileName = System.mapLibraryName(LIB_BASE); // platform-specific + String resource = "/lib/" + fileName; // matches lib in the POM + + try (InputStream in = CuJavaLibLoader.class.getResourceAsStream(resource)) { + if (in == null) + throw new UnsatisfiedLinkError( + "Native library not found inside JAR at " + resource); + + Path tmp = Files.createTempFile("cujava_", fileName); + tmp.toFile().deleteOnExit(); + Files.copy(in, tmp, StandardCopyOption.REPLACE_EXISTING); + + System.load(tmp.toAbsolutePath().toString()); + loaded = true; + } + catch (IOException | UnsatisfiedLinkError e) { + throw (UnsatisfiedLinkError) + new UnsatisfiedLinkError("Failed to load native CUDA bridge: " + e).initCause(e); + } + } + + private CuJavaLibLoader() { /* no instances */ } + +} From 9616023849cf045bc7afdf5a8c0f7ce3828b97cd Mon Sep 17 00:00:00 2001 From: ReneEnjilian Date: Mon, 4 Aug 2025 18:55:49 +0200 Subject: [PATCH 14/57] set cuda error messaging --- .../apache/sysds/cujava/runtime/CuJava.java | 31 ++++ .../sysds/cujava/runtime/CudaError.java | 143 ++++++++++++++++++ 2 files changed, 174 insertions(+) diff --git a/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java b/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java index 6c51b669379..cb2dd2d37d3 100644 --- a/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java +++ b/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java @@ -19,5 +19,36 @@ package org.apache.sysds.cujava.runtime; +import org.apache.sysds.cujava.CuJavaLibLoader; +import org.apache.sysds.cujava.Pointer; +import org.apache.sysds.cujava.CudaException; +import org.apache.sysds.cujava.runtime.CudaError; + public class CuJava { + + private static boolean exceptionsEnabled = true; + + private CuJava(){ + + } + + static { + CuJavaLibLoader.load(); + } + + private static int checkCudaError(int result) + { + if (exceptionsEnabled && result != CudaError.cudaSuccess) + { + throw new CudaException(CudaError.errorString(result)); + } + return result; + } + + public static int cudaMemcpy(Pointer dst, Pointer src, long count, int cudaMemcpyKind_kind) { + return checkCudaError(cudaMemcpyNative(dst, src, count, cudaMemcpyKind_kind)); + } + private static native int cudaMemcpyNative(Pointer dst, Pointer src, long count, int cudaMemcpyKind_kind); + + } diff --git a/src/main/java/org/apache/sysds/cujava/runtime/CudaError.java b/src/main/java/org/apache/sysds/cujava/runtime/CudaError.java index 79e0c9fabc3..81612fdef51 100644 --- a/src/main/java/org/apache/sysds/cujava/runtime/CudaError.java +++ b/src/main/java/org/apache/sysds/cujava/runtime/CudaError.java @@ -846,6 +846,149 @@ public class CudaError { public static final int cudaErrorApiFailureBase = 10000; + /** + * Returns the string representation of the passes error code. + */ + public static String errorString(int err){ + return switch(err){ + case cudaSuccess -> "cudaSuccess"; + case cudaErrorInvalidValue -> "cudaErrorInvalidValue"; + case cudaErrorMemoryAllocation -> "cudaErrorMemoryAllocation"; + case cudaErrorInitializationError -> "cudaErrorInitializationError"; + case cudaErrorCudartUnloading -> "cudaErrorCudartUnloading"; + case cudaErrorProfilerDisabled -> "cudaErrorProfilerDisabled"; + case cudaErrorProfilerNotInitialized -> "cudaErrorProfilerNotInitialized"; + case cudaErrorProfilerAlreadyStarted -> "cudaErrorProfilerAlreadyStarted"; + case cudaErrorProfilerAlreadyStopped -> "cudaErrorProfilerAlreadyStopped"; + case cudaErrorInvalidConfiguration -> "cudaErrorInvalidConfiguration"; + case cudaErrorInvalidPitchValue -> "cudaErrorInvalidPitchValue"; + case cudaErrorInvalidSymbol -> "cudaErrorInvalidSymbol"; + case cudaErrorInvalidHostPointer -> "cudaErrorInvalidHostPointer"; + case cudaErrorInvalidDevicePointer -> "cudaErrorInvalidDevicePointer"; + case cudaErrorInvalidTexture -> "cudaErrorInvalidTexture"; + case cudaErrorInvalidTextureBinding -> "cudaErrorInvalidTextureBinding"; + case cudaErrorInvalidChannelDescriptor -> "cudaErrorInvalidChannelDescriptor"; + case cudaErrorInvalidMemcpyDirection -> "cudaErrorInvalidMemcpyDirection"; + case cudaErrorAddressOfConstant -> "cudaErrorAddressOfConstant"; + case cudaErrorTextureFetchFailed -> "cudaErrorTextureFetchFailed"; + case cudaErrorTextureNotBound -> "cudaErrorTextureNotBound"; + case cudaErrorSynchronizationError -> "cudaErrorSynchronizationError"; + case cudaErrorInvalidFilterSetting -> "cudaErrorInvalidFilterSetting"; + case cudaErrorInvalidNormSetting -> "cudaErrorInvalidNormSetting"; + case cudaErrorMixedDeviceExecution -> "cudaErrorMixedDeviceExecution"; + case cudaErrorNotYetImplemented -> "cudaErrorNotYetImplemented"; + case cudaErrorMemoryValueTooLarge -> "cudaErrorMemoryValueTooLarge"; + case cudaErrorStubLibrary -> "cudaErrorStubLibrary"; + case cudaErrorInsufficientDriver -> "cudaErrorInsufficientDriver"; + case cudaErrorCallRequiresNewerDriver -> "cudaErrorCallRequiresNewerDriver"; + case cudaErrorInvalidSurface -> "cudaErrorInvalidSurface"; + case cudaErrorDuplicateVariableName -> "cudaErrorDuplicateVariableName"; + case cudaErrorDuplicateTextureName -> "cudaErrorDuplicateTextureName"; + case cudaErrorDuplicateSurfaceName -> "cudaErrorDuplicateSurfaceName"; + case cudaErrorDevicesUnavailable -> "cudaErrorDevicesUnavailable"; + case cudaErrorIncompatibleDriverContext -> "cudaErrorIncompatibleDriverContext"; + case cudaErrorMissingConfiguration -> "cudaErrorMissingConfiguration"; + case cudaErrorPriorLaunchFailure -> "cudaErrorPriorLaunchFailure"; + case cudaErrorLaunchMaxDepthExceeded -> "cudaErrorLaunchMaxDepthExceeded"; + case cudaErrorLaunchFileScopedTex -> "cudaErrorLaunchFileScopedTex"; + case cudaErrorLaunchFileScopedSurf -> "cudaErrorLaunchFileScopedSurf"; + case cudaErrorSyncDepthExceeded -> "cudaErrorSyncDepthExceeded"; + case cudaErrorLaunchPendingCountExceeded -> "cudaErrorLaunchPendingCountExceeded"; + case cudaErrorInvalidDeviceFunction -> "cudaErrorInvalidDeviceFunction"; + case cudaErrorNoDevice -> "cudaErrorNoDevice"; + case cudaErrorInvalidDevice -> "cudaErrorInvalidDevice"; + case cudaErrorDeviceNotLicensed -> "cudaErrorDeviceNotLicensed"; + case cudaErrorSoftwareValidityNotEstablished -> "cudaErrorSoftwareValidityNotEstablished"; + case cudaErrorStartupFailure -> "cudaErrorStartupFailure"; + case cudaErrorInvalidKernelImage -> "cudaErrorInvalidKernelImage"; + case cudaErrorDeviceUninitialized -> "cudaErrorDeviceUninitialized"; + case cudaErrorMapBufferObjectFailed -> "cudaErrorMapBufferObjectFailed"; + case cudaErrorUnmapBufferObjectFailed -> "cudaErrorUnmapBufferObjectFailed"; + case cudaErrorArrayIsMapped -> "cudaErrorArrayIsMapped"; + case cudaErrorAlreadyMapped -> "cudaErrorAlreadyMapped"; + case cudaErrorNoKernelImageForDevice -> "cudaErrorNoKernelImageForDevice"; + case cudaErrorAlreadyAcquired -> "cudaErrorAlreadyAcquired"; + case cudaErrorNotMapped -> "cudaErrorNotMapped"; + case cudaErrorNotMappedAsArray -> "cudaErrorNotMappedAsArray"; + case cudaErrorNotMappedAsPointer -> "cudaErrorNotMappedAsPointer"; + case cudaErrorECCUncorrectable -> "cudaErrorECCUncorrectable"; + case cudaErrorUnsupportedLimit -> "cudaErrorUnsupportedLimit"; + case cudaErrorDeviceAlreadyInUse -> "cudaErrorDeviceAlreadyInUse"; + case cudaErrorPeerAccessUnsupported -> "cudaErrorPeerAccessUnsupported"; + case cudaErrorInvalidPtx -> "cudaErrorInvalidPtx"; + case cudaErrorInvalidGraphicsContext -> "cudaErrorInvalidGraphicsContext"; + case cudaErrorNvlinkUncorrectable -> "cudaErrorNvlinkUncorrectable"; + case cudaErrorJitCompilerNotFound -> "cudaErrorJitCompilerNotFound"; + case cudaErrorUnsupportedPtxVersion -> "cudaErrorUnsupportedPtxVersion"; + case cudaErrorJitCompilationDisabled -> "cudaErrorJitCompilationDisabled"; + case cudaErrorUnsupportedExecAffinity -> "cudaErrorUnsupportedExecAffinity"; + case cudaErrorUnsupportedDevSideSync -> "cudaErrorUnsupportedDevSideSync"; + case cudaErrorContained -> "cudaErrorContained"; + case cudaErrorInvalidSource -> "cudaErrorInvalidSource"; + case cudaErrorFileNotFound -> "cudaErrorFileNotFound"; + case cudaErrorSharedObjectSymbolNotFound -> "cudaErrorSharedObjectSymbolNotFound"; + case cudaErrorSharedObjectInitFailed -> "cudaErrorSharedObjectInitFailed"; + case cudaErrorOperatingSystem -> "cudaErrorOperatingSystem"; + case cudaErrorInvalidResourceHandle -> "cudaErrorInvalidResourceHandle"; + case cudaErrorIllegalState -> "cudaErrorIllegalState"; + case cudaErrorLossyQuery -> "cudaErrorLossyQuery"; + case cudaErrorSymbolNotFound -> "cudaErrorSymbolNotFound"; + case cudaErrorNotReady -> "cudaErrorNotReady"; + case cudaErrorIllegalAddress -> "cudaErrorIllegalAddress"; + case cudaErrorLaunchOutOfResources -> "cudaErrorLaunchOutOfResources"; + case cudaErrorLaunchTimeout -> "cudaErrorLaunchTimeout"; + case cudaErrorLaunchIncompatibleTexturing -> "cudaErrorLaunchIncompatibleTexturing"; + case cudaErrorPeerAccessAlreadyEnabled -> "cudaErrorPeerAccessAlreadyEnabled"; + case cudaErrorPeerAccessNotEnabled -> "cudaErrorPeerAccessNotEnabled"; + case cudaErrorSetOnActiveProcess -> "cudaErrorSetOnActiveProcess"; + case cudaErrorContextIsDestroyed -> "cudaErrorContextIsDestroyed"; + case cudaErrorAssert -> "cudaErrorAssert"; + case cudaErrorTooManyPeers -> "cudaErrorTooManyPeers"; + case cudaErrorHostMemoryAlreadyRegistered -> "cudaErrorHostMemoryAlreadyRegistered"; + case cudaErrorHostMemoryNotRegistered -> "cudaErrorHostMemoryNotRegistered"; + case cudaErrorHardwareStackError -> "cudaErrorHardwareStackError"; + case cudaErrorIllegalInstruction -> "cudaErrorIllegalInstruction"; + case cudaErrorMisalignedAddress -> "cudaErrorMisalignedAddress"; + case cudaErrorInvalidAddressSpace -> "cudaErrorInvalidAddressSpace"; + case cudaErrorInvalidPc -> "cudaErrorInvalidPc"; + case cudaErrorLaunchFailure -> "cudaErrorLaunchFailure"; + case cudaErrorCooperativeLaunchTooLarge -> "cudaErrorCooperativeLaunchTooLarge"; + case cudaErrorTensorMemoryLeak -> "cudaErrorTensorMemoryLeak"; + case cudaErrorNotPermitted -> "cudaErrorNotPermitted"; + case cudaErrorNotSupported -> "cudaErrorNotSupported"; + case cudaErrorSystemNotReady -> "cudaErrorSystemNotReady"; + case cudaErrorSystemDriverMismatch -> "cudaErrorSystemDriverMismatch"; + case cudaErrorCompatNotSupportedOnDevice -> "cudaErrorCompatNotSupportedOnDevice"; + case cudaErrorMpsConnectionFailed -> "cudaErrorMpsConnectionFailed"; + case cudaErrorMpsRpcFailure -> "cudaErrorMpsRpcFailure"; + case cudaErrorMpsServerNotReady -> "cudaErrorMpsServerNotReady"; + case cudaErrorMpsMaxClientsReached -> "cudaErrorMpsMaxClientsReached"; + case cudaErrorMpsMaxConnectionsReached -> "cudaErrorMpsMaxConnectionsReached"; + case cudaErrorMpsClientTerminated -> "cudaErrorMpsClientTerminated"; + case cudaErrorCdpNotSupported -> "cudaErrorCdpNotSupported"; + case cudaErrorCdpVersionMismatch -> "cudaErrorCdpVersionMismatch"; + case cudaErrorStreamCaptureUnsupported -> "cudaErrorStreamCaptureUnsupported"; + case cudaErrorStreamCaptureInvalidated -> "cudaErrorStreamCaptureInvalidated"; + case cudaErrorStreamCaptureMerge -> "cudaErrorStreamCaptureMerge"; + case cudaErrorStreamCaptureUnmatched -> "cudaErrorStreamCaptureUnmatched"; + case cudaErrorStreamCaptureUnjoined -> "cudaErrorStreamCaptureUnjoined"; + case cudaErrorStreamCaptureIsolation -> "cudaErrorStreamCaptureIsolation"; + case cudaErrorStreamCaptureImplicit -> "cudaErrorStreamCaptureImplicit"; + case cudaErrorCapturedEvent -> "cudaErrorCapturedEvent"; + case cudaErrorStreamCaptureWrongThread -> "cudaErrorStreamCaptureWrongThread"; + case cudaErrorTimeout -> "cudaErrorTimeout"; + case cudaErrorGraphExecUpdateFailure -> "cudaErrorGraphExecUpdateFailure"; + case cudaErrorExternalDevice -> "cudaErrorExternalDevice"; + case cudaErrorInvalidClusterSize -> "cudaErrorInvalidClusterSize"; + case cudaErrorFunctionNotLoaded -> "cudaErrorFunctionNotLoaded"; + case cudaErrorInvalidResourceType -> "cudaErrorInvalidResourceType"; + case cudaErrorInvalidResourceConfiguration -> "cudaErrorInvalidResourceConfiguration"; + case cudaErrorUnknown -> "cudaErrorUnknown"; + case cudaErrorApiFailureBase -> "cudaErrorApiFailureBase"; + default -> "Invalid error"; + }; + } + private CudaError() { // prevent instantiation. } From 612b8e80baa29abf354b822b609e5fdbf536455a Mon Sep 17 00:00:00 2001 From: ReneEnjilian Date: Wed, 20 Aug 2025 15:16:55 +0200 Subject: [PATCH 15/57] first stage of implementation is completed --- src/main/cpp/jni/CMakeLists.txt | 7 + src/main/cpp/jni/build_cujava_libs.sh | 39 ++ src/main/cpp/jni/common/CMakeLists.txt | 54 ++ src/main/cpp/jni/common/cujava_jni_utils.cpp | 126 +++++ src/main/cpp/jni/common/cujava_jni_utils.hpp | 42 ++ src/main/cpp/jni/common/cujava_logger.cpp | 41 ++ src/main/cpp/jni/common/cujava_logger.hpp | 37 ++ .../cpp/jni/common/cujava_pointer_utils.cpp | 244 +++++++++ .../cpp/jni/common/cujava_pointer_utils.hpp | 499 ++++++++++++++++++ src/main/cpp/jni/runtime/CMakeLists.txt | 55 ++ src/main/cpp/jni/runtime/cujava_runtime.cpp | 123 +++++ src/main/cpp/jni/runtime/cujava_runtime.hpp | 43 ++ .../cujava_runtime_common.hpp} | 17 + src/main/cpp/lib/libCuJavaCommonJNI.a | Bin 0 -> 55798 bytes src/main/cpp/lib/libcujava_runtime.so | Bin 0 -> 43064 bytes .../apache/sysds/cujava/CuJavaLibLoader.java | 18 +- .../sysds/cujava/NativePointerObject.java | 4 +- .../java/org/apache/sysds/cujava/Pointer.java | 6 +- .../sysds/cujava/interop/JCudaAdapter.java | 46 ++ .../apache/sysds/cujava/runtime/CuJava.java | 11 +- 20 files changed, 1400 insertions(+), 12 deletions(-) create mode 100755 src/main/cpp/jni/build_cujava_libs.sh create mode 100644 src/main/cpp/jni/common/CMakeLists.txt create mode 100644 src/main/cpp/jni/common/cujava_jni_utils.cpp create mode 100644 src/main/cpp/jni/common/cujava_jni_utils.hpp create mode 100644 src/main/cpp/jni/common/cujava_logger.cpp create mode 100644 src/main/cpp/jni/common/cujava_logger.hpp create mode 100644 src/main/cpp/jni/common/cujava_pointer_utils.cpp create mode 100644 src/main/cpp/jni/common/cujava_pointer_utils.hpp create mode 100644 src/main/cpp/jni/runtime/CMakeLists.txt create mode 100644 src/main/cpp/jni/runtime/cujava_runtime.cpp create mode 100644 src/main/cpp/jni/runtime/cujava_runtime.hpp rename src/main/cpp/jni/{runtime /cujava_runtime.cpp => runtime/cujava_runtime_common.hpp} (70%) create mode 100644 src/main/cpp/lib/libCuJavaCommonJNI.a create mode 100755 src/main/cpp/lib/libcujava_runtime.so create mode 100644 src/main/java/org/apache/sysds/cujava/interop/JCudaAdapter.java diff --git a/src/main/cpp/jni/CMakeLists.txt b/src/main/cpp/jni/CMakeLists.txt index cc59154f3c3..5e2f91cee99 100644 --- a/src/main/cpp/jni/CMakeLists.txt +++ b/src/main/cpp/jni/CMakeLists.txt @@ -18,3 +18,10 @@ # under the License. # #------------------------------------------------------------- + +cmake_minimum_required(VERSION 3.18) +project(cujava_jni LANGUAGES CXX) + +# Build the two subprojects +add_subdirectory(common) +add_subdirectory(runtime) diff --git a/src/main/cpp/jni/build_cujava_libs.sh b/src/main/cpp/jni/build_cujava_libs.sh new file mode 100755 index 00000000000..4ceaab2373f --- /dev/null +++ b/src/main/cpp/jni/build_cujava_libs.sh @@ -0,0 +1,39 @@ +#!/usr/bin/env bash +#------------------------------------------------------------- +# +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# +#------------------------------------------------------------- + +set -euo pipefail + +# Usage (from src/main/cpp/jni): +# chmod +x build_cujava_libs.sh +# ./build_cujava_libs.sh # default build dir: ./build, type: Release + +BUILD_DIR="${1:-build}" +BUILD_TYPE="${BUILD_TYPE:-Release}" + +echo "==> Configuring (BUILD_DIR=$BUILD_DIR, BUILD_TYPE=$BUILD_TYPE)" +cmake -S . -B "$BUILD_DIR" -DCMAKE_BUILD_TYPE="$BUILD_TYPE" + +echo "==> Building" +cmake --build "$BUILD_DIR" --config "$BUILD_TYPE" -j + +echo "==> Done. Artifacts should be in ../../lib" +ls -l ../lib/libcujava_runtime.so || true diff --git a/src/main/cpp/jni/common/CMakeLists.txt b/src/main/cpp/jni/common/CMakeLists.txt new file mode 100644 index 00000000000..1450c394802 --- /dev/null +++ b/src/main/cpp/jni/common/CMakeLists.txt @@ -0,0 +1,54 @@ +#------------------------------------------------------------- +# +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# +#------------------------------------------------------------- + +cmake_minimum_required(VERSION 3.18) + +project(CuJavaCommonJNI LANGUAGES CXX) + +find_package(JNI REQUIRED) + +add_library(CuJavaCommonJNI STATIC + cujava_logger.cpp + cujava_jni_utils.cpp + cujava_pointer_utils.cpp +) + +# PIC because this static lib is linked into shared libs +set_target_properties(CuJavaCommonJNI PROPERTIES + CXX_STANDARD 11 + POSITION_INDEPENDENT_CODE ON + ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/../../lib + LIBRARY_OUTPUT_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/../../lib + RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/../../lib +) + +target_include_directories(CuJavaCommonJNI + PUBLIC + ${JNI_INCLUDE_DIRS} + ${CMAKE_CURRENT_SOURCE_DIR} # headers in common/ +) + +# Propagate JNI to consumers (runtime, etc.) +target_link_libraries(CuJavaCommonJNI + PUBLIC + ${JNI_LIBRARIES} +) + diff --git a/src/main/cpp/jni/common/cujava_jni_utils.cpp b/src/main/cpp/jni/common/cujava_jni_utils.cpp new file mode 100644 index 00000000000..d2afefc281c --- /dev/null +++ b/src/main/cpp/jni/common/cujava_jni_utils.cpp @@ -0,0 +1,126 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + + #include "cujava_jni_utils.hpp" + #include "cujava_logger.hpp" + + // Cached method ID (same as JCuda; useful for convertString if you add it later) + jmethodID String_getBytes = nullptr; + + + int initJNIUtils(JNIEnv *env) + { + jclass cls = nullptr; + + // java.lang.String#getBytes()[B + if (!init(env, cls, "java/lang/String")) return JNI_ERR; + if (!init(env, cls, String_getBytes, "getBytes", "()[B")) return JNI_ERR; + + return JNI_VERSION_1_4; + } + + /** Find a class by name. */ + bool init(JNIEnv *env, jclass& cls, const char *name) + { + cls = env->FindClass(name); + if (cls == nullptr) + { + Logger::log(LOG_ERROR, "Failed to access class '%s'\n", name); + return false; + } + return true; + } + + /** Create a global ref to a class. */ + bool initGlobal(JNIEnv *env, jclass &globalCls, const char *className) + { + jclass cls = nullptr; + if (!init(env, cls, className)) return false; + globalCls = (jclass)env->NewGlobalRef(cls); + if (globalCls == nullptr) + { + Logger::log(LOG_ERROR, "Failed to create reference to class %s\n", className); + return false; + } + return true; + } + + /** Resolve a field ID. */ + bool init(JNIEnv *env, jclass cls, jfieldID& field, const char *name, const char *signature) + { + field = env->GetFieldID(cls, name, signature); + if (field == nullptr) + { + Logger::log(LOG_ERROR, "Failed to access field '%s' with signature '%s'\n", name, signature); + return false; + } + return true; + } + + /** Resolve a method ID. */ + bool init(JNIEnv *env, jclass cls, jmethodID& method, const char *name, const char *signature) + { + method = env->GetMethodID(cls, name, signature); + if (method == nullptr) + { + Logger::log(LOG_ERROR, "Failed to access method '%s' with signature '%s'\n", name, signature); + return false; + } + return true; + } + + /** Global class + no-args constructor, convenient helper. */ + bool init(JNIEnv *env, jclass &globalCls, jmethodID &constructor, const char *className) + { + jclass cls = nullptr; + if (!init(env, cls, className)) return false; + if (!init(env, cls, constructor, "", "()V")) return false; + + globalCls = (jclass)env->NewGlobalRef(cls); + if (globalCls == nullptr) + { + Logger::log(LOG_ERROR, "Failed to create reference to class %s\n", className); + return false; + } + return true; + } + + /** Resolve the standard 'long nativePointer' field for a class. */ + bool initNativePointer(JNIEnv *env, jfieldID& field, const char *className) + { + jclass cls = env->FindClass(className); + if (cls == nullptr) + { + Logger::log(LOG_ERROR, "Failed to access class %s\n", className); + return false; + } + return init(env, cls, field, "nativePointer", "J"); + } + + /** Throw a Java exception by FQN. */ + void ThrowByName(JNIEnv *env, const char *name, const char *msg) + { + jclass cls = env->FindClass(name); + if (cls != nullptr) + { + env->ThrowNew(cls, msg ? msg : ""); + env->DeleteLocalRef(cls); + } + } + diff --git a/src/main/cpp/jni/common/cujava_jni_utils.hpp b/src/main/cpp/jni/common/cujava_jni_utils.hpp new file mode 100644 index 00000000000..d4190d8d260 --- /dev/null +++ b/src/main/cpp/jni/common/cujava_jni_utils.hpp @@ -0,0 +1,42 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + + #ifndef CUJAVA_JNI_UTILS_HPP + #define CUJAVA_JNI_UTILS_HPP + + #include + + bool init(JNIEnv* env, jclass& cls, const char* name); + bool initGlobal(JNIEnv* env, jclass& globalCls, const char* className); + bool init(JNIEnv* env, jclass cls, jfieldID& field, const char* name, const char* signature); + bool init(JNIEnv* env, jclass cls, jmethodID& method, const char* name, const char* signature); + bool init(JNIEnv* env, jclass& globalCls, jmethodID& constructor, const char* className); + bool initNativePointer(JNIEnv* env, jfieldID& field, const char* className); + + // ---- Exceptions ---- + void ThrowByName(JNIEnv* env, const char* name, const char* msg); + + // ---- Module init (optional; keep if called from JNI_OnLoad) ---- + int initJNIUtils(JNIEnv* env); + + // ---- Cached IDs (minimal) ---- + extern jmethodID String_getBytes; // ()[B + + #endif // CUJAVA_JNI_UTILS_HPP + diff --git a/src/main/cpp/jni/common/cujava_logger.cpp b/src/main/cpp/jni/common/cujava_logger.cpp new file mode 100644 index 00000000000..367f68df62d --- /dev/null +++ b/src/main/cpp/jni/common/cujava_logger.cpp @@ -0,0 +1,41 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +#include "cujava_logger.hpp" +#include +#include + +LogLevel Logger::currentLogLevel = LOG_ERROR; + +void Logger::log(LogLevel level, const char *message, ...) +{ + if (level <= Logger::currentLogLevel) + { + va_list argp; + va_start(argp, message); + vfprintf(stdout, message, argp); + va_end(argp); + fflush(stdout); + } +} + +void Logger::setLogLevel(LogLevel level) +{ + Logger::currentLogLevel = level; +} diff --git a/src/main/cpp/jni/common/cujava_logger.hpp b/src/main/cpp/jni/common/cujava_logger.hpp new file mode 100644 index 00000000000..58a3d8ed859 --- /dev/null +++ b/src/main/cpp/jni/common/cujava_logger.hpp @@ -0,0 +1,37 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + + +#ifndef CUJAVA_LOGGER_HPP +#define CUJAVA_LOGGER_HPP + +#include +#include + +enum LogLevel {LOG_QUIET, LOG_ERROR, LOG_WARNING, LOG_INFO, LOG_DEBUG, LOG_TRACE, LOG_DEBUGTRACE}; + +class Logger { +public: + static void log(LogLevel level, const char* message, ...); + static void setLogLevel(LogLevel level); +private: + static LogLevel currentLogLevel; +}; + +#endif diff --git a/src/main/cpp/jni/common/cujava_pointer_utils.cpp b/src/main/cpp/jni/common/cujava_pointer_utils.cpp new file mode 100644 index 00000000000..9ec20963063 --- /dev/null +++ b/src/main/cpp/jni/common/cujava_pointer_utils.cpp @@ -0,0 +1,244 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + + +#include +#include +#include "cujava_logger.hpp" +#include "cujava_jni_utils.hpp" +#include "cujava_pointer_utils.hpp" + +// ---- cached IDs / classes (definitions; headers should declare them 'extern') ---- +jmethodID Object_getClass = nullptr; // ()Ljava/lang/Class; +jmethodID Class_getComponentType = nullptr; // ()Ljava/lang/Class; +jmethodID Class_newInstance = nullptr; // ()Ljava/lang/Object; + +jmethodID Buffer_isDirect = nullptr; // ()Z +jmethodID Buffer_hasArray = nullptr; // ()Z +jmethodID Buffer_array = nullptr; // ()Ljava/lang/Object; + +jfieldID NativePointerObject_nativePointer = nullptr; // long + +jclass Pointer_class = nullptr; // org.apache.sysds.cujava.Pointer (global ref) +jfieldID Pointer_buffer = nullptr; // Ljava/nio/Buffer; +jfieldID Pointer_pointers = nullptr; // [Lorg/apache/sysds/cujava/NativePointerObject; +jfieldID Pointer_byteOffset = nullptr; // long + +jmethodID Pointer_constructor = nullptr; // ()V + +// ----------------------------------------------------------------------------- +// Initialize field- and method IDs for Pointer/Buffer plumbing +// ----------------------------------------------------------------------------- +int initPointerUtils(JNIEnv *env) +{ + jclass cls = nullptr; + + // java.lang.Object#getClass() + if (!init(env, cls, "java/lang/Object")) return JNI_ERR; + if (!init(env, cls, Object_getClass, "getClass", "()Ljava/lang/Class;")) return JNI_ERR; + + // java.lang.Class methods we may need later (kept to match JCuda shape) + if (!init(env, cls, "java/lang/Class")) return JNI_ERR; + if (!init(env, cls, Class_getComponentType, "getComponentType", "()Ljava/lang/Class;")) return JNI_ERR; + if (!init(env, cls, Class_newInstance, "newInstance", "()Ljava/lang/Object;")) return JNI_ERR; + + // java.nio.Buffer: isDirect/hasArray/array + if (!init(env, cls, "java/nio/Buffer")) return JNI_ERR; + if (!init(env, cls, Buffer_isDirect, "isDirect", "()Z")) return JNI_ERR; + if (!init(env, cls, Buffer_hasArray, "hasArray", "()Z")) return JNI_ERR; + if (!init(env, cls, Buffer_array, "array", "()Ljava/lang/Object;")) return JNI_ERR; + + // org.apache.sysds.cujava.NativePointerObject.nativePointer (long) + if (!init(env, cls, "org/apache/sysds/cujava/NativePointerObject")) return JNI_ERR; + if (!init(env, cls, NativePointerObject_nativePointer, "nativePointer", "J")) return JNI_ERR; + + // org.apache.sysds.cujava.Pointer + if (!init(env, cls, "org/apache/sysds/cujava/Pointer")) return JNI_ERR; + Pointer_class = (jclass)env->NewGlobalRef(cls); + if (Pointer_class == nullptr) return JNI_ERR; + + if (!init(env, cls, Pointer_buffer, "buffer", "Ljava/nio/Buffer;")) return JNI_ERR; + if (!init(env, cls, Pointer_pointers, "pointers", "[Lorg/apache/sysds/cujava/NativePointerObject;")) return JNI_ERR; + if (!init(env, cls, Pointer_byteOffset, "byteOffset", "J")) return JNI_ERR; + if (!init(env, cls, Pointer_constructor, "", "()V")) return JNI_ERR; + + return JNI_VERSION_1_4; +} + +// ----------------------------------------------------------------------------- +// Helper: validate newly created PointerData +// ----------------------------------------------------------------------------- +static PointerData* validatePointerData(JNIEnv *env, jobject nativePointerObject, PointerData *pointerData) +{ + if (pointerData == nullptr) + { + ThrowByName(env, "java/lang/OutOfMemoryError", + "Out of memory while creating pointer data"); + return nullptr; + } + if (!pointerData->init(env, nativePointerObject)) + { + delete pointerData; + return nullptr; + } + return pointerData; +} + +// ----------------------------------------------------------------------------- +// Factory: create a PointerData matching the Java-side object +// (mirrors JCuda: Pointer array -> PointersArrayPointerData, +// Buffer direct -> DirectBufferPointerData, +// Buffer with array -> ArrayBufferPointerData, +// else Pointer(nativePointer+byteOffset) -> NativePointerData, +// else non-Pointer/NULL -> NativePointerObjectPointerData) +// ----------------------------------------------------------------------------- +PointerData* initPointerData(JNIEnv *env, jobject nativePointerObject) +{ + Logger::log(LOG_DEBUGTRACE, "Initializing pointer data for Java NativePointerObject %p\n", nativePointerObject); + + // NULL -> NativePointerObjectPointerData + if (nativePointerObject == nullptr) + { + Logger::log(LOG_DEBUGTRACE, "Initializing NativePointerObjectPointerData\n"); + auto *pd = new NativePointerObjectPointerData(); + return validatePointerData(env, nativePointerObject, pd); + } + + // If not an instance of Pointer -> NativePointerObjectPointerData + jboolean isPointer = env->IsInstanceOf(nativePointerObject, Pointer_class); + if (!isPointer) + { + Logger::log(LOG_DEBUGTRACE, "Initializing NativePointerObjectPointerData\n"); + auto *pd = new NativePointerObjectPointerData(); + return validatePointerData(env, nativePointerObject, pd); + } + + // If Pointer.pointers != null -> PointersArrayPointerData + jobjectArray pointersArray = (jobjectArray)env->GetObjectField(nativePointerObject, Pointer_pointers); + if (pointersArray != nullptr) + { + Logger::log(LOG_DEBUGTRACE, "Initializing PointersArrayPointerData\n"); + auto *pd = new PointersArrayPointerData(); + return validatePointerData(env, nativePointerObject, pd); + } + + // If Pointer.buffer != null -> Buffer paths + jobject buffer = env->GetObjectField(nativePointerObject, Pointer_buffer); + if (buffer != nullptr) + { + // Direct buffer? + jboolean isDirect = env->CallBooleanMethod(buffer, Buffer_isDirect); + if (env->ExceptionCheck()) return nullptr; + if (isDirect == JNI_TRUE) + { + Logger::log(LOG_DEBUGTRACE, "Initializing DirectBufferPointerData\n"); + auto *pd = new DirectBufferPointerData(); + return validatePointerData(env, nativePointerObject, pd); + } + + // Backed by primitive array? + jboolean hasArray = env->CallBooleanMethod(buffer, Buffer_hasArray); + if (env->ExceptionCheck()) return nullptr; + if (hasArray == JNI_TRUE) + { + Logger::log(LOG_DEBUGTRACE, "Initializing ArrayBufferPointerData\n"); + auto *pd = new ArrayBufferPointerData(); + return validatePointerData(env, nativePointerObject, pd); + } + + // Neither direct nor array-backed -> error (should have been checked in Java) + Logger::log(LOG_ERROR, "Buffer is neither direct nor has an array\n"); + ThrowByName(env, "java/lang/IllegalArgumentException", + "Buffer is neither direct nor has an array"); + return nullptr; + } + + // Plain Pointer: nativePointer + byteOffset + Logger::log(LOG_DEBUGTRACE, "Initializing NativePointerData\n"); + auto *pd = new NativePointerData(); + return validatePointerData(env, nativePointerObject, pd); +} + +// ----------------------------------------------------------------------------- +// Release helper: calls PointerData::release and deletes the object +// ----------------------------------------------------------------------------- +bool releasePointerData(JNIEnv *env, PointerData* &pointerData, jint mode) +{ + if (pointerData == nullptr) return true; + if (!pointerData->release(env, mode)) return false; + delete pointerData; + pointerData = nullptr; + return true; +} + +// ----------------------------------------------------------------------------- +// Misc helpers +// ----------------------------------------------------------------------------- +bool isDirectByteBuffer(JNIEnv *env, jobject buffer) +{ + if (buffer == nullptr) return false; + jboolean isDirect = env->CallBooleanMethod(buffer, Buffer_isDirect); + if (env->ExceptionCheck()) return false; + return (isDirect == JNI_TRUE); +} + +bool isPointerBackedByNativeMemory(JNIEnv *env, jobject object) +{ + if (object == nullptr) return false; + + jlong np = env->GetLongField(object, NativePointerObject_nativePointer); + if (np != 0) return true; + + jboolean isPtr = env->IsInstanceOf(object, Pointer_class); + if (isPtr) + { + jobject buffer = env->GetObjectField(object, Pointer_buffer); + return isDirectByteBuffer(env, buffer); + } + return false; +} + +void setNativePointerValue(JNIEnv *env, jobject nativePointerObject, jlong pointer) +{ + if (nativePointerObject == nullptr) return; + env->SetLongField(nativePointerObject, NativePointerObject_nativePointer, pointer); +} + +void* getNativePointerValue(JNIEnv *env, jobject nativePointerObject) +{ + if (nativePointerObject == nullptr) return nullptr; + jlong p = env->GetLongField(nativePointerObject, NativePointerObject_nativePointer); + return (void*)(uintptr_t)p; +} + +void setPointer(JNIEnv *env, jobject pointerObject, jlong pointer) +{ + if (pointerObject == nullptr) return; + env->SetLongField(pointerObject, NativePointerObject_nativePointer, pointer); + env->SetLongField(pointerObject, Pointer_byteOffset, 0); +} + +void* getPointer(JNIEnv *env, jobject pointerObject) +{ + if (pointerObject == nullptr) return nullptr; + jlong start = env->GetLongField(pointerObject, NativePointerObject_nativePointer); + jlong off = env->GetLongField(pointerObject, Pointer_byteOffset); + jlong p = start + off; + return (void*)(uintptr_t)p; +} diff --git a/src/main/cpp/jni/common/cujava_pointer_utils.hpp b/src/main/cpp/jni/common/cujava_pointer_utils.hpp new file mode 100644 index 00000000000..9e23b84ffb0 --- /dev/null +++ b/src/main/cpp/jni/common/cujava_pointer_utils.hpp @@ -0,0 +1,499 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +#ifndef CUJAVA_POINTER_UTILS_HPP +#define CUJAVA_POINTER_UTILS_HPP + +#include +#include "cujava_jni_utils.hpp" +#include "cujava_logger.hpp" + +// ----------------------------------------------------------------------------- +// Init + helpers +// ----------------------------------------------------------------------------- +int initPointerUtils(JNIEnv* env); + +class PointerData; + +PointerData* initPointerData(JNIEnv* env, jobject nativePointerObject); +bool releasePointerData(JNIEnv* env, PointerData*& pointerData, jint mode = 0); + +void setNativePointerValue(JNIEnv* env, jobject nativePointerObject, jlong pointer); +void* getNativePointerValue(JNIEnv* env, jobject nativePointerObject); + +void setPointer(JNIEnv* env, jobject pointerObject, jlong pointer); +void* getPointer(JNIEnv* env, jobject pointerObject); + +bool isDirectByteBuffer(JNIEnv* env, jobject buffer); +bool isPointerBackedByNativeMemory(JNIEnv* env, jobject object); + +// ----------------------------------------------------------------------------- +// Cached JNI IDs / classes (initialized in initPointerUtils) +// ----------------------------------------------------------------------------- +extern jmethodID Buffer_isDirect; // ()Z +extern jmethodID Buffer_hasArray; // ()Z +extern jmethodID Buffer_array; // ()Ljava/lang/Object; + +extern jfieldID NativePointerObject_nativePointer; // long + +extern jclass Pointer_class; // Global ref: org.apache.sysds.cujava.Pointer +extern jfieldID Pointer_buffer; // Ljava/nio/Buffer; +extern jfieldID Pointer_pointers; // [Lorg/apache/sysds/cujava/NativePointerObject; +extern jfieldID Pointer_byteOffset;// long + +extern jmethodID Pointer_constructor; // ()V + +extern jmethodID Object_getClass; // ()Ljava/lang/Class; +extern jmethodID Class_getComponentType; // ()Ljava/lang/Class; +extern jmethodID Class_newInstance; // ()Ljava/lang/Object; + +// ----------------------------------------------------------------------------- +// PointerData hierarchy +// ----------------------------------------------------------------------------- + +/** + * Virtual base class for all possible representations of pointers. + */ +class PointerData +{ +public: + virtual ~PointerData() {} + + virtual bool init(JNIEnv* env, jobject object) = 0; + virtual bool release(JNIEnv* env, jint mode = 0) = 0; + + virtual void* getPointer(JNIEnv* env) = 0; + virtual void releasePointer(JNIEnv* env, jint mode = 0) = 0; + + /** + * For pointers inside pointer arrays that may be updated by native code: + * write the new native address back into the Java object, if supported. + */ + virtual bool setNewNativePointerValue(JNIEnv* env, jlong nativePointerValue) = 0; +}; + + +/** + * Backed by a Java NativePointerObject that is NOT a Pointer instance. + * Stores only the nativePointer value. + */ +class NativePointerObjectPointerData : public PointerData +{ +private: + jobject nativePointerObject; // global ref (may be null) + jlong nativePointer; + +public: + NativePointerObjectPointerData() : nativePointerObject(NULL), nativePointer(0) {} + ~NativePointerObjectPointerData() {} + + bool init(JNIEnv* env, jobject object) + { + if (object != NULL) + { + nativePointerObject = env->NewGlobalRef(object); + if (nativePointerObject == NULL) + { + ThrowByName(env, "java/lang/OutOfMemoryError", + "Out of memory while creating global reference for pointer data"); + return false; + } + nativePointer = env->GetLongField(object, NativePointerObject_nativePointer); + if (env->ExceptionCheck()) return false; + } + Logger::log(LOG_DEBUGTRACE, "Initialized NativePointerObjectPointerData %p\n", (void*)nativePointer); + return true; + } + + bool release(JNIEnv* env, jint = 0) + { + Logger::log(LOG_DEBUGTRACE, "Releasing NativePointerObjectPointerData %p\n", (void*)nativePointer); + if (nativePointerObject != NULL) + { + env->SetLongField(nativePointerObject, NativePointerObject_nativePointer, nativePointer); + env->DeleteGlobalRef(nativePointerObject); + } + return true; + } + + void* getPointer(JNIEnv*) { return (void*)nativePointer; } + void releasePointer(JNIEnv*, jint = 0) {} + + bool setNewNativePointerValue(JNIEnv*, jlong nativePointerValue) + { + nativePointer = nativePointerValue; + return true; + } +}; + + +/** + * Backed by a Java Pointer (nativePointer + byteOffset). + */ +class NativePointerData : public PointerData +{ +private: + jobject pointer; // global ref + jlong nativePointer; + jlong byteOffset; + +public: + NativePointerData() : pointer(NULL), nativePointer(0), byteOffset(0) {} + ~NativePointerData() {} + + bool init(JNIEnv* env, jobject object) + { + pointer = env->NewGlobalRef(object); + if (pointer == NULL) + { + ThrowByName(env, "java/lang/OutOfMemoryError", + "Out of memory while creating global reference for pointer data"); + return false; + } + + nativePointer = env->GetLongField(object, NativePointerObject_nativePointer); + if (env->ExceptionCheck()) return false; + + byteOffset = env->GetLongField(object, Pointer_byteOffset); + if (env->ExceptionCheck()) return false; + + Logger::log(LOG_DEBUGTRACE, "Initialized NativePointerData %p\n", (void*)nativePointer); + return true; + } + + bool release(JNIEnv* env, jint = 0) + { + Logger::log(LOG_DEBUGTRACE, "Releasing NativePointerData %p\n", (void*)nativePointer); + env->SetLongField(pointer, NativePointerObject_nativePointer, nativePointer); + env->SetLongField(pointer, Pointer_byteOffset, byteOffset); + env->DeleteGlobalRef(pointer); + return true; + } + + void* getPointer(JNIEnv*) { return (void*)(((char*)nativePointer) + byteOffset); } + void releasePointer(JNIEnv*, jint = 0) {} + + bool setNewNativePointerValue(JNIEnv*, jlong nativePointerValue) + { + nativePointer = nativePointerValue; + byteOffset = 0; + return true; + } +}; + + +/** + * Backed by a Java Pointer that points to an array of NativePointerObjects. + */ +class PointersArrayPointerData : public PointerData +{ +private: + jobject nativePointerObject; // global ref to the Java Pointer + PointerData** arrayPointerDatas; // parallel to Java array + void* startPointer; // native array of void* (one per element) + jlong byteOffset; + bool localPointersInitialized; + + void initLocalPointers(JNIEnv* env) + { + Logger::log(LOG_DEBUGTRACE, "Initializing PointersArrayPointerData local pointers\n"); + jobjectArray pointersArray = (jobjectArray)env->GetObjectField( + nativePointerObject, Pointer_pointers); + long size = (long)env->GetArrayLength(pointersArray); + void** localPointer = (void**)startPointer; + for (int i = 0; i < size; i++) + { + if (arrayPointerDatas[i] != NULL) + localPointer[i] = arrayPointerDatas[i]->getPointer(env); + else + localPointer[i] = NULL; + } + localPointersInitialized = true; + Logger::log(LOG_DEBUGTRACE, "Initialized PointersArrayPointerData local pointers\n"); + } + +public: + PointersArrayPointerData() + : nativePointerObject(NULL), + arrayPointerDatas(NULL), + startPointer(NULL), + byteOffset(0), + localPointersInitialized(false) {} + + ~PointersArrayPointerData() {} + + bool init(JNIEnv* env, jobject object) + { + nativePointerObject = env->NewGlobalRef(object); + if (nativePointerObject == NULL) + { + ThrowByName(env, "java/lang/OutOfMemoryError", + "Out of memory while creating global reference for pointer data"); + return false; + } + + jobjectArray pointersArray = (jobjectArray)env->GetObjectField(object, Pointer_pointers); + long size = (long)env->GetArrayLength(pointersArray); + + void** localPointer = new void*[size]; + if (localPointer == NULL) + { + ThrowByName(env, "java/lang/OutOfMemoryError", + "Out of memory while initializing pointer array"); + return false; + } + startPointer = (void*)localPointer; + + arrayPointerDatas = new PointerData*[size]; + if (arrayPointerDatas == NULL) + { + ThrowByName(env, "java/lang/OutOfMemoryError", + "Out of memory while initializing pointer data array"); + return false; + } + + for (int i = 0; i < size; i++) + { + jobject p = env->GetObjectArrayElement(pointersArray, i); + if (env->ExceptionCheck()) return false; + + if (p != NULL) + { + PointerData* apd = initPointerData(env, p); + if (apd == NULL) return false; + arrayPointerDatas[i] = apd; + } + else + { + arrayPointerDatas[i] = NULL; + } + } + + byteOffset = env->GetLongField(object, Pointer_byteOffset); + if (env->ExceptionCheck()) return false; + + Logger::log(LOG_DEBUGTRACE, "Initialized PointersArrayPointerData %p\n", startPointer); + return true; + } + + bool release(JNIEnv* env, jint mode = 0) + { + Logger::log(LOG_DEBUGTRACE, "Releasing PointersArrayPointerData %p\n", startPointer); + + if (!localPointersInitialized) initLocalPointers(env); + + jobjectArray pointersArray = (jobjectArray)env->GetObjectField( + nativePointerObject, Pointer_pointers); + long size = (long)env->GetArrayLength(pointersArray); + + void** localPointer = (void**)startPointer; + if (mode != JNI_ABORT) + { + for (int i = 0; i < size; i++) + { + jobject p = env->GetObjectArrayElement(pointersArray, i); + if (env->ExceptionCheck()) return false; + + if (p != NULL) + { + void* oldLocalPointer = arrayPointerDatas[i]->getPointer(env); + + Logger::log(LOG_DEBUGTRACE, "About to write back pointer %d in PointersArrayPointerData\n", i); + Logger::log(LOG_DEBUGTRACE, "Old local pointer was %p\n", oldLocalPointer); + Logger::log(LOG_DEBUGTRACE, "New local pointer is %p\n", localPointer[i]); + + if (localPointer[i] != oldLocalPointer) + { + Logger::log(LOG_DEBUGTRACE, "In pointer %d setting value %p\n", i, localPointer[i]); + bool updated = arrayPointerDatas[i]->setNewNativePointerValue(env, (jlong)localPointer[i]); + if (!updated) return false; // pending IllegalArgumentException + } + } + else if (localPointer[i] != NULL) + { + ThrowByName(env, "java/lang/NullPointerException", + "Pointer points to an array containing a 'null' entry"); + return false; + } + } + } + + if (arrayPointerDatas != NULL) + { + for (int i = 0; i < size; i++) + { + if (arrayPointerDatas[i] != NULL) + { + if (!releasePointerData(env, arrayPointerDatas[i], mode)) return false; + } + } + delete[] arrayPointerDatas; + } + delete[] localPointer; + + env->DeleteGlobalRef(nativePointerObject); + return true; + } + + void* getPointer(JNIEnv* env) + { + if (!localPointersInitialized) initLocalPointers(env); + return (void*)(((char*)startPointer) + byteOffset); + } + + void releasePointer(JNIEnv*, jint = 0) {} + + bool setNewNativePointerValue(JNIEnv* env, jlong) + { + ThrowByName(env, "java/lang/IllegalArgumentException", + "Pointer to an array of pointers may not be overwritten"); + return false; + } +}; + + +/** + * Backed by a direct java.nio.Buffer. + */ +class DirectBufferPointerData : public PointerData +{ +private: + void* startPointer; + jlong byteOffset; + +public: + DirectBufferPointerData() : startPointer(NULL), byteOffset(0) {} + ~DirectBufferPointerData() {} + + bool init(JNIEnv* env, jobject object) + { + jobject buffer = env->GetObjectField(object, Pointer_buffer); + startPointer = env->GetDirectBufferAddress(buffer); + if (startPointer == 0) + { + ThrowByName(env, "java/lang/IllegalArgumentException", + "Failed to obtain direct buffer address"); + return false; + } + + byteOffset = env->GetLongField(object, Pointer_byteOffset); + if (env->ExceptionCheck()) return false; + + Logger::log(LOG_DEBUGTRACE, "Initialized DirectBufferPointerData %p\n", startPointer); + return true; + } + + bool release(JNIEnv*, jint = 0) + { + Logger::log(LOG_DEBUGTRACE, "Releasing DirectBufferPointerData %p\n", startPointer); + return true; + } + + void* getPointer(JNIEnv*) { return (void*)(((char*)startPointer) + byteOffset); } + void releasePointer(JNIEnv*, jint = 0) {} + + bool setNewNativePointerValue(JNIEnv* env, jlong) + { + ThrowByName(env, "java/lang/IllegalArgumentException", + "Pointer to a direct buffer may not be overwritten"); + return false; + } +}; + + +/** + * Backed by a primitive-array-backed Buffer (e.g., ByteBuffer.wrap(...)). + */ +class ArrayBufferPointerData : public PointerData +{ +private: + jarray array; // global ref to the primitive array + void* startPointer; // set on first getPointer() + jboolean isCopy; + jlong byteOffset; + +public: + ArrayBufferPointerData() + : array(NULL), startPointer(NULL), isCopy(JNI_FALSE), byteOffset(0) {} + ~ArrayBufferPointerData() {} + + bool init(JNIEnv* env, jobject object) + { + jobject buffer = env->GetObjectField(object, Pointer_buffer); + jobject localArray = env->CallObjectMethod(buffer, Buffer_array); + if (env->ExceptionCheck()) return false; + + array = (jarray)env->NewGlobalRef(localArray); + if (array == NULL) + { + ThrowByName(env, "java/lang/OutOfMemoryError", + "Out of memory while creating array reference"); + return false; + } + + byteOffset = env->GetLongField(object, Pointer_byteOffset); + if (env->ExceptionCheck()) return false; + + Logger::log(LOG_DEBUGTRACE, "Initialized ArrayBufferPointerData %p (deferred)\n", startPointer); + return true; + } + + bool release(JNIEnv* env, jint mode = 0) + { + Logger::log(LOG_DEBUGTRACE, "Releasing ArrayBufferPointerData %p\n", startPointer); + releasePointer(env, mode); + env->DeleteGlobalRef(array); + return true; + } + + void* getPointer(JNIEnv* env) + { + if (startPointer == NULL) + { + Logger::log(LOG_DEBUGTRACE, "Initializing ArrayBufferPointerData critical\n"); + isCopy = JNI_FALSE; + startPointer = env->GetPrimitiveArrayCritical(array, &isCopy); + if (startPointer == NULL) return NULL; + Logger::log(LOG_DEBUGTRACE, "Initialized ArrayBufferPointerData %p (isCopy %d)\n", startPointer, (int)isCopy); + } + return (void*)(((char*)startPointer) + byteOffset); + } + + void releasePointer(JNIEnv* env, jint mode = 0) + { + if (startPointer != NULL) + { + Logger::log(LOG_DEBUGTRACE, "Releasing ArrayBufferPointerData critical\n"); + if (!isCopy) + env->ReleasePrimitiveArrayCritical(array, startPointer, JNI_ABORT); + else + env->ReleasePrimitiveArrayCritical(array, startPointer, mode); + startPointer = NULL; + } + } + + bool setNewNativePointerValue(JNIEnv* env, jlong) + { + ThrowByName(env, "java/lang/IllegalArgumentException", + "Pointer to an array may not be overwritten"); + return false; + } +}; + +#endif // CUJAVA_POINTER_UTILS_HPP diff --git a/src/main/cpp/jni/runtime/CMakeLists.txt b/src/main/cpp/jni/runtime/CMakeLists.txt new file mode 100644 index 00000000000..c0ff5c5480b --- /dev/null +++ b/src/main/cpp/jni/runtime/CMakeLists.txt @@ -0,0 +1,55 @@ +#------------------------------------------------------------- +# +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# +#------------------------------------------------------------- + +cmake_minimum_required(VERSION 3.18) + +project(CuJavaRuntime LANGUAGES CXX) + +find_package(JNI REQUIRED) +find_package(CUDAToolkit REQUIRED) # for CUDA::cudart + +add_library(CuJavaRuntime SHARED + cujava_runtime.cpp +) + +set_target_properties(CuJavaRuntime PROPERTIES + CXX_STANDARD 11 + OUTPUT_NAME cujava_runtime # -> libcujava_runtime.so + LIBRARY_OUTPUT_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/../../lib + RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/../../lib + ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/../../lib +) + +target_include_directories(CuJavaRuntime + PRIVATE + ${JNI_INCLUDE_DIRS} + ${CUDAToolkit_INCLUDE_DIRS} + ${CMAKE_CURRENT_SOURCE_DIR} # headers in runtime/ + ${CMAKE_CURRENT_SOURCE_DIR}/../common # if you include common headers without ../ +) + +target_link_libraries(CuJavaRuntime + PRIVATE + CuJavaCommonJNI + CUDA::cudart + ${JNI_LIBRARIES} +) + diff --git a/src/main/cpp/jni/runtime/cujava_runtime.cpp b/src/main/cpp/jni/runtime/cujava_runtime.cpp new file mode 100644 index 00000000000..bff0a91a17d --- /dev/null +++ b/src/main/cpp/jni/runtime/cujava_runtime.cpp @@ -0,0 +1,123 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + + +#include "cujava_runtime.hpp" +#include "cujava_runtime_common.hpp" +//#include "../common/cujava_pointer_utils.hpp" + + +JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM *jvm, void *reserved) +{ + JNIEnv *env = nullptr; + if (jvm->GetEnv((void **)&env, JNI_VERSION_1_4)) { + return JNI_ERR; + } + + // Only what we need so far + if (initJNIUtils(env) == JNI_ERR) return JNI_ERR; + if (initPointerUtils(env) == JNI_ERR) return JNI_ERR; + + return JNI_VERSION_1_4; +} + + +JNIEXPORT void JNICALL JNI_OnUnload(JavaVM *vm, void *reserved) +{ +} + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaMemcpyNative + (JNIEnv *env, jclass cls, jobject dst, jobject src, jlong count, jint kind) +{ + if (dst == NULL) + { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'dst' is null for cudaMemcpy"); + return CUJAVA_INTERNAL_ERROR; + } + if (src == NULL) + { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'src' is null for cudaMemcpy"); + return CUJAVA_INTERNAL_ERROR; + } + Logger::log(LOG_TRACE, "Executing cudaMemcpy of %ld bytes\n", (long)count); + + // Obtain the destination and source pointers + PointerData *dstPointerData = initPointerData(env, dst); + if (dstPointerData == NULL) + { + return CUJAVA_INTERNAL_ERROR; + } + PointerData *srcPointerData = initPointerData(env, src); + if (srcPointerData == NULL) + { + return CUJAVA_INTERNAL_ERROR; + } + + // Execute the cudaMemcpy operation + int result = CUJAVA_INTERNAL_ERROR; + if (kind == cudaMemcpyHostToHost) + { + Logger::log(LOG_TRACE, "Copying %ld bytes from host to host\n", (long)count); + result = cudaMemcpy((void*)dstPointerData->getPointer(env), (void*)srcPointerData->getPointer(env), (size_t)count, cudaMemcpyHostToHost); + } + else if (kind == cudaMemcpyHostToDevice) + { + Logger::log(LOG_TRACE, "Copying %ld bytes from host to device\n", (long)count); + result = cudaMemcpy((void*)dstPointerData->getPointer(env), (void*)srcPointerData->getPointer(env), (size_t)count, cudaMemcpyHostToDevice); + } + else if (kind == cudaMemcpyDeviceToHost) + { + Logger::log(LOG_TRACE, "Copying %ld bytes from device to host\n", (long)count); + result = cudaMemcpy((void*)dstPointerData->getPointer(env), (void*)srcPointerData->getPointer(env), (size_t)count, cudaMemcpyDeviceToHost); + } + else if (kind == cudaMemcpyDeviceToDevice) + { + Logger::log(LOG_TRACE, "Copying %ld bytes from device to device\n", (long)count); + result = cudaMemcpy((void*)dstPointerData->getPointer(env), (void*)srcPointerData->getPointer(env), (size_t)count, cudaMemcpyDeviceToDevice); + } + else + { + Logger::log(LOG_ERROR, "Invalid cudaMemcpyKind given: %d\n", kind); + return cudaErrorInvalidMemcpyDirection; + } + + // Release the pointer data + if (!releasePointerData(env, dstPointerData)) return CUJAVA_INTERNAL_ERROR; + if (!releasePointerData(env, srcPointerData, JNI_ABORT)) return CUJAVA_INTERNAL_ERROR; + return result; +} + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaMallocNative + (JNIEnv *env, jclass cls, jobject devPtr, jlong size) +{ + if (devPtr == NULL) + { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'devPtr' is null for cudaMalloc"); + return CUJAVA_INTERNAL_ERROR; + } + Logger::log(LOG_TRACE, "Executing cudaMalloc of %ld bytes\n", (long)size); + + void *nativeDevPtr = NULL; + int result = cudaMalloc(&nativeDevPtr, (size_t)size); + setPointer(env, devPtr, (jlong)nativeDevPtr); + + return result; +} diff --git a/src/main/cpp/jni/runtime/cujava_runtime.hpp b/src/main/cpp/jni/runtime/cujava_runtime.hpp new file mode 100644 index 00000000000..92a3624d850 --- /dev/null +++ b/src/main/cpp/jni/runtime/cujava_runtime.hpp @@ -0,0 +1,43 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +#include +/* Header for class org.apache.sysds.cujava.runtime.CuJava */ + +#ifndef _Included_org_apache_sysds_cujava_runtime_CuJava +#define _Included_org_apache_sysds_cujava_runtime_CuJava +#ifdef __cplusplus +extern "C" { +#endif + +/* + * Class: org.apache.sysds.cujava.runtime.CuJava + * Method: cudaMemcpyNative + * Signature: (Lorg/apache/sysds/cujava/Pointer;Lorg/apache/sysds/cujava/Pointer;JI)I + */ +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaMemcpyNative + (JNIEnv *, jclass, jobject, jobject, jlong, jint); + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaMallocNative + (JNIEnv *env, jclass cls, jobject devPtr, jlong size); + +#ifdef __cplusplus +} +#endif +#endif diff --git a/src/main/cpp/jni/runtime /cujava_runtime.cpp b/src/main/cpp/jni/runtime/cujava_runtime_common.hpp similarity index 70% rename from src/main/cpp/jni/runtime /cujava_runtime.cpp rename to src/main/cpp/jni/runtime/cujava_runtime_common.hpp index 042f3ce1f39..70d9bede0d7 100644 --- a/src/main/cpp/jni/runtime /cujava_runtime.cpp +++ b/src/main/cpp/jni/runtime/cujava_runtime_common.hpp @@ -16,3 +16,20 @@ * specific language governing permissions and limitations * under the License. */ + +#ifndef CUJAVA_RUNTIME_COMMON_HPP +#define CUJAVA_RUNTIME_COMMON_HPP + +#include +#include +#include + +#include "../common/cujava_logger.hpp" +#include "../common/cujava_jni_utils.hpp" +#include "../common/cujava_pointer_utils.hpp" + +#define CUJAVA_INTERNAL_ERROR 0x80000001 + + + +#endif // CUJAVA_RUNTIME_COMMON_HPP diff --git a/src/main/cpp/lib/libCuJavaCommonJNI.a b/src/main/cpp/lib/libCuJavaCommonJNI.a new file mode 100644 index 0000000000000000000000000000000000000000..4cfe401d18ce99a3e8637b8adb88be36d730e9dc GIT binary patch literal 55798 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 Hv-$rIVnMCq literal 0 HcmV?d00001 diff --git a/src/main/cpp/lib/libcujava_runtime.so b/src/main/cpp/lib/libcujava_runtime.so new file mode 100755 index 0000000000000000000000000000000000000000..ecbad36f6e9e0f06efa3e272971dbc1318bd92c1 GIT binary patch literal 43064 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 libcujava.so / cujava.dll / libcujava.dylib private static volatile boolean loaded = false; // fast-path guard + private static final Set LOADED = Collections.newSetFromMap(new ConcurrentHashMap<>()); /** Public entry – call from static blocks in binding classes. */ - public static synchronized void load() { - if (loaded) // already done - return; + public static synchronized void load(String lib) { + if (!LOADED.add(lib)) return; // already loaded // 1) Standard lookup (java.library.path or OS default locations) try { - System.loadLibrary(LIB_BASE); - loaded = true; + System.loadLibrary(lib); return; } catch (UnsatisfiedLinkError ignored) { @@ -43,7 +45,7 @@ public static synchronized void load() { } // 2) Extract the library from the JAR (/lib/...) to a temp file - String fileName = System.mapLibraryName(LIB_BASE); // platform-specific + String fileName = System.mapLibraryName(lib); // platform-specific String resource = "/lib/" + fileName; // matches lib in the POM try (InputStream in = CuJavaLibLoader.class.getResourceAsStream(resource)) { @@ -56,9 +58,9 @@ public static synchronized void load() { Files.copy(in, tmp, StandardCopyOption.REPLACE_EXISTING); System.load(tmp.toAbsolutePath().toString()); - loaded = true; } catch (IOException | UnsatisfiedLinkError e) { + LOADED.remove(lib); throw (UnsatisfiedLinkError) new UnsatisfiedLinkError("Failed to load native CUDA bridge: " + e).initCause(e); } diff --git a/src/main/java/org/apache/sysds/cujava/NativePointerObject.java b/src/main/java/org/apache/sysds/cujava/NativePointerObject.java index 13936bf00ef..8b3c33cb3e6 100644 --- a/src/main/java/org/apache/sysds/cujava/NativePointerObject.java +++ b/src/main/java/org/apache/sysds/cujava/NativePointerObject.java @@ -21,7 +21,7 @@ public abstract class NativePointerObject { - private final long nativePointer; + private long nativePointer; protected NativePointerObject() { nativePointer = 0; @@ -35,7 +35,7 @@ protected NativePointerObject(NativePointerObject other) { this.nativePointer = other.nativePointer; } - protected long getNativePointer() { + public long getNativePointer() { return nativePointer; } diff --git a/src/main/java/org/apache/sysds/cujava/Pointer.java b/src/main/java/org/apache/sysds/cujava/Pointer.java index 05647c0e4dc..84d280db4b9 100644 --- a/src/main/java/org/apache/sysds/cujava/Pointer.java +++ b/src/main/java/org/apache/sysds/cujava/Pointer.java @@ -112,10 +112,14 @@ public Pointer withByteOffset(long byteOffset) { return new Pointer(this, byteOffset); } - protected long getByteOffset() { + public long getByteOffset() { return byteOffset; } + public long address() { // nativePointer + byteOffset + return getNativePointer() + getByteOffset(); + } + public ByteBuffer getByteBuffer(long byteOffset, long byteSize) { if(buffer == null) { return null; diff --git a/src/main/java/org/apache/sysds/cujava/interop/JCudaAdapter.java b/src/main/java/org/apache/sysds/cujava/interop/JCudaAdapter.java new file mode 100644 index 00000000000..0fbb4b014cd --- /dev/null +++ b/src/main/java/org/apache/sysds/cujava/interop/JCudaAdapter.java @@ -0,0 +1,46 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +package org.apache.sysds.cujava.interop; + +import java.lang.reflect.Field; + +public class JCudaAdapter { + private JCudaAdapter() {} + + public static jcuda.Pointer toJCuda(org.apache.sysds.cujava.Pointer p) { + try { + jcuda.Pointer q = new jcuda.Pointer(); + + // jcuda.NativePointerObject.nativePointer = cuJava nativePointer + Field np = jcuda.NativePointerObject.class.getDeclaredField("nativePointer"); + np.setAccessible(true); + np.setLong(q, p.getNativePointer()); + + // jcuda.Pointer.byteOffset = cuJava byteOffset + Field bo = jcuda.Pointer.class.getDeclaredField("byteOffset"); + bo.setAccessible(true); + bo.setLong(q, p.getByteOffset()); + + return q; + } catch (ReflectiveOperationException e) { + throw new IllegalStateException("cuJava→JCuda pointer adaptation failed", e); + } + } +} diff --git a/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java b/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java index cb2dd2d37d3..83bde927c37 100644 --- a/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java +++ b/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java @@ -28,12 +28,14 @@ public class CuJava { private static boolean exceptionsEnabled = true; + private static final String LIB_BASE = "cujava_runtime"; + private CuJava(){ } static { - CuJavaLibLoader.load(); + CuJavaLibLoader.load(LIB_BASE); } private static int checkCudaError(int result) @@ -51,4 +53,11 @@ public static int cudaMemcpy(Pointer dst, Pointer src, long count, int cudaMemcp private static native int cudaMemcpyNative(Pointer dst, Pointer src, long count, int cudaMemcpyKind_kind); + public static int cudaMalloc(Pointer devPtr, long size) + { + return checkCudaError(cudaMallocNative(devPtr, size)); + } + private static native int cudaMallocNative(Pointer devPtr, long size); + + } From bb35dd4336c60ba402a8912d9e1c9412457b4afc Mon Sep 17 00:00:00 2001 From: ReneEnjilian Date: Wed, 20 Aug 2025 18:48:39 +0200 Subject: [PATCH 16/57] fix javadoc --- src/main/java/org/apache/sysds/cujava/runtime/CudaError.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/java/org/apache/sysds/cujava/runtime/CudaError.java b/src/main/java/org/apache/sysds/cujava/runtime/CudaError.java index 81612fdef51..1cde28b2570 100644 --- a/src/main/java/org/apache/sysds/cujava/runtime/CudaError.java +++ b/src/main/java/org/apache/sysds/cujava/runtime/CudaError.java @@ -301,7 +301,7 @@ public class CudaError { * cudaLimitDevRuntimeSyncDepth limit to the cudaDeviceSetLimit api before the host-side launch of a kernel using * the device runtime. Keep in mind that additional levels of sync depth require the runtime to reserve large * amounts of device memory that cannot be used for user allocations. Note that cudaDeviceSynchronize made from - * device runtime is only supported on devices of compute capability < 9.0. + * device runtime is only supported on devices of compute capability lass than 9.0. */ public static final int cudaErrorSyncDepthExceeded = 68; From ec268c73cc88b4f1a076c05acd5847a3bdf3d91f Mon Sep 17 00:00:00 2001 From: ReneEnjilian Date: Wed, 20 Aug 2025 18:59:17 +0200 Subject: [PATCH 17/57] fix deprecated notification --- .../sysds/cujava/runtime/CudaError.java | 24 +++++++++---------- 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/src/main/java/org/apache/sysds/cujava/runtime/CudaError.java b/src/main/java/org/apache/sysds/cujava/runtime/CudaError.java index 1cde28b2570..d8c6fab7d29 100644 --- a/src/main/java/org/apache/sysds/cujava/runtime/CudaError.java +++ b/src/main/java/org/apache/sysds/cujava/runtime/CudaError.java @@ -62,24 +62,24 @@ public class CudaError { public static final int cudaErrorProfilerDisabled = 5; /** + * @deprecated * This error return is deprecated as of CUDA 5.0. It is no longer an error to attempt to enable/disable the * profiling via cudaProfilerStart or cudaProfilerStop without initialization. */ - @Deprecated public static final int cudaErrorProfilerNotInitialized = 6; /** + * @deprecated * This error return is deprecated as of CUDA 5.0. It is no longer an error to call cudaProfilerStart() when * profiling is already enabled. */ - @Deprecated public static final int cudaErrorProfilerAlreadyStarted = 7; /** + * @deprecated * This error return is deprecated as of CUDA 5.0. It is no longer an error to call cudaProfilerStop() when * profiling is already disabled. */ - @Deprecated public static final int cudaErrorProfilerAlreadyStopped = 8; /** @@ -101,17 +101,17 @@ public class CudaError { public static final int cudaErrorInvalidSymbol = 13; /** + * @deprecated * This indicates that at least one host pointer passed to the API call is not a valid host pointer. This error * return is deprecated as of CUDA 10.1. */ - @Deprecated public static final int cudaErrorInvalidHostPointer = 16; /** + * @deprecated * This indicates that at least one device pointer passed to the API call is not a valid device pointer. This error * return is deprecated as of CUDA 10.1. */ - @Deprecated public static final int cudaErrorInvalidDevicePointer = 17; /** @@ -138,35 +138,35 @@ public class CudaError { public static final int cudaErrorInvalidMemcpyDirection = 21; /** + * @deprecated * This indicated that the user has taken the address of a constant variable, which was forbidden up until the CUDA * 3.1 release. This error return is deprecated as of CUDA 3.1. Variables in constant memory may now have their * address taken by the runtime via cudaGetSymbolAddress(). */ - @Deprecated public static final int cudaErrorAddressOfConstant = 22; /** + * @deprecated * This indicated that a texture fetch was not able to be performed. This was previously used for device emulation * of texture operations. This error return is deprecated as of CUDA 3.1. Device emulation mode was removed with the * CUDA 3.1 release. */ - @Deprecated public static final int cudaErrorTextureFetchFailed = 23; /** + * @deprecated * This indicated that a texture was not bound for access. This was previously used for device emulation of texture * operations. his error return is deprecated as of CUDA 3.1. Device emulation mode was removed with the CUDA 3.1 * release */ - @Deprecated public static final int cudaErrorTextureNotBound = 24; /** + * @deprecated * This indicated that a synchronization operation had failed. This was previously used for some device emulation * functions. This error return is deprecated as of CUDA 3.1. Device emulation mode was removed with the CUDA 3.1 * release. */ - @Deprecated public static final int cudaErrorSynchronizationError = 25; /** @@ -181,17 +181,17 @@ public class CudaError { public static final int cudaErrorInvalidNormSetting = 27; /** + * @deprecated * Mixing of device and device emulation code was not allowed. This error return is deprecated as of CUDA 3.1. * Device emulation mode was removed with the CUDA 3.1 release. */ - @Deprecated public static final int cudaErrorMixedDeviceExecution = 28; /** + * @deprecated * This indicates that the API call is not yet implemented. Production releases of CUDA will never return this * error. This error return is deprecated as of CUDA 4.1. */ - @Deprecated public static final int cudaErrorNotYetImplemented = 31; /** @@ -266,11 +266,11 @@ public class CudaError { public static final int cudaErrorMissingConfiguration = 52; /** + * @deprecated * This indicated that a previous kernel launch failed. This was previously used for device emulation of kernel * launches. This error return is deprecated as of CUDA 3.1. Device emulation mode was removed with the CUDA 3.1 * release. */ - @Deprecated public static final int cudaErrorPriorLaunchFailure = 53; /** From 191aa1c0caf7a1ce2d92f5686b493e3336d62dcd Mon Sep 17 00:00:00 2001 From: ReneEnjilian Date: Wed, 20 Aug 2025 22:42:45 +0200 Subject: [PATCH 18/57] add cudaFreeNative --- src/main/cpp/jni/runtime/cujava_runtime.cpp | 21 ++++++++++++++++++- src/main/cpp/jni/runtime/cujava_runtime.hpp | 12 +++++++++-- .../apache/sysds/cujava/runtime/CuJava.java | 6 ++++++ 3 files changed, 36 insertions(+), 3 deletions(-) diff --git a/src/main/cpp/jni/runtime/cujava_runtime.cpp b/src/main/cpp/jni/runtime/cujava_runtime.cpp index bff0a91a17d..f11428f8bb1 100644 --- a/src/main/cpp/jni/runtime/cujava_runtime.cpp +++ b/src/main/cpp/jni/runtime/cujava_runtime.cpp @@ -20,7 +20,6 @@ #include "cujava_runtime.hpp" #include "cujava_runtime_common.hpp" -//#include "../common/cujava_pointer_utils.hpp" JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM *jvm, void *reserved) @@ -121,3 +120,23 @@ JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaMallocNat return result; } + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaFreeNative + (JNIEnv *env, jclass cls, jobject devPtr) +{ + if (devPtr == NULL) + { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'devPtr' is null for cudaFree"); + return CUJAVA_INTERNAL_ERROR; + } + Logger::log(LOG_TRACE, "Executing cudaFree\n"); + + void *nativeDevPtr = NULL; + nativeDevPtr = getPointer(env, devPtr); + int result = cudaFree(nativeDevPtr); + return result; +} + + + diff --git a/src/main/cpp/jni/runtime/cujava_runtime.hpp b/src/main/cpp/jni/runtime/cujava_runtime.hpp index 92a3624d850..eb1e9729e2a 100644 --- a/src/main/cpp/jni/runtime/cujava_runtime.hpp +++ b/src/main/cpp/jni/runtime/cujava_runtime.hpp @@ -28,15 +28,23 @@ extern "C" { /* * Class: org.apache.sysds.cujava.runtime.CuJava - * Method: cudaMemcpyNative - * Signature: (Lorg/apache/sysds/cujava/Pointer;Lorg/apache/sysds/cujava/Pointer;JI)I + * Methods: + * - cudaMemcpyNative + * - cudaMallocNative + * - cudaFreeNative */ + + + JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaMemcpyNative (JNIEnv *, jclass, jobject, jobject, jlong, jint); JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaMallocNative (JNIEnv *env, jclass cls, jobject devPtr, jlong size); +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaFreeNative + (JNIEnv *env, jclass cls, jobject devPtr); + #ifdef __cplusplus } #endif diff --git a/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java b/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java index 83bde927c37..26c1bd03ca1 100644 --- a/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java +++ b/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java @@ -59,5 +59,11 @@ public static int cudaMalloc(Pointer devPtr, long size) } private static native int cudaMallocNative(Pointer devPtr, long size); + public static int cudaFree(Pointer devPtr) + { + return checkCudaError(cudaFreeNative(devPtr)); + } + private static native int cudaFreeNative(Pointer devPtr); + } From ecc7e7353ca3af01e1fe17ffc485ccadcf834dfc Mon Sep 17 00:00:00 2001 From: ReneEnjilian Date: Wed, 20 Aug 2025 22:53:53 +0200 Subject: [PATCH 19/57] add cudamemset --- src/main/cpp/jni/runtime/cujava_runtime.cpp | 63 +++++++++---------- src/main/cpp/jni/runtime/cujava_runtime.hpp | 4 ++ .../apache/sysds/cujava/runtime/CuJava.java | 16 +++-- 3 files changed, 45 insertions(+), 38 deletions(-) diff --git a/src/main/cpp/jni/runtime/cujava_runtime.cpp b/src/main/cpp/jni/runtime/cujava_runtime.cpp index f11428f8bb1..68622537c5f 100644 --- a/src/main/cpp/jni/runtime/cujava_runtime.cpp +++ b/src/main/cpp/jni/runtime/cujava_runtime.cpp @@ -22,8 +22,7 @@ #include "cujava_runtime_common.hpp" -JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM *jvm, void *reserved) -{ +JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM *jvm, void *reserved) { JNIEnv *env = nullptr; if (jvm->GetEnv((void **)&env, JNI_VERSION_1_4)) { return JNI_ERR; @@ -37,21 +36,17 @@ JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM *jvm, void *reserved) } -JNIEXPORT void JNICALL JNI_OnUnload(JavaVM *vm, void *reserved) -{ +JNIEXPORT void JNICALL JNI_OnUnload(JavaVM *vm, void *reserved) { } JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaMemcpyNative - (JNIEnv *env, jclass cls, jobject dst, jobject src, jlong count, jint kind) -{ - if (dst == NULL) - { + (JNIEnv *env, jclass cls, jobject dst, jobject src, jlong count, jint kind) { + if (dst == NULL) { ThrowByName(env, "java/lang/NullPointerException", "Parameter 'dst' is null for cudaMemcpy"); return CUJAVA_INTERNAL_ERROR; } - if (src == NULL) - { + if (src == NULL) { ThrowByName(env, "java/lang/NullPointerException", "Parameter 'src' is null for cudaMemcpy"); return CUJAVA_INTERNAL_ERROR; } @@ -59,40 +54,33 @@ JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaMemcpyNat // Obtain the destination and source pointers PointerData *dstPointerData = initPointerData(env, dst); - if (dstPointerData == NULL) - { + if (dstPointerData == NULL) { return CUJAVA_INTERNAL_ERROR; } PointerData *srcPointerData = initPointerData(env, src); - if (srcPointerData == NULL) - { + if (srcPointerData == NULL) { return CUJAVA_INTERNAL_ERROR; } // Execute the cudaMemcpy operation int result = CUJAVA_INTERNAL_ERROR; - if (kind == cudaMemcpyHostToHost) - { + if (kind == cudaMemcpyHostToHost) { Logger::log(LOG_TRACE, "Copying %ld bytes from host to host\n", (long)count); result = cudaMemcpy((void*)dstPointerData->getPointer(env), (void*)srcPointerData->getPointer(env), (size_t)count, cudaMemcpyHostToHost); } - else if (kind == cudaMemcpyHostToDevice) - { + else if (kind == cudaMemcpyHostToDevice) { Logger::log(LOG_TRACE, "Copying %ld bytes from host to device\n", (long)count); result = cudaMemcpy((void*)dstPointerData->getPointer(env), (void*)srcPointerData->getPointer(env), (size_t)count, cudaMemcpyHostToDevice); } - else if (kind == cudaMemcpyDeviceToHost) - { + else if (kind == cudaMemcpyDeviceToHost) { Logger::log(LOG_TRACE, "Copying %ld bytes from device to host\n", (long)count); result = cudaMemcpy((void*)dstPointerData->getPointer(env), (void*)srcPointerData->getPointer(env), (size_t)count, cudaMemcpyDeviceToHost); } - else if (kind == cudaMemcpyDeviceToDevice) - { + else if (kind == cudaMemcpyDeviceToDevice) { Logger::log(LOG_TRACE, "Copying %ld bytes from device to device\n", (long)count); result = cudaMemcpy((void*)dstPointerData->getPointer(env), (void*)srcPointerData->getPointer(env), (size_t)count, cudaMemcpyDeviceToDevice); } - else - { + else { Logger::log(LOG_ERROR, "Invalid cudaMemcpyKind given: %d\n", kind); return cudaErrorInvalidMemcpyDirection; } @@ -105,10 +93,8 @@ JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaMemcpyNat JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaMallocNative - (JNIEnv *env, jclass cls, jobject devPtr, jlong size) -{ - if (devPtr == NULL) - { + (JNIEnv *env, jclass cls, jobject devPtr, jlong size) { + if (devPtr == NULL) { ThrowByName(env, "java/lang/NullPointerException", "Parameter 'devPtr' is null for cudaMalloc"); return CUJAVA_INTERNAL_ERROR; } @@ -123,10 +109,8 @@ JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaMallocNat JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaFreeNative - (JNIEnv *env, jclass cls, jobject devPtr) -{ - if (devPtr == NULL) - { + (JNIEnv *env, jclass cls, jobject devPtr) { + if (devPtr == NULL) { ThrowByName(env, "java/lang/NullPointerException", "Parameter 'devPtr' is null for cudaFree"); return CUJAVA_INTERNAL_ERROR; } @@ -139,4 +123,19 @@ JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaFreeNativ } +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaMemsetNative + (JNIEnv *env, jclass cls, jobject mem, jint c, jlong count) { + if (mem == NULL) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'mem' is null for cudaMemset"); + return CUJAVA_INTERNAL_ERROR; + } + Logger::log(LOG_TRACE, "Executing cudaMemset\n"); + + void *nativeMem = getPointer(env, mem); + + int result = cudaMemset(nativeMem, (int)c, (size_t)count); + return result; +} + + diff --git a/src/main/cpp/jni/runtime/cujava_runtime.hpp b/src/main/cpp/jni/runtime/cujava_runtime.hpp index eb1e9729e2a..fc4300808ed 100644 --- a/src/main/cpp/jni/runtime/cujava_runtime.hpp +++ b/src/main/cpp/jni/runtime/cujava_runtime.hpp @@ -32,6 +32,7 @@ extern "C" { * - cudaMemcpyNative * - cudaMallocNative * - cudaFreeNative + * - cudaMemsetnative */ @@ -45,6 +46,9 @@ JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaMallocNat JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaFreeNative (JNIEnv *env, jclass cls, jobject devPtr); +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaMemsetNative + (JNIEnv *env, jclass cls, jobject mem, jint c, jlong count); + #ifdef __cplusplus } #endif diff --git a/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java b/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java index 26c1bd03ca1..9ec49c26bdf 100644 --- a/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java +++ b/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java @@ -38,8 +38,7 @@ private CuJava(){ CuJavaLibLoader.load(LIB_BASE); } - private static int checkCudaError(int result) - { + private static int checkCudaError(int result) { if (exceptionsEnabled && result != CudaError.cudaSuccess) { throw new CudaException(CudaError.errorString(result)); @@ -53,17 +52,22 @@ public static int cudaMemcpy(Pointer dst, Pointer src, long count, int cudaMemcp private static native int cudaMemcpyNative(Pointer dst, Pointer src, long count, int cudaMemcpyKind_kind); - public static int cudaMalloc(Pointer devPtr, long size) - { + public static int cudaMalloc(Pointer devPtr, long size) { return checkCudaError(cudaMallocNative(devPtr, size)); } private static native int cudaMallocNative(Pointer devPtr, long size); - public static int cudaFree(Pointer devPtr) - { + + public static int cudaFree(Pointer devPtr) { return checkCudaError(cudaFreeNative(devPtr)); } private static native int cudaFreeNative(Pointer devPtr); + public static int cudaMemset(Pointer mem, int c, long count) { + return checkCudaError(cudaMemsetNative(mem, c, count)); + } + private static native int cudaMemsetNative(Pointer mem, int c, long count); + + } From 45363d8afad2d88cf34e0f9d6159058e625889f6 Mon Sep 17 00:00:00 2001 From: ReneEnjilian Date: Wed, 20 Aug 2025 23:02:03 +0200 Subject: [PATCH 20/57] add cudaDeviceSynchronize --- src/main/cpp/jni/runtime/cujava_runtime.cpp | 9 +++++++++ src/main/cpp/jni/runtime/cujava_runtime.hpp | 5 ++++- .../java/org/apache/sysds/cujava/runtime/CuJava.java | 6 ++++++ 3 files changed, 19 insertions(+), 1 deletion(-) diff --git a/src/main/cpp/jni/runtime/cujava_runtime.cpp b/src/main/cpp/jni/runtime/cujava_runtime.cpp index 68622537c5f..428e1cbf64b 100644 --- a/src/main/cpp/jni/runtime/cujava_runtime.cpp +++ b/src/main/cpp/jni/runtime/cujava_runtime.cpp @@ -138,4 +138,13 @@ JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaMemsetNat } +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaDeviceSynchronizeNative + (JNIEnv *env, jclass cls) { + Logger::log(LOG_TRACE, "Executing cudaDeviceSynchronize\n"); + + int result = cudaDeviceSynchronize(); + return result; +} + + diff --git a/src/main/cpp/jni/runtime/cujava_runtime.hpp b/src/main/cpp/jni/runtime/cujava_runtime.hpp index fc4300808ed..b2b9a919feb 100644 --- a/src/main/cpp/jni/runtime/cujava_runtime.hpp +++ b/src/main/cpp/jni/runtime/cujava_runtime.hpp @@ -18,7 +18,6 @@ */ #include -/* Header for class org.apache.sysds.cujava.runtime.CuJava */ #ifndef _Included_org_apache_sysds_cujava_runtime_CuJava #define _Included_org_apache_sysds_cujava_runtime_CuJava @@ -33,6 +32,7 @@ extern "C" { * - cudaMallocNative * - cudaFreeNative * - cudaMemsetnative + * - cudaDeviceSynchronizeNative */ @@ -49,6 +49,9 @@ JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaFreeNativ JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaMemsetNative (JNIEnv *env, jclass cls, jobject mem, jint c, jlong count); +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaDeviceSynchronizeNative + (JNIEnv *env, jclass cls); + #ifdef __cplusplus } #endif diff --git a/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java b/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java index 9ec49c26bdf..214f56093d7 100644 --- a/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java +++ b/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java @@ -70,4 +70,10 @@ public static int cudaMemset(Pointer mem, int c, long count) { private static native int cudaMemsetNative(Pointer mem, int c, long count); + public static int cudaDeviceSynchronize() { + return checkCudaError(cudaDeviceSynchronizeNative()); + } + private static native int cudaDeviceSynchronizeNative(); + + } From 428707ab648c3bfb22f3cb7c89f8767dd20378fe Mon Sep 17 00:00:00 2001 From: ReneEnjilian Date: Wed, 20 Aug 2025 23:05:12 +0200 Subject: [PATCH 21/57] add setExceptionsEnabled --- src/main/java/org/apache/sysds/cujava/runtime/CuJava.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java b/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java index 214f56093d7..29dfb555955 100644 --- a/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java +++ b/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java @@ -75,5 +75,9 @@ public static int cudaDeviceSynchronize() { } private static native int cudaDeviceSynchronizeNative(); + public static void setExceptionsEnabled(boolean enabled) { + exceptionsEnabled = enabled; + } + } From 849d8b7364fe1178874752ec8e40b783ff570800 Mon Sep 17 00:00:00 2001 From: ReneEnjilian Date: Wed, 20 Aug 2025 23:29:45 +0200 Subject: [PATCH 22/57] add cudaMallocManaged --- src/main/cpp/jni/runtime/cujava_runtime.cpp | 24 +++++++++++++++++++ src/main/cpp/jni/runtime/cujava_runtime.hpp | 4 ++++ .../apache/sysds/cujava/runtime/CuJava.java | 7 ++++++ 3 files changed, 35 insertions(+) diff --git a/src/main/cpp/jni/runtime/cujava_runtime.cpp b/src/main/cpp/jni/runtime/cujava_runtime.cpp index 428e1cbf64b..4c3968b2b4d 100644 --- a/src/main/cpp/jni/runtime/cujava_runtime.cpp +++ b/src/main/cpp/jni/runtime/cujava_runtime.cpp @@ -147,4 +147,28 @@ JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaDeviceSyn } +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaMallocManagedNative + (JNIEnv *env, jclass cls, jobject devPtr, jlong size, jint flags) { + if (devPtr == NULL) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'devPtr' is null for cudaMallocManaged"); + return CUJAVA_INTERNAL_ERROR; + } + Logger::log(LOG_TRACE, "Executing cudaMallocManaged of %ld bytes\n", (long)size); + + void *nativeDevPtr = NULL; + int result = cudaMallocManaged(&nativeDevPtr, (size_t)size, (unsigned int)flags); + if (result == cudaSuccess) { + if (flags == cudaMemAttachHost) { + jobject object = env->NewDirectByteBuffer(nativeDevPtr, size); + env->SetObjectField(devPtr, Pointer_buffer, object); + env->SetObjectField(devPtr, Pointer_pointers, NULL); + env->SetLongField(devPtr, Pointer_byteOffset, 0); + } + env->SetLongField(devPtr, NativePointerObject_nativePointer, (jlong)nativeDevPtr); + } + + return result; +} + + diff --git a/src/main/cpp/jni/runtime/cujava_runtime.hpp b/src/main/cpp/jni/runtime/cujava_runtime.hpp index b2b9a919feb..3eadaa52670 100644 --- a/src/main/cpp/jni/runtime/cujava_runtime.hpp +++ b/src/main/cpp/jni/runtime/cujava_runtime.hpp @@ -33,6 +33,7 @@ extern "C" { * - cudaFreeNative * - cudaMemsetnative * - cudaDeviceSynchronizeNative + * - cudaMallocManagedNative */ @@ -52,6 +53,9 @@ JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaMemsetNat JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaDeviceSynchronizeNative (JNIEnv *env, jclass cls); +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaMallocManagedNative + (JNIEnv *env, jclass cls, jobject devPtr, jlong size, jint flags); + #ifdef __cplusplus } #endif diff --git a/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java b/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java index 29dfb555955..6fe3469b249 100644 --- a/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java +++ b/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java @@ -75,9 +75,16 @@ public static int cudaDeviceSynchronize() { } private static native int cudaDeviceSynchronizeNative(); + public static void setExceptionsEnabled(boolean enabled) { exceptionsEnabled = enabled; } + public static int cudaMallocManaged(Pointer devPtr, long size, int flags) { + return checkCudaError(cudaMallocManagedNative(devPtr, size, flags)); + } + private static native int cudaMallocManagedNative(Pointer devPtr, long size, int flags); + + } From 638c250f21300746eef5fb1c2c75547992ba922d Mon Sep 17 00:00:00 2001 From: ReneEnjilian Date: Thu, 21 Aug 2025 02:46:24 +0200 Subject: [PATCH 23/57] add cudaMemGetInfo --- src/main/cpp/jni/common/cujava_jni_utils.cpp | 219 +++++++++--------- src/main/cpp/jni/common/cujava_jni_utils.hpp | 33 +-- .../cpp/jni/common/cujava_pointer_utils.cpp | 57 ++--- src/main/cpp/jni/runtime/cujava_runtime.cpp | 25 ++ src/main/cpp/jni/runtime/cujava_runtime.hpp | 4 + .../apache/sysds/cujava/runtime/CuJava.java | 6 + 6 files changed, 184 insertions(+), 160 deletions(-) diff --git a/src/main/cpp/jni/common/cujava_jni_utils.cpp b/src/main/cpp/jni/common/cujava_jni_utils.cpp index d2afefc281c..e2b11a52dec 100644 --- a/src/main/cpp/jni/common/cujava_jni_utils.cpp +++ b/src/main/cpp/jni/common/cujava_jni_utils.cpp @@ -17,110 +17,117 @@ * under the License. */ - #include "cujava_jni_utils.hpp" - #include "cujava_logger.hpp" - - // Cached method ID (same as JCuda; useful for convertString if you add it later) - jmethodID String_getBytes = nullptr; - - - int initJNIUtils(JNIEnv *env) - { - jclass cls = nullptr; - - // java.lang.String#getBytes()[B - if (!init(env, cls, "java/lang/String")) return JNI_ERR; - if (!init(env, cls, String_getBytes, "getBytes", "()[B")) return JNI_ERR; - - return JNI_VERSION_1_4; - } - - /** Find a class by name. */ - bool init(JNIEnv *env, jclass& cls, const char *name) - { - cls = env->FindClass(name); - if (cls == nullptr) - { - Logger::log(LOG_ERROR, "Failed to access class '%s'\n", name); - return false; - } - return true; - } - - /** Create a global ref to a class. */ - bool initGlobal(JNIEnv *env, jclass &globalCls, const char *className) - { - jclass cls = nullptr; - if (!init(env, cls, className)) return false; - globalCls = (jclass)env->NewGlobalRef(cls); - if (globalCls == nullptr) - { - Logger::log(LOG_ERROR, "Failed to create reference to class %s\n", className); - return false; - } - return true; - } - - /** Resolve a field ID. */ - bool init(JNIEnv *env, jclass cls, jfieldID& field, const char *name, const char *signature) - { - field = env->GetFieldID(cls, name, signature); - if (field == nullptr) - { - Logger::log(LOG_ERROR, "Failed to access field '%s' with signature '%s'\n", name, signature); - return false; - } - return true; - } - - /** Resolve a method ID. */ - bool init(JNIEnv *env, jclass cls, jmethodID& method, const char *name, const char *signature) - { - method = env->GetMethodID(cls, name, signature); - if (method == nullptr) - { - Logger::log(LOG_ERROR, "Failed to access method '%s' with signature '%s'\n", name, signature); - return false; - } - return true; - } - - /** Global class + no-args constructor, convenient helper. */ - bool init(JNIEnv *env, jclass &globalCls, jmethodID &constructor, const char *className) - { - jclass cls = nullptr; - if (!init(env, cls, className)) return false; - if (!init(env, cls, constructor, "", "()V")) return false; - - globalCls = (jclass)env->NewGlobalRef(cls); - if (globalCls == nullptr) - { - Logger::log(LOG_ERROR, "Failed to create reference to class %s\n", className); - return false; - } - return true; - } - - /** Resolve the standard 'long nativePointer' field for a class. */ - bool initNativePointer(JNIEnv *env, jfieldID& field, const char *className) - { - jclass cls = env->FindClass(className); - if (cls == nullptr) - { - Logger::log(LOG_ERROR, "Failed to access class %s\n", className); - return false; - } - return init(env, cls, field, "nativePointer", "J"); - } - - /** Throw a Java exception by FQN. */ - void ThrowByName(JNIEnv *env, const char *name, const char *msg) - { - jclass cls = env->FindClass(name); - if (cls != nullptr) - { - env->ThrowNew(cls, msg ? msg : ""); - env->DeleteLocalRef(cls); - } - } +#include "cujava_jni_utils.hpp" +#include "cujava_logger.hpp" + +// Cached method ID (same as JCuda; useful for convertString if you add it later) +jmethodID String_getBytes = nullptr; + + +int initJNIUtils(JNIEnv *env) { + jclass cls = nullptr; + + // java.lang.String#getBytes()[B + if (!init(env, cls, "java/lang/String")) return JNI_ERR; + if (!init(env, cls, String_getBytes, "getBytes", "()[B")) return JNI_ERR; + + return JNI_VERSION_1_4; +} + +/** Find a class by name. */ +bool init(JNIEnv *env, jclass& cls, const char *name) { + cls = env->FindClass(name); + if (cls == nullptr) { + Logger::log(LOG_ERROR, "Failed to access class '%s'\n", name); + return false; + } + return true; +} + +/** Create a global ref to a class. */ +bool initGlobal(JNIEnv *env, jclass &globalCls, const char *className) { + jclass cls = nullptr; + if (!init(env, cls, className)) return false; + globalCls = (jclass)env->NewGlobalRef(cls); + if (globalCls == nullptr) { + Logger::log(LOG_ERROR, "Failed to create reference to class %s\n", className); + return false; + } + return true; +} + +/** Resolve a field ID. */ +bool init(JNIEnv *env, jclass cls, jfieldID& field, const char *name, const char *signature) { + field = env->GetFieldID(cls, name, signature); + if (field == nullptr) { + Logger::log(LOG_ERROR, "Failed to access field '%s' with signature '%s'\n", name, signature); + return false; + } + return true; +} + +/** Resolve a method ID. */ +bool init(JNIEnv *env, jclass cls, jmethodID& method, const char *name, const char *signature) { + method = env->GetMethodID(cls, name, signature); + if (method == nullptr) { + Logger::log(LOG_ERROR, "Failed to access method '%s' with signature '%s'\n", name, signature); + return false; + } + return true; +} + +/** Global class + no-args constructor, convenient helper. */ +bool init(JNIEnv *env, jclass &globalCls, jmethodID &constructor, const char *className) { + jclass cls = nullptr; + if (!init(env, cls, className)) return false; + if (!init(env, cls, constructor, "", "()V")) return false; + + globalCls = (jclass)env->NewGlobalRef(cls); + if (globalCls == nullptr) { + Logger::log(LOG_ERROR, "Failed to create reference to class %s\n", className); + return false; + } + return true; +} + +/** Resolve the standard 'long nativePointer' field for a class. */ +bool initNativePointer(JNIEnv *env, jfieldID& field, const char *className) { + jclass cls = env->FindClass(className); + if (cls == nullptr) { + Logger::log(LOG_ERROR, "Failed to access class %s\n", className); + return false; + } + return init(env, cls, field, "nativePointer", "J"); +} + +/** Throw a Java exception by FQN. */ +void ThrowByName(JNIEnv *env, const char *name, const char *msg) { + jclass cls = env->FindClass(name); + if (cls != nullptr) { + env->ThrowNew(cls, msg ? msg : ""); + env->DeleteLocalRef(cls); + } +} + +/** Utility to set one element of a Java long\[] (ja\[index] = value) from native code. */ +bool set(JNIEnv *env, jlongArray ja, int index, jlong value) { + if (ja == nullptr) return true; + + jsize len = env->GetArrayLength(ja); + if (index < 0 || index >= len) { + ThrowByName(env, "java/lang/ArrayIndexOutOfBoundsException", + "Array index out of bounds"); + return false; + } + + jlong *a = (jlong*)env->GetPrimitiveArrayCritical(ja, nullptr); + if (a == nullptr) return false; + + a[index] = value; + + // IMPORTANT: use '0' (commit) — don't change to JNI_ABORT here + env->ReleasePrimitiveArrayCritical(ja, a, 0); + return true; +} + diff --git a/src/main/cpp/jni/common/cujava_jni_utils.hpp b/src/main/cpp/jni/common/cujava_jni_utils.hpp index d4190d8d260..49cd398a9ad 100644 --- a/src/main/cpp/jni/common/cujava_jni_utils.hpp +++ b/src/main/cpp/jni/common/cujava_jni_utils.hpp @@ -17,26 +17,27 @@ * under the License. */ - #ifndef CUJAVA_JNI_UTILS_HPP - #define CUJAVA_JNI_UTILS_HPP +#ifndef CUJAVA_JNI_UTILS_HPP +#define CUJAVA_JNI_UTILS_HPP - #include +#include - bool init(JNIEnv* env, jclass& cls, const char* name); - bool initGlobal(JNIEnv* env, jclass& globalCls, const char* className); - bool init(JNIEnv* env, jclass cls, jfieldID& field, const char* name, const char* signature); - bool init(JNIEnv* env, jclass cls, jmethodID& method, const char* name, const char* signature); - bool init(JNIEnv* env, jclass& globalCls, jmethodID& constructor, const char* className); - bool initNativePointer(JNIEnv* env, jfieldID& field, const char* className); +bool init(JNIEnv* env, jclass& cls, const char* name); +bool initGlobal(JNIEnv* env, jclass& globalCls, const char* className); +bool init(JNIEnv* env, jclass cls, jfieldID& field, const char* name, const char* signature); +bool init(JNIEnv* env, jclass cls, jmethodID& method, const char* name, const char* signature); +bool init(JNIEnv* env, jclass& globalCls, jmethodID& constructor, const char* className); +bool initNativePointer(JNIEnv* env, jfieldID& field, const char* className); +bool set(JNIEnv *env, jlongArray ja, int index, jlong value); - // ---- Exceptions ---- - void ThrowByName(JNIEnv* env, const char* name, const char* msg); +// ---- Exceptions ---- +void ThrowByName(JNIEnv* env, const char* name, const char* msg); - // ---- Module init (optional; keep if called from JNI_OnLoad) ---- - int initJNIUtils(JNIEnv* env); +// ---- Module init (optional; keep if called from JNI_OnLoad) ---- +int initJNIUtils(JNIEnv* env); - // ---- Cached IDs (minimal) ---- - extern jmethodID String_getBytes; // ()[B +// ---- Cached IDs (minimal) ---- +extern jmethodID String_getBytes; // ()[B - #endif // CUJAVA_JNI_UTILS_HPP +#endif // CUJAVA_JNI_UTILS_HPP diff --git a/src/main/cpp/jni/common/cujava_pointer_utils.cpp b/src/main/cpp/jni/common/cujava_pointer_utils.cpp index 9ec20963063..3a8480406f2 100644 --- a/src/main/cpp/jni/common/cujava_pointer_utils.cpp +++ b/src/main/cpp/jni/common/cujava_pointer_utils.cpp @@ -45,8 +45,7 @@ jmethodID Pointer_constructor = nullptr; // ()V // ----------------------------------------------------------------------------- // Initialize field- and method IDs for Pointer/Buffer plumbing // ----------------------------------------------------------------------------- -int initPointerUtils(JNIEnv *env) -{ +int initPointerUtils(JNIEnv *env) { jclass cls = nullptr; // java.lang.Object#getClass() @@ -84,16 +83,13 @@ int initPointerUtils(JNIEnv *env) // ----------------------------------------------------------------------------- // Helper: validate newly created PointerData // ----------------------------------------------------------------------------- -static PointerData* validatePointerData(JNIEnv *env, jobject nativePointerObject, PointerData *pointerData) -{ - if (pointerData == nullptr) - { +static PointerData* validatePointerData(JNIEnv *env, jobject nativePointerObject, PointerData *pointerData) { + if (pointerData == nullptr) { ThrowByName(env, "java/lang/OutOfMemoryError", "Out of memory while creating pointer data"); return nullptr; } - if (!pointerData->init(env, nativePointerObject)) - { + if (!pointerData->init(env, nativePointerObject)) { delete pointerData; return nullptr; } @@ -108,13 +104,11 @@ static PointerData* validatePointerData(JNIEnv *env, jobject nativePointerObject // else Pointer(nativePointer+byteOffset) -> NativePointerData, // else non-Pointer/NULL -> NativePointerObjectPointerData) // ----------------------------------------------------------------------------- -PointerData* initPointerData(JNIEnv *env, jobject nativePointerObject) -{ +PointerData* initPointerData(JNIEnv *env, jobject nativePointerObject) { Logger::log(LOG_DEBUGTRACE, "Initializing pointer data for Java NativePointerObject %p\n", nativePointerObject); // NULL -> NativePointerObjectPointerData - if (nativePointerObject == nullptr) - { + if (nativePointerObject == nullptr) { Logger::log(LOG_DEBUGTRACE, "Initializing NativePointerObjectPointerData\n"); auto *pd = new NativePointerObjectPointerData(); return validatePointerData(env, nativePointerObject, pd); @@ -122,8 +116,7 @@ PointerData* initPointerData(JNIEnv *env, jobject nativePointerObject) // If not an instance of Pointer -> NativePointerObjectPointerData jboolean isPointer = env->IsInstanceOf(nativePointerObject, Pointer_class); - if (!isPointer) - { + if (!isPointer) { Logger::log(LOG_DEBUGTRACE, "Initializing NativePointerObjectPointerData\n"); auto *pd = new NativePointerObjectPointerData(); return validatePointerData(env, nativePointerObject, pd); @@ -131,8 +124,7 @@ PointerData* initPointerData(JNIEnv *env, jobject nativePointerObject) // If Pointer.pointers != null -> PointersArrayPointerData jobjectArray pointersArray = (jobjectArray)env->GetObjectField(nativePointerObject, Pointer_pointers); - if (pointersArray != nullptr) - { + if (pointersArray != nullptr) { Logger::log(LOG_DEBUGTRACE, "Initializing PointersArrayPointerData\n"); auto *pd = new PointersArrayPointerData(); return validatePointerData(env, nativePointerObject, pd); @@ -140,13 +132,11 @@ PointerData* initPointerData(JNIEnv *env, jobject nativePointerObject) // If Pointer.buffer != null -> Buffer paths jobject buffer = env->GetObjectField(nativePointerObject, Pointer_buffer); - if (buffer != nullptr) - { + if (buffer != nullptr) { // Direct buffer? jboolean isDirect = env->CallBooleanMethod(buffer, Buffer_isDirect); if (env->ExceptionCheck()) return nullptr; - if (isDirect == JNI_TRUE) - { + if (isDirect == JNI_TRUE) { Logger::log(LOG_DEBUGTRACE, "Initializing DirectBufferPointerData\n"); auto *pd = new DirectBufferPointerData(); return validatePointerData(env, nativePointerObject, pd); @@ -155,8 +145,7 @@ PointerData* initPointerData(JNIEnv *env, jobject nativePointerObject) // Backed by primitive array? jboolean hasArray = env->CallBooleanMethod(buffer, Buffer_hasArray); if (env->ExceptionCheck()) return nullptr; - if (hasArray == JNI_TRUE) - { + if (hasArray == JNI_TRUE) { Logger::log(LOG_DEBUGTRACE, "Initializing ArrayBufferPointerData\n"); auto *pd = new ArrayBufferPointerData(); return validatePointerData(env, nativePointerObject, pd); @@ -178,8 +167,7 @@ PointerData* initPointerData(JNIEnv *env, jobject nativePointerObject) // ----------------------------------------------------------------------------- // Release helper: calls PointerData::release and deletes the object // ----------------------------------------------------------------------------- -bool releasePointerData(JNIEnv *env, PointerData* &pointerData, jint mode) -{ +bool releasePointerData(JNIEnv *env, PointerData* &pointerData, jint mode) { if (pointerData == nullptr) return true; if (!pointerData->release(env, mode)) return false; delete pointerData; @@ -190,52 +178,45 @@ bool releasePointerData(JNIEnv *env, PointerData* &pointerData, jint mode) // ----------------------------------------------------------------------------- // Misc helpers // ----------------------------------------------------------------------------- -bool isDirectByteBuffer(JNIEnv *env, jobject buffer) -{ +bool isDirectByteBuffer(JNIEnv *env, jobject buffer) { if (buffer == nullptr) return false; jboolean isDirect = env->CallBooleanMethod(buffer, Buffer_isDirect); if (env->ExceptionCheck()) return false; return (isDirect == JNI_TRUE); } -bool isPointerBackedByNativeMemory(JNIEnv *env, jobject object) -{ +bool isPointerBackedByNativeMemory(JNIEnv *env, jobject object) { if (object == nullptr) return false; jlong np = env->GetLongField(object, NativePointerObject_nativePointer); if (np != 0) return true; jboolean isPtr = env->IsInstanceOf(object, Pointer_class); - if (isPtr) - { + if (isPtr) { jobject buffer = env->GetObjectField(object, Pointer_buffer); return isDirectByteBuffer(env, buffer); } return false; } -void setNativePointerValue(JNIEnv *env, jobject nativePointerObject, jlong pointer) -{ +void setNativePointerValue(JNIEnv *env, jobject nativePointerObject, jlong pointer) { if (nativePointerObject == nullptr) return; env->SetLongField(nativePointerObject, NativePointerObject_nativePointer, pointer); } -void* getNativePointerValue(JNIEnv *env, jobject nativePointerObject) -{ +void* getNativePointerValue(JNIEnv *env, jobject nativePointerObject) { if (nativePointerObject == nullptr) return nullptr; jlong p = env->GetLongField(nativePointerObject, NativePointerObject_nativePointer); return (void*)(uintptr_t)p; } -void setPointer(JNIEnv *env, jobject pointerObject, jlong pointer) -{ +void setPointer(JNIEnv *env, jobject pointerObject, jlong pointer) { if (pointerObject == nullptr) return; env->SetLongField(pointerObject, NativePointerObject_nativePointer, pointer); env->SetLongField(pointerObject, Pointer_byteOffset, 0); } -void* getPointer(JNIEnv *env, jobject pointerObject) -{ +void* getPointer(JNIEnv *env, jobject pointerObject) { if (pointerObject == nullptr) return nullptr; jlong start = env->GetLongField(pointerObject, NativePointerObject_nativePointer); jlong off = env->GetLongField(pointerObject, Pointer_byteOffset); diff --git a/src/main/cpp/jni/runtime/cujava_runtime.cpp b/src/main/cpp/jni/runtime/cujava_runtime.cpp index 4c3968b2b4d..e0834f21217 100644 --- a/src/main/cpp/jni/runtime/cujava_runtime.cpp +++ b/src/main/cpp/jni/runtime/cujava_runtime.cpp @@ -171,4 +171,29 @@ JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaMallocMan } +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaMemGetInfoNative + (JNIEnv *env, jclass cls, jlongArray freeBytes, jlongArray totalBytes) { + if (freeBytes == NULL) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'freeBytes' is null for cudaMemGetInfo"); + return CUJAVA_INTERNAL_ERROR; + } + if (totalBytes == NULL) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'freeBytes' is null for cudaMemGetInfo"); + return JCUDA_INTERNAL_ERROR; + } + Logger::log(LOG_TRACE, "Executing cudaMemGetInfo\n"); + + size_t nativeFreeBytes = 0; + size_t nativeTotalBytes = 0; + + int result = cudaMemGetInfo(&nativeFreeBytes, &nativeTotalBytes); + + if (!set(env, freeBytes, 0, (jlong)nativeFreeBytes)) return CUJAVA_INTERNAL_ERROR; + if (!set(env, totalBytes, 0, (jlong)nativeTotalBytes)) return CUJAVA_INTERNAL_ERROR; + + return result; +} + + + diff --git a/src/main/cpp/jni/runtime/cujava_runtime.hpp b/src/main/cpp/jni/runtime/cujava_runtime.hpp index 3eadaa52670..0c867a1c1ba 100644 --- a/src/main/cpp/jni/runtime/cujava_runtime.hpp +++ b/src/main/cpp/jni/runtime/cujava_runtime.hpp @@ -34,6 +34,7 @@ extern "C" { * - cudaMemsetnative * - cudaDeviceSynchronizeNative * - cudaMallocManagedNative + * - cudaMemGetInfoNative */ @@ -56,6 +57,9 @@ JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaDeviceSyn JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaMallocManagedNative (JNIEnv *env, jclass cls, jobject devPtr, jlong size, jint flags); +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaMemGetInfoNative + (JNIEnv *env, jclass cls, jlongArray freeBytes, jlongArray totalBytes); + #ifdef __cplusplus } #endif diff --git a/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java b/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java index 6fe3469b249..0a517128005 100644 --- a/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java +++ b/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java @@ -87,4 +87,10 @@ public static int cudaMallocManaged(Pointer devPtr, long size, int flags) { private static native int cudaMallocManagedNative(Pointer devPtr, long size, int flags); + public static int cudaMemGetInfo(long free[], long total[]) { + return checkCudaError(cudaMemGetInfoNative(free, total)); + } + private static native int cudaMemGetInfoNative(long free[], long total[]); + + } From b9f2d36dbc79d4456c75834541e2404aaa4e399b Mon Sep 17 00:00:00 2001 From: ReneEnjilian Date: Thu, 21 Aug 2025 03:18:27 +0200 Subject: [PATCH 24/57] add cudaDeviceScheduleBlockingSync --- src/main/java/org/apache/sysds/cujava/runtime/CuJava.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java b/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java index 0a517128005..a409cf4f540 100644 --- a/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java +++ b/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java @@ -30,6 +30,8 @@ public class CuJava { private static final String LIB_BASE = "cujava_runtime"; + public static final int cudaDeviceScheduleBlockingSync = 4; + private CuJava(){ } From af30fe7ee4cbd5e38e665f8bf00bb17b7f7bf108 Mon Sep 17 00:00:00 2001 From: ReneEnjilian Date: Fri, 22 Aug 2025 01:10:33 +0200 Subject: [PATCH 25/57] add cudaGetDeviceCount --- src/main/cpp/jni/common/cujava_jni_utils.cpp | 22 +++++++++++++++++-- src/main/cpp/jni/runtime/cujava_runtime.cpp | 17 +++++++++++++- src/main/cpp/jni/runtime/cujava_runtime.hpp | 4 ++++ .../apache/sysds/cujava/runtime/CuJava.java | 6 +++++ 4 files changed, 46 insertions(+), 3 deletions(-) diff --git a/src/main/cpp/jni/common/cujava_jni_utils.cpp b/src/main/cpp/jni/common/cujava_jni_utils.cpp index e2b11a52dec..ef8f0e6e5d4 100644 --- a/src/main/cpp/jni/common/cujava_jni_utils.cpp +++ b/src/main/cpp/jni/common/cujava_jni_utils.cpp @@ -109,7 +109,7 @@ void ThrowByName(JNIEnv *env, const char *name, const char *msg) { } } -/** Utility to set one element of a Java long\[] (ja\[index] = value) from native code. */ +/** Utility to set one element of a long[] array. */ bool set(JNIEnv *env, jlongArray ja, int index, jlong value) { if (ja == nullptr) return true; @@ -124,8 +124,26 @@ bool set(JNIEnv *env, jlongArray ja, int index, jlong value) { if (a == nullptr) return false; a[index] = value; + env->ReleasePrimitiveArrayCritical(ja, a, 0); + return true; +} - // IMPORTANT: use '0' (commit) — don't change to JNI_ABORT here +/** Utility to set one element of an int[] array. */ +bool set(JNIEnv *env, jintArray ja, int index, jint value) { + if (ja == nullptr) { + return true; + } + jsize len = env->GetArrayLength(ja); + if (index < 0 || index >= len) { + ThrowByName(env, "java/lang/ArrayIndexOutOfBoundsException", + "Array index out of bounds"); + return false; + } + jint *a = (jint*)env->GetPrimitiveArrayCritical(ja, NULL); + if (a == nullptr) { + return false; + } + a[index] = value; env->ReleasePrimitiveArrayCritical(ja, a, 0); return true; } diff --git a/src/main/cpp/jni/runtime/cujava_runtime.cpp b/src/main/cpp/jni/runtime/cujava_runtime.cpp index e0834f21217..c43d98be97c 100644 --- a/src/main/cpp/jni/runtime/cujava_runtime.cpp +++ b/src/main/cpp/jni/runtime/cujava_runtime.cpp @@ -179,7 +179,7 @@ JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaMemGetInf } if (totalBytes == NULL) { ThrowByName(env, "java/lang/NullPointerException", "Parameter 'freeBytes' is null for cudaMemGetInfo"); - return JCUDA_INTERNAL_ERROR; + return CUJAVA_INTERNAL_ERROR; } Logger::log(LOG_TRACE, "Executing cudaMemGetInfo\n"); @@ -195,5 +195,20 @@ JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaMemGetInf } +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaGetDeviceCountNative + (JNIEnv *env, jclass cls, jintArray count) { + if (count == NULL) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'count' is null for cudaGetDeviceCount"); + return CUJAVA_INTERNAL_ERROR; + } + Logger::log(LOG_TRACE, "Executing cudaGetDeviceCount\n"); + + int nativeCount = 0; + int result = cudaGetDeviceCount(&nativeCount); + if (!set(env, count, 0, nativeCount)) return CUJAVA_INTERNAL_ERROR; + return result; +} + + diff --git a/src/main/cpp/jni/runtime/cujava_runtime.hpp b/src/main/cpp/jni/runtime/cujava_runtime.hpp index 0c867a1c1ba..14e106fdd4f 100644 --- a/src/main/cpp/jni/runtime/cujava_runtime.hpp +++ b/src/main/cpp/jni/runtime/cujava_runtime.hpp @@ -35,6 +35,7 @@ extern "C" { * - cudaDeviceSynchronizeNative * - cudaMallocManagedNative * - cudaMemGetInfoNative + * - cudaGetDeviceCountNative */ @@ -60,6 +61,9 @@ JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaMallocMan JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaMemGetInfoNative (JNIEnv *env, jclass cls, jlongArray freeBytes, jlongArray totalBytes); +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaGetDeviceCountNative + (JNIEnv *env, jclass cls, jintArray count); + #ifdef __cplusplus } #endif diff --git a/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java b/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java index a409cf4f540..403fba42c64 100644 --- a/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java +++ b/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java @@ -95,4 +95,10 @@ public static int cudaMemGetInfo(long free[], long total[]) { private static native int cudaMemGetInfoNative(long free[], long total[]); + public static int cudaGetDeviceCount(int count[]) { + return checkCudaError(cudaGetDeviceCountNative(count)); + } + private static native int cudaGetDeviceCountNative(int count[]); + + } From af5ba22ac6dad34de0a51c48e8dcd3f5acdd58a1 Mon Sep 17 00:00:00 2001 From: ReneEnjilian Date: Fri, 22 Aug 2025 01:16:08 +0200 Subject: [PATCH 26/57] add cudaSetDevice --- src/main/cpp/jni/runtime/cujava_runtime.cpp | 8 ++++++++ src/main/cpp/jni/runtime/cujava_runtime.hpp | 20 +++++++++++-------- .../apache/sysds/cujava/runtime/CuJava.java | 6 ++++++ 3 files changed, 26 insertions(+), 8 deletions(-) diff --git a/src/main/cpp/jni/runtime/cujava_runtime.cpp b/src/main/cpp/jni/runtime/cujava_runtime.cpp index c43d98be97c..7e7a90c3949 100644 --- a/src/main/cpp/jni/runtime/cujava_runtime.cpp +++ b/src/main/cpp/jni/runtime/cujava_runtime.cpp @@ -210,5 +210,13 @@ JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaGetDevice } +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaSetDeviceNative + (JNIEnv *env, jclass cls, jint device) { + Logger::log(LOG_TRACE, "Executing cudaSetDevice\n"); + + return cudaSetDevice(device); +} + + diff --git a/src/main/cpp/jni/runtime/cujava_runtime.hpp b/src/main/cpp/jni/runtime/cujava_runtime.hpp index 14e106fdd4f..d1914de429a 100644 --- a/src/main/cpp/jni/runtime/cujava_runtime.hpp +++ b/src/main/cpp/jni/runtime/cujava_runtime.hpp @@ -28,14 +28,15 @@ extern "C" { /* * Class: org.apache.sysds.cujava.runtime.CuJava * Methods: - * - cudaMemcpyNative - * - cudaMallocNative - * - cudaFreeNative - * - cudaMemsetnative - * - cudaDeviceSynchronizeNative - * - cudaMallocManagedNative - * - cudaMemGetInfoNative - * - cudaGetDeviceCountNative + * - cudaMemcpy + * - cudaMalloc + * - cudaFree + * - cudaMemset + * - cudaDeviceSynchronize + * - cudaMallocManaged + * - cudaMemGetInfo + * - cudaGetDeviceCount + * - cudaSetDevice */ @@ -64,6 +65,9 @@ JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaMemGetInf JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaGetDeviceCountNative (JNIEnv *env, jclass cls, jintArray count); +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaSetDeviceNative + (JNIEnv *env, jclass cls, jint device); + #ifdef __cplusplus } #endif diff --git a/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java b/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java index 403fba42c64..29350787a10 100644 --- a/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java +++ b/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java @@ -101,4 +101,10 @@ public static int cudaGetDeviceCount(int count[]) { private static native int cudaGetDeviceCountNative(int count[]); + public static int cudaSetDevice(int device) { + return checkCudaError(cudaSetDeviceNative(device)); + } + private static native int cudaSetDeviceNative(int device); + + } From 8846b6072c758782c7745ffd72f7a9752840d88a Mon Sep 17 00:00:00 2001 From: ReneEnjilian Date: Fri, 22 Aug 2025 01:17:36 +0200 Subject: [PATCH 27/57] add method definition in header --- src/main/cpp/jni/common/cujava_jni_utils.hpp | 1 + 1 file changed, 1 insertion(+) diff --git a/src/main/cpp/jni/common/cujava_jni_utils.hpp b/src/main/cpp/jni/common/cujava_jni_utils.hpp index 49cd398a9ad..dabed45c6f7 100644 --- a/src/main/cpp/jni/common/cujava_jni_utils.hpp +++ b/src/main/cpp/jni/common/cujava_jni_utils.hpp @@ -29,6 +29,7 @@ bool init(JNIEnv* env, jclass cls, jmethodID& method, const char* name, const ch bool init(JNIEnv* env, jclass& globalCls, jmethodID& constructor, const char* className); bool initNativePointer(JNIEnv* env, jfieldID& field, const char* className); bool set(JNIEnv *env, jlongArray ja, int index, jlong value); +bool set(JNIEnv *env, jintArray ja, int index, jint value); // ---- Exceptions ---- void ThrowByName(JNIEnv* env, const char* name, const char* msg); From d4aece32b2ffc77d644beaa432b4e9d711aade1b Mon Sep 17 00:00:00 2001 From: ReneEnjilian Date: Fri, 22 Aug 2025 01:21:35 +0200 Subject: [PATCH 28/57] add cudaSetDeviceFlags --- src/main/cpp/jni/runtime/cujava_runtime.cpp | 8 ++++++++ src/main/cpp/jni/runtime/cujava_runtime.hpp | 3 +++ src/main/java/org/apache/sysds/cujava/runtime/CuJava.java | 6 ++++++ 3 files changed, 17 insertions(+) diff --git a/src/main/cpp/jni/runtime/cujava_runtime.cpp b/src/main/cpp/jni/runtime/cujava_runtime.cpp index 7e7a90c3949..d18003da91c 100644 --- a/src/main/cpp/jni/runtime/cujava_runtime.cpp +++ b/src/main/cpp/jni/runtime/cujava_runtime.cpp @@ -218,5 +218,13 @@ JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaSetDevice } +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaSetDeviceFlagsNative + (JNIEnv *env, jclass cls, jint flags) { + Logger::log(LOG_TRACE, "Executing cudaSetDeviceFlags\n"); + + return cudaSetDeviceFlags((int)flags); +} + + diff --git a/src/main/cpp/jni/runtime/cujava_runtime.hpp b/src/main/cpp/jni/runtime/cujava_runtime.hpp index d1914de429a..2394ce6322e 100644 --- a/src/main/cpp/jni/runtime/cujava_runtime.hpp +++ b/src/main/cpp/jni/runtime/cujava_runtime.hpp @@ -68,6 +68,9 @@ JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaGetDevice JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaSetDeviceNative (JNIEnv *env, jclass cls, jint device); +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaSetDeviceFlagsNative + (JNIEnv *env, jclass cls, jint flags); + #ifdef __cplusplus } #endif diff --git a/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java b/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java index 29350787a10..37344b089cf 100644 --- a/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java +++ b/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java @@ -107,4 +107,10 @@ public static int cudaSetDevice(int device) { private static native int cudaSetDeviceNative(int device); + public static int cudaSetDeviceFlags(int flags) { + return checkCudaError(cudaSetDeviceFlagsNative(flags)); + } + private static native int cudaSetDeviceFlagsNative(int flags); + + } From 968aaac80352b780c30c6d9148f8bc25d50e3d4f Mon Sep 17 00:00:00 2001 From: ReneEnjilian Date: Fri, 22 Aug 2025 01:23:08 +0200 Subject: [PATCH 29/57] add header def --- src/main/cpp/jni/runtime/cujava_runtime.hpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/main/cpp/jni/runtime/cujava_runtime.hpp b/src/main/cpp/jni/runtime/cujava_runtime.hpp index 2394ce6322e..48114e8148b 100644 --- a/src/main/cpp/jni/runtime/cujava_runtime.hpp +++ b/src/main/cpp/jni/runtime/cujava_runtime.hpp @@ -26,7 +26,7 @@ extern "C" { #endif /* - * Class: org.apache.sysds.cujava.runtime.CuJava + * Class: org.apache.sysds.cujava.runtime.CuJava * Methods: * - cudaMemcpy * - cudaMalloc @@ -37,6 +37,7 @@ extern "C" { * - cudaMemGetInfo * - cudaGetDeviceCount * - cudaSetDevice + * - cudaSetDeviceFlags */ From c8055989789eacc01172dc23ebd13d3b609bdd9f Mon Sep 17 00:00:00 2001 From: ReneEnjilian Date: Fri, 22 Aug 2025 01:35:36 +0200 Subject: [PATCH 30/57] add cudaGetDevice --- src/main/cpp/jni/runtime/cujava_runtime.cpp | 15 +++++++++ src/main/cpp/jni/runtime/cujava_runtime.hpp | 4 +++ .../apache/sysds/cujava/runtime/CuJava.java | 32 +++++++++++-------- 3 files changed, 38 insertions(+), 13 deletions(-) diff --git a/src/main/cpp/jni/runtime/cujava_runtime.cpp b/src/main/cpp/jni/runtime/cujava_runtime.cpp index d18003da91c..8f02db802cc 100644 --- a/src/main/cpp/jni/runtime/cujava_runtime.cpp +++ b/src/main/cpp/jni/runtime/cujava_runtime.cpp @@ -226,5 +226,20 @@ JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaSetDevice } +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaGetDeviceNative + (JNIEnv *env, jclass cls, jintArray device) { + if (device == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'device' is null for cudaGetDevice"); + return CUJAVA_INTERNAL_ERROR; + } + Logger::log(LOG_TRACE, "Executing cudaGetDevice\n"); + + int nativeDevice = 0; + int result = cudaGetDevice(&nativeDevice); + if (!set(env, device, 0, nativeDevice)) return JCUDA_INTERNAL_ERROR; + return result; +} + + diff --git a/src/main/cpp/jni/runtime/cujava_runtime.hpp b/src/main/cpp/jni/runtime/cujava_runtime.hpp index 48114e8148b..9ff60cb6ccf 100644 --- a/src/main/cpp/jni/runtime/cujava_runtime.hpp +++ b/src/main/cpp/jni/runtime/cujava_runtime.hpp @@ -38,6 +38,7 @@ extern "C" { * - cudaGetDeviceCount * - cudaSetDevice * - cudaSetDeviceFlags + * - cudaGetDevice */ @@ -72,6 +73,9 @@ JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaSetDevice JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaSetDeviceFlagsNative (JNIEnv *env, jclass cls, jint flags); +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaGetDeviceNative + (JNIEnv *env, jclass cls, jintArray device); + #ifdef __cplusplus } #endif diff --git a/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java b/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java index 37344b089cf..12e397de402 100644 --- a/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java +++ b/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java @@ -30,9 +30,11 @@ public class CuJava { private static final String LIB_BASE = "cujava_runtime"; + public static final int cudaMemAttachGlobal = 1; + public static final int cudaDeviceScheduleBlockingSync = 4; - private CuJava(){ + private CuJava() { } @@ -41,8 +43,7 @@ private CuJava(){ } private static int checkCudaError(int result) { - if (exceptionsEnabled && result != CudaError.cudaSuccess) - { + if(exceptionsEnabled && result != CudaError.cudaSuccess) { throw new CudaException(CudaError.errorString(result)); } return result; @@ -51,66 +52,71 @@ private static int checkCudaError(int result) { public static int cudaMemcpy(Pointer dst, Pointer src, long count, int cudaMemcpyKind_kind) { return checkCudaError(cudaMemcpyNative(dst, src, count, cudaMemcpyKind_kind)); } - private static native int cudaMemcpyNative(Pointer dst, Pointer src, long count, int cudaMemcpyKind_kind); + private static native int cudaMemcpyNative(Pointer dst, Pointer src, long count, int cudaMemcpyKind_kind); public static int cudaMalloc(Pointer devPtr, long size) { return checkCudaError(cudaMallocNative(devPtr, size)); } - private static native int cudaMallocNative(Pointer devPtr, long size); + private static native int cudaMallocNative(Pointer devPtr, long size); public static int cudaFree(Pointer devPtr) { return checkCudaError(cudaFreeNative(devPtr)); } - private static native int cudaFreeNative(Pointer devPtr); + private static native int cudaFreeNative(Pointer devPtr); public static int cudaMemset(Pointer mem, int c, long count) { return checkCudaError(cudaMemsetNative(mem, c, count)); } - private static native int cudaMemsetNative(Pointer mem, int c, long count); + private static native int cudaMemsetNative(Pointer mem, int c, long count); public static int cudaDeviceSynchronize() { return checkCudaError(cudaDeviceSynchronizeNative()); } - private static native int cudaDeviceSynchronizeNative(); + private static native int cudaDeviceSynchronizeNative(); public static void setExceptionsEnabled(boolean enabled) { exceptionsEnabled = enabled; } - public static int cudaMallocManaged(Pointer devPtr, long size, int flags) { return checkCudaError(cudaMallocManagedNative(devPtr, size, flags)); } - private static native int cudaMallocManagedNative(Pointer devPtr, long size, int flags); + private static native int cudaMallocManagedNative(Pointer devPtr, long size, int flags); public static int cudaMemGetInfo(long free[], long total[]) { return checkCudaError(cudaMemGetInfoNative(free, total)); } - private static native int cudaMemGetInfoNative(long free[], long total[]); + private static native int cudaMemGetInfoNative(long free[], long total[]); public static int cudaGetDeviceCount(int count[]) { return checkCudaError(cudaGetDeviceCountNative(count)); } - private static native int cudaGetDeviceCountNative(int count[]); + private static native int cudaGetDeviceCountNative(int count[]); public static int cudaSetDevice(int device) { return checkCudaError(cudaSetDeviceNative(device)); } - private static native int cudaSetDeviceNative(int device); + private static native int cudaSetDeviceNative(int device); public static int cudaSetDeviceFlags(int flags) { return checkCudaError(cudaSetDeviceFlagsNative(flags)); } + private static native int cudaSetDeviceFlagsNative(int flags); + public static int cudaGetDevice(int device[]) { + return checkCudaError(cudaGetDeviceNative(device)); + } + + private static native int cudaGetDeviceNative(int device[]); } From ce2a73f10817fee69c846e324fbc6d7fac82ed19 Mon Sep 17 00:00:00 2001 From: ReneEnjilian Date: Fri, 22 Aug 2025 01:37:02 +0200 Subject: [PATCH 31/57] minor fix --- src/main/cpp/jni/runtime/cujava_runtime.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/main/cpp/jni/runtime/cujava_runtime.cpp b/src/main/cpp/jni/runtime/cujava_runtime.cpp index 8f02db802cc..04ee64e5f6c 100644 --- a/src/main/cpp/jni/runtime/cujava_runtime.cpp +++ b/src/main/cpp/jni/runtime/cujava_runtime.cpp @@ -236,7 +236,7 @@ JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaGetDevice int nativeDevice = 0; int result = cudaGetDevice(&nativeDevice); - if (!set(env, device, 0, nativeDevice)) return JCUDA_INTERNAL_ERROR; + if (!set(env, device, 0, nativeDevice)) return CUJAVA_INTERNAL_ERROR; return result; } From 115f0401ca5fa07e6d43adfaf0292eed19b2f0c3 Mon Sep 17 00:00:00 2001 From: ReneEnjilian Date: Fri, 22 Aug 2025 01:51:16 +0200 Subject: [PATCH 32/57] add cudaGetDeviceProperties --- src/main/cpp/jni/runtime/cujava_runtime.cpp | 16 ++++++++++++++++ src/main/cpp/jni/runtime/cujava_runtime.hpp | 4 ++++ .../org/apache/sysds/cujava/runtime/CuJava.java | 9 +++++++-- 3 files changed, 27 insertions(+), 2 deletions(-) diff --git a/src/main/cpp/jni/runtime/cujava_runtime.cpp b/src/main/cpp/jni/runtime/cujava_runtime.cpp index 04ee64e5f6c..f1e0e35e365 100644 --- a/src/main/cpp/jni/runtime/cujava_runtime.cpp +++ b/src/main/cpp/jni/runtime/cujava_runtime.cpp @@ -241,5 +241,21 @@ JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaGetDevice } +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaGetDevicePropertiesNative + (JNIEnv *env, jclass cls, jobject prop, jint device) { + if (prop == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'prop' is null for cudaGetDeviceProperties"); + return CUJAVA_INTERNAL_ERROR; + } + Logger::log(LOG_TRACE, "Executing cudaGetDeviceProperties\n"); + + cudaDeviceProp nativeProp; + int result = cudaGetDeviceProperties(&nativeProp, device); + + setCudaDeviceProp(env, prop, nativeProp); + return result; +} + + diff --git a/src/main/cpp/jni/runtime/cujava_runtime.hpp b/src/main/cpp/jni/runtime/cujava_runtime.hpp index 9ff60cb6ccf..4c455821a73 100644 --- a/src/main/cpp/jni/runtime/cujava_runtime.hpp +++ b/src/main/cpp/jni/runtime/cujava_runtime.hpp @@ -39,6 +39,7 @@ extern "C" { * - cudaSetDevice * - cudaSetDeviceFlags * - cudaGetDevice + * - cudaGetDeviceProperties */ @@ -76,6 +77,9 @@ JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaSetDevice JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaGetDeviceNative (JNIEnv *env, jclass cls, jintArray device); +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaGetDevicePropertiesNative + (JNIEnv *env, jclass cls, jobject prop, jint device); + #ifdef __cplusplus } #endif diff --git a/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java b/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java index 12e397de402..eb5bf5feb64 100644 --- a/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java +++ b/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java @@ -20,9 +20,8 @@ package org.apache.sysds.cujava.runtime; import org.apache.sysds.cujava.CuJavaLibLoader; -import org.apache.sysds.cujava.Pointer; import org.apache.sysds.cujava.CudaException; -import org.apache.sysds.cujava.runtime.CudaError; +import org.apache.sysds.cujava.Pointer; public class CuJava { @@ -119,4 +118,10 @@ public static int cudaGetDevice(int device[]) { private static native int cudaGetDeviceNative(int device[]); + public static int cudaGetDeviceProperties(CudaDeviceProp prop, int device) { + return checkCudaError(cudaGetDevicePropertiesNative(prop, device)); + } + + private static native int cudaGetDevicePropertiesNative(CudaDeviceProp prop, int device); + } From 5b3770cc692a199cf8ad42f9272dd75b1d8490cb Mon Sep 17 00:00:00 2001 From: ReneEnjilian Date: Fri, 22 Aug 2025 23:57:45 +0200 Subject: [PATCH 33/57] complete jni side of cudaDeviceProperties --- src/main/cpp/jni/common/cujava_jni_utils.cpp | 40 +++ src/main/cpp/jni/common/cujava_jni_utils.hpp | 3 + src/main/cpp/jni/runtime/cujava_runtime.cpp | 308 +++++++++++++++++++ 3 files changed, 351 insertions(+) diff --git a/src/main/cpp/jni/common/cujava_jni_utils.cpp b/src/main/cpp/jni/common/cujava_jni_utils.cpp index ef8f0e6e5d4..9d16af4e986 100644 --- a/src/main/cpp/jni/common/cujava_jni_utils.cpp +++ b/src/main/cpp/jni/common/cujava_jni_utils.cpp @@ -148,4 +148,44 @@ bool set(JNIEnv *env, jintArray ja, int index, jint value) { return true; } +/** Helpers for setting cudaDeviceProperties. */ +bool setFieldBytes(JNIEnv* env, jobject obj, jfieldID fid, const jbyte* src, jsize n) { + jbyteArray arr = (jbyteArray)env->GetObjectField(obj, fid); + if (arr == nullptr || env->GetArrayLength(arr) < n) { + jbyteArray tmp = env->NewByteArray(n); + if (tmp == nullptr) return false; + env->SetObjectField(obj, fid, tmp); + arr = tmp; + } + env->SetByteArrayRegion(arr, 0, n, src); + return !env->ExceptionCheck(); +} + +bool setFieldInts(JNIEnv* env, jobject obj, jfieldID fid, const jint* src, jsize n) { + jintArray arr = (jintArray)env->GetObjectField(obj, fid); + if (arr == nullptr || env->GetArrayLength(arr) < n) { + jintArray tmp = env->NewIntArray(n); + if (tmp == nullptr) return false; + env->SetObjectField(obj, fid, tmp); + arr = tmp; + } + env->SetIntArrayRegion(arr, 0, n, src); + return !env->ExceptionCheck(); +} + +bool zeroFieldInts(JNIEnv* env, jobject obj, jfieldID fid) { + jintArray arr = (jintArray)env->GetObjectField(obj, fid); + if (arr == nullptr) return true; + jsize n = env->GetArrayLength(arr); + if (n <= 0) return true; + jint* zeros = new (std::nothrow) jint[n](); + if (!zeros) { + ThrowByName(env, "java/lang/OutOfMemoryError", "Out of memory zeroing int array"); + return false; + } + env->SetIntArrayRegion(arr, 0, n, zeros); + delete[] zeros; + return !env->ExceptionCheck(); +} + diff --git a/src/main/cpp/jni/common/cujava_jni_utils.hpp b/src/main/cpp/jni/common/cujava_jni_utils.hpp index dabed45c6f7..cc52f9604c7 100644 --- a/src/main/cpp/jni/common/cujava_jni_utils.hpp +++ b/src/main/cpp/jni/common/cujava_jni_utils.hpp @@ -30,6 +30,9 @@ bool init(JNIEnv* env, jclass& globalCls, jmethodID& constructor, const char* cl bool initNativePointer(JNIEnv* env, jfieldID& field, const char* className); bool set(JNIEnv *env, jlongArray ja, int index, jlong value); bool set(JNIEnv *env, jintArray ja, int index, jint value); +bool setFieldBytes(JNIEnv* env, jobject obj, jfieldID fid, const jbyte* src, jsize n); +bool setFieldInts (JNIEnv* env, jobject obj, jfieldID fid, const jint* src, jsize n); +bool zeroFieldInts(JNIEnv* env, jobject obj, jfieldID fid); // ---- Exceptions ---- void ThrowByName(JNIEnv* env, const char* name, const char* msg); diff --git a/src/main/cpp/jni/runtime/cujava_runtime.cpp b/src/main/cpp/jni/runtime/cujava_runtime.cpp index f1e0e35e365..989a3559069 100644 --- a/src/main/cpp/jni/runtime/cujava_runtime.cpp +++ b/src/main/cpp/jni/runtime/cujava_runtime.cpp @@ -21,6 +21,106 @@ #include "cujava_runtime.hpp" #include "cujava_runtime_common.hpp" +// ---- cudaDeviceProp jfieldIDs (all you listed) ---- +static jclass cudaDeviceProp_class = nullptr; + +#define F(name) static jfieldID name = nullptr; +F(cudaDeviceProp_accessPolicyMaxWindowSize) +F(cudaDeviceProp_asyncEngineCount) +F(cudaDeviceProp_canMapHostMemory) +F(cudaDeviceProp_canUseHostPointerForRegisteredMem) +F(cudaDeviceProp_clockRate) +F(cudaDeviceProp_clusterLaunch) +F(cudaDeviceProp_computeMode) +F(cudaDeviceProp_computePreemptionSupported) +F(cudaDeviceProp_concurrentKernels) +F(cudaDeviceProp_concurrentManagedAccess) +F(cudaDeviceProp_cooperativeLaunch) +F(cudaDeviceProp_cooperativeMultiDeviceLaunch) +F(cudaDeviceProp_deferredMappingCudaArraySupported) +F(cudaDeviceProp_deviceOverlap) +F(cudaDeviceProp_directManagedMemAccessFromHost) +F(cudaDeviceProp_ECCEnabled) +F(cudaDeviceProp_globalL1CacheSupported) +F(cudaDeviceProp_gpuDirectRDMAFlushWritesOptions) +F(cudaDeviceProp_gpuDirectRDMASupported) +F(cudaDeviceProp_gpuDirectRDMAWritesOrdering) +F(cudaDeviceProp_hostNativeAtomicSupported) +F(cudaDeviceProp_hostRegisterReadOnlySupported) +F(cudaDeviceProp_hostRegisterSupported) +F(cudaDeviceProp_integrated) +F(cudaDeviceProp_ipcEventSupported) +F(cudaDeviceProp_isMultiGpuBoard) +F(cudaDeviceProp_kernelExecTimeoutEnabled) +F(cudaDeviceProp_l2CacheSize) +F(cudaDeviceProp_localL1CacheSupported) +F(cudaDeviceProp_luid) +F(cudaDeviceProp_luidDeviceNodeMask) +F(cudaDeviceProp_major) +F(cudaDeviceProp_managedMemory) +F(cudaDeviceProp_maxBlocksPerMultiProcessor) +F(cudaDeviceProp_maxGridSize) +F(cudaDeviceProp_maxSurface1D) +F(cudaDeviceProp_maxSurface1DLayered) +F(cudaDeviceProp_maxSurface2D) +F(cudaDeviceProp_maxSurface2DLayered) +F(cudaDeviceProp_maxSurface3D) +F(cudaDeviceProp_maxSurfaceCubemap) +F(cudaDeviceProp_maxSurfaceCubemapLayered) +F(cudaDeviceProp_maxTexture1D) +F(cudaDeviceProp_maxTexture1DLayered) +F(cudaDeviceProp_maxTexture1DLinear) +F(cudaDeviceProp_maxTexture1DMipmap) +F(cudaDeviceProp_maxTexture2D) +F(cudaDeviceProp_maxTexture2DGather) +F(cudaDeviceProp_maxTexture2DLayered) +F(cudaDeviceProp_maxTexture2DLinear) +F(cudaDeviceProp_maxTexture2DMipmap) +F(cudaDeviceProp_maxTexture3D) +F(cudaDeviceProp_maxTexture3DAlt) +F(cudaDeviceProp_maxTextureCubemap) +F(cudaDeviceProp_maxTextureCubemapLayered) +F(cudaDeviceProp_maxThreadsDim) +F(cudaDeviceProp_maxThreadsPerBlock) +F(cudaDeviceProp_maxThreadsPerMultiProcessor) +F(cudaDeviceProp_memoryBusWidth) +F(cudaDeviceProp_memoryClockRate) +F(cudaDeviceProp_memoryPoolsSupported) +F(cudaDeviceProp_memoryPoolSupportedHandleTypes) +F(cudaDeviceProp_memPitch) +F(cudaDeviceProp_minor) +F(cudaDeviceProp_multiGpuBoardGroupID) +F(cudaDeviceProp_multiProcessorCount) +F(cudaDeviceProp_name) +F(cudaDeviceProp_pageableMemoryAccess) +F(cudaDeviceProp_pageableMemoryAccessUsesHostPageTables) +F(cudaDeviceProp_pciBusID) +F(cudaDeviceProp_pciDeviceID) +F(cudaDeviceProp_pciDomainID) +F(cudaDeviceProp_persistingL2CacheMaxSize) +F(cudaDeviceProp_regsPerBlock) +F(cudaDeviceProp_regsPerMultiprocessor) +F(cudaDeviceProp_reserved) +F(cudaDeviceProp_reservedSharedMemPerBlock) +F(cudaDeviceProp_sharedMemPerBlock) +F(cudaDeviceProp_sharedMemPerBlockOptin) +F(cudaDeviceProp_sharedMemPerMultiprocessor) +F(cudaDeviceProp_singleToDoublePrecisionPerfRatio) +F(cudaDeviceProp_sparseCudaArraySupported) +F(cudaDeviceProp_streamPrioritiesSupported) +F(cudaDeviceProp_surfaceAlignment) +F(cudaDeviceProp_tccDriver) +F(cudaDeviceProp_textureAlignment) +F(cudaDeviceProp_texturePitchAlignment) +F(cudaDeviceProp_timelineSemaphoreInteropSupported) +F(cudaDeviceProp_totalConstMem) +F(cudaDeviceProp_totalGlobalMem) +F(cudaDeviceProp_unifiedAddressing) +F(cudaDeviceProp_unifiedFunctionPointers) +F(cudaDeviceProp_warpSize) +#undef F + + JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM *jvm, void *reserved) { JNIEnv *env = nullptr; @@ -32,6 +132,115 @@ JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM *jvm, void *reserved) { if (initJNIUtils(env) == JNI_ERR) return JNI_ERR; if (initPointerUtils(env) == JNI_ERR) return JNI_ERR; + // ---- cache all fields of org.apache.sysds.cujava.runtime.cudaDeviceProp ---- + { + jclass cls = nullptr; + if (!init(env, cls, "org/apache/sysds/cujava/runtime/CudaDeviceProp")) return JNI_ERR; + cudaDeviceProp_class = (jclass)env->NewGlobalRef(cls); + if (!cudaDeviceProp_class) return JNI_ERR; + + struct Spec { const char* name; const char* sig; jfieldID* out; } specs[] = { + {"accessPolicyMaxWindowSize","I",&cudaDeviceProp_accessPolicyMaxWindowSize}, + {"asyncEngineCount","I",&cudaDeviceProp_asyncEngineCount}, + {"canMapHostMemory","I",&cudaDeviceProp_canMapHostMemory}, + {"canUseHostPointerForRegisteredMem","I",&cudaDeviceProp_canUseHostPointerForRegisteredMem}, + {"clockRate","I",&cudaDeviceProp_clockRate}, + {"clusterLaunch","I",&cudaDeviceProp_clusterLaunch}, + {"computeMode","I",&cudaDeviceProp_computeMode}, + {"computePreemptionSupported","I",&cudaDeviceProp_computePreemptionSupported}, + {"concurrentKernels","I",&cudaDeviceProp_concurrentKernels}, + {"concurrentManagedAccess","I",&cudaDeviceProp_concurrentManagedAccess}, + {"cooperativeLaunch","I",&cudaDeviceProp_cooperativeLaunch}, + {"cooperativeMultiDeviceLaunch","I",&cudaDeviceProp_cooperativeMultiDeviceLaunch}, + {"deferredMappingCudaArraySupported","I",&cudaDeviceProp_deferredMappingCudaArraySupported}, + {"deviceOverlap","I",&cudaDeviceProp_deviceOverlap}, + {"directManagedMemAccessFromHost","I",&cudaDeviceProp_directManagedMemAccessFromHost}, + {"ECCEnabled","I",&cudaDeviceProp_ECCEnabled}, + {"globalL1CacheSupported","I",&cudaDeviceProp_globalL1CacheSupported}, + {"gpuDirectRDMAFlushWritesOptions","I",&cudaDeviceProp_gpuDirectRDMAFlushWritesOptions}, + {"gpuDirectRDMASupported","I",&cudaDeviceProp_gpuDirectRDMASupported}, + {"gpuDirectRDMAWritesOrdering","I",&cudaDeviceProp_gpuDirectRDMAWritesOrdering}, + {"hostNativeAtomicSupported","I",&cudaDeviceProp_hostNativeAtomicSupported}, + {"hostRegisterReadOnlySupported","I",&cudaDeviceProp_hostRegisterReadOnlySupported}, + {"hostRegisterSupported","I",&cudaDeviceProp_hostRegisterSupported}, + {"integrated","I",&cudaDeviceProp_integrated}, + {"ipcEventSupported","I",&cudaDeviceProp_ipcEventSupported}, + {"isMultiGpuBoard","I",&cudaDeviceProp_isMultiGpuBoard}, + {"kernelExecTimeoutEnabled","I",&cudaDeviceProp_kernelExecTimeoutEnabled}, + {"l2CacheSize","I",&cudaDeviceProp_l2CacheSize}, + {"localL1CacheSupported","I",&cudaDeviceProp_localL1CacheSupported}, + {"luid","[B",&cudaDeviceProp_luid}, + {"luidDeviceNodeMask","I",&cudaDeviceProp_luidDeviceNodeMask}, + {"major","I",&cudaDeviceProp_major}, + {"managedMemory","I",&cudaDeviceProp_managedMemory}, + {"maxBlocksPerMultiProcessor","I",&cudaDeviceProp_maxBlocksPerMultiProcessor}, + {"maxGridSize","[I",&cudaDeviceProp_maxGridSize}, + {"maxSurface1D","I",&cudaDeviceProp_maxSurface1D}, + {"maxSurface1DLayered","[I",&cudaDeviceProp_maxSurface1DLayered}, + {"maxSurface2D","[I",&cudaDeviceProp_maxSurface2D}, + {"maxSurface2DLayered","[I",&cudaDeviceProp_maxSurface2DLayered}, + {"maxSurface3D","[I",&cudaDeviceProp_maxSurface3D}, + {"maxSurfaceCubemap","I",&cudaDeviceProp_maxSurfaceCubemap}, + {"maxSurfaceCubemapLayered","[I",&cudaDeviceProp_maxSurfaceCubemapLayered}, + {"maxTexture1D","I",&cudaDeviceProp_maxTexture1D}, + {"maxTexture1DLayered","[I",&cudaDeviceProp_maxTexture1DLayered}, + {"maxTexture1DLinear","I",&cudaDeviceProp_maxTexture1DLinear}, + {"maxTexture1DMipmap","I",&cudaDeviceProp_maxTexture1DMipmap}, + {"maxTexture2D","[I",&cudaDeviceProp_maxTexture2D}, + {"maxTexture2DGather","[I",&cudaDeviceProp_maxTexture2DGather}, + {"maxTexture2DLayered","[I",&cudaDeviceProp_maxTexture2DLayered}, + {"maxTexture2DLinear","[I",&cudaDeviceProp_maxTexture2DLinear}, + {"maxTexture2DMipmap","[I",&cudaDeviceProp_maxTexture2DMipmap}, + {"maxTexture3D","[I",&cudaDeviceProp_maxTexture3D}, + {"maxTexture3DAlt","[I",&cudaDeviceProp_maxTexture3DAlt}, + {"maxTextureCubemap","I",&cudaDeviceProp_maxTextureCubemap}, + {"maxTextureCubemapLayered","[I",&cudaDeviceProp_maxTextureCubemapLayered}, + {"maxThreadsDim","[I",&cudaDeviceProp_maxThreadsDim}, + {"maxThreadsPerBlock","I",&cudaDeviceProp_maxThreadsPerBlock}, + {"maxThreadsPerMultiProcessor","I",&cudaDeviceProp_maxThreadsPerMultiProcessor}, + {"memoryBusWidth","I",&cudaDeviceProp_memoryBusWidth}, + {"memoryClockRate","I",&cudaDeviceProp_memoryClockRate}, + {"memoryPoolsSupported","I",&cudaDeviceProp_memoryPoolsSupported}, + {"memoryPoolSupportedHandleTypes","I",&cudaDeviceProp_memoryPoolSupportedHandleTypes}, + {"memPitch","J",&cudaDeviceProp_memPitch}, + {"minor","I",&cudaDeviceProp_minor}, + {"multiGpuBoardGroupID","I",&cudaDeviceProp_multiGpuBoardGroupID}, + {"multiProcessorCount","I",&cudaDeviceProp_multiProcessorCount}, + {"name","[B",&cudaDeviceProp_name}, + {"pageableMemoryAccess","I",&cudaDeviceProp_pageableMemoryAccess}, + {"pageableMemoryAccessUsesHostPageTables","I",&cudaDeviceProp_pageableMemoryAccessUsesHostPageTables}, + {"pciBusID","I",&cudaDeviceProp_pciBusID}, + {"pciDeviceID","I",&cudaDeviceProp_pciDeviceID}, + {"pciDomainID","I",&cudaDeviceProp_pciDomainID}, + {"persistingL2CacheMaxSize","I",&cudaDeviceProp_persistingL2CacheMaxSize}, + {"regsPerBlock","I",&cudaDeviceProp_regsPerBlock}, + {"regsPerMultiprocessor","I",&cudaDeviceProp_regsPerMultiprocessor}, + {"reserved","I",&cudaDeviceProp_reserved}, + {"reservedSharedMemPerBlock","J",&cudaDeviceProp_reservedSharedMemPerBlock}, + {"sharedMemPerBlock","J",&cudaDeviceProp_sharedMemPerBlock}, + {"sharedMemPerBlockOptin","J",&cudaDeviceProp_sharedMemPerBlockOptin}, + {"sharedMemPerMultiprocessor","J",&cudaDeviceProp_sharedMemPerMultiprocessor}, + {"singleToDoublePrecisionPerfRatio","I",&cudaDeviceProp_singleToDoublePrecisionPerfRatio}, + {"sparseCudaArraySupported","I",&cudaDeviceProp_sparseCudaArraySupported}, + {"streamPrioritiesSupported","I",&cudaDeviceProp_streamPrioritiesSupported}, + {"surfaceAlignment","J",&cudaDeviceProp_surfaceAlignment}, + {"tccDriver","I",&cudaDeviceProp_tccDriver}, + {"textureAlignment","J",&cudaDeviceProp_textureAlignment}, + {"texturePitchAlignment","J",&cudaDeviceProp_texturePitchAlignment}, + {"timelineSemaphoreInteropSupported","I",&cudaDeviceProp_timelineSemaphoreInteropSupported}, + {"totalConstMem","J",&cudaDeviceProp_totalConstMem}, + {"totalGlobalMem","J",&cudaDeviceProp_totalGlobalMem}, + {"unifiedAddressing","I",&cudaDeviceProp_unifiedAddressing}, + {"unifiedFunctionPointers","I",&cudaDeviceProp_unifiedFunctionPointers}, + {"warpSize","I",&cudaDeviceProp_warpSize}, + }; + + for (const auto& s : specs) { + if (!init(env, cls, *s.out, s.name, s.sig)) return JNI_ERR; + } + } + + return JNI_VERSION_1_4; } @@ -39,6 +248,105 @@ JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM *jvm, void *reserved) { JNIEXPORT void JNICALL JNI_OnUnload(JavaVM *vm, void *reserved) { } +static void setCudaDeviceProp(JNIEnv* env, jobject prop, const cudaDeviceProp& p) { + // byte[256] name + byte[8] luid (luid undefined on non-Windows -> zero it) + setFieldBytes(env, prop, cudaDeviceProp_name, + reinterpret_cast(p.name), 256); + { jbyte z8[8] = {0}; setFieldBytes(env, prop, cudaDeviceProp_luid, z8, 8); } + + // int[] fields + { jint v[3] = { (jint)p.maxThreadsDim[0], (jint)p.maxThreadsDim[1], (jint)p.maxThreadsDim[2] }; + setFieldInts(env, prop, cudaDeviceProp_maxThreadsDim, v, 3); } + + { jint v[3] = { (jint)p.maxGridSize[0], (jint)p.maxGridSize[1], (jint)p.maxGridSize[2] }; + setFieldInts(env, prop, cudaDeviceProp_maxGridSize, v, 3); } + + { jint v[2] = { (jint)p.maxTexture2D[0], (jint)p.maxTexture2D[1] }; + setFieldInts(env, prop, cudaDeviceProp_maxTexture2D, v, 2); } + + { jint v[2] = { (jint)p.maxTexture2DGather[0], (jint)p.maxTexture2DGather[1] }; + setFieldInts(env, prop, cudaDeviceProp_maxTexture2DGather, v, 2); } + + { jint v[3] = { (jint)p.maxTexture2DLinear[0], (jint)p.maxTexture2DLinear[1], (jint)p.maxTexture2DLinear[2] }; + setFieldInts(env, prop, cudaDeviceProp_maxTexture2DLinear, v, 3); } + + { jint v[2] = { (jint)p.maxTexture2DMipmap[0], (jint)p.maxTexture2DMipmap[1] }; + setFieldInts(env, prop, cudaDeviceProp_maxTexture2DMipmap, v, 2); } + + { jint v[3] = { (jint)p.maxTexture3D[0], (jint)p.maxTexture3D[1], (jint)p.maxTexture3D[2] }; + setFieldInts(env, prop, cudaDeviceProp_maxTexture3D, v, 3); } + + { jint v[3] = { (jint)p.maxTexture3DAlt[0], (jint)p.maxTexture3DAlt[1], (jint)p.maxTexture3DAlt[2] }; + setFieldInts(env, prop, cudaDeviceProp_maxTexture3DAlt, v, 3); } + + { jint v[2] = { (jint)p.maxTexture1DLayered[0], (jint)p.maxTexture1DLayered[1] }; + setFieldInts(env, prop, cudaDeviceProp_maxTexture1DLayered, v, 2); } + + { jint v[3] = { (jint)p.maxTexture2DLayered[0], (jint)p.maxTexture2DLayered[1], (jint)p.maxTexture2DLayered[2] }; + setFieldInts(env, prop, cudaDeviceProp_maxTexture2DLayered, v, 3); } + + { jint v[2] = { (jint)p.maxTextureCubemapLayered[0], (jint)p.maxTextureCubemapLayered[1] }; + setFieldInts(env, prop, cudaDeviceProp_maxTextureCubemapLayered, v, 2); } + + { jint v[2] = { (jint)p.maxSurface1DLayered[0], (jint)p.maxSurface1DLayered[1] }; + setFieldInts(env, prop, cudaDeviceProp_maxSurface1DLayered, v, 2); } + + { jint v[2] = { (jint)p.maxSurface2D[0], (jint)p.maxSurface2D[1] }; + setFieldInts(env, prop, cudaDeviceProp_maxSurface2D, v, 2); } + + { jint v[3] = { (jint)p.maxSurface2DLayered[0], (jint)p.maxSurface2DLayered[1], (jint)p.maxSurface2DLayered[2] }; + setFieldInts(env, prop, cudaDeviceProp_maxSurface2DLayered, v, 3); } + + { jint v[3] = { (jint)p.maxSurface3D[0], (jint)p.maxSurface3D[1], (jint)p.maxSurface3D[2] }; + setFieldInts(env, prop, cudaDeviceProp_maxSurface3D, v, 3); } + + // long fields + env->SetLongField(prop, cudaDeviceProp_totalGlobalMem, (jlong)p.totalGlobalMem); + env->SetLongField(prop, cudaDeviceProp_totalConstMem, (jlong)p.totalConstMem); + env->SetLongField(prop, cudaDeviceProp_sharedMemPerBlock, (jlong)p.sharedMemPerBlock); + env->SetLongField(prop, cudaDeviceProp_sharedMemPerMultiprocessor,(jlong)p.sharedMemPerMultiprocessor); + env->SetLongField(prop, cudaDeviceProp_reservedSharedMemPerBlock,(jlong)p.reservedSharedMemPerBlock); + env->SetLongField(prop, cudaDeviceProp_sharedMemPerBlockOptin, (jlong)p.sharedMemPerBlockOptin); + env->SetLongField(prop, cudaDeviceProp_memPitch, (jlong)p.memPitch); + env->SetLongField(prop, cudaDeviceProp_surfaceAlignment, (jlong)p.surfaceAlignment); + env->SetLongField(prop, cudaDeviceProp_textureAlignment, (jlong)p.textureAlignment); + env->SetLongField(prop, cudaDeviceProp_texturePitchAlignment, (jlong)p.texturePitchAlignment); + + // int fields (available in cudaDeviceProp) + env->SetIntField(prop, cudaDeviceProp_regsPerBlock, (jint)p.regsPerBlock); + env->SetIntField(prop, cudaDeviceProp_regsPerMultiprocessor, (jint)p.regsPerMultiprocessor); + env->SetIntField(prop, cudaDeviceProp_warpSize, (jint)p.warpSize); + env->SetIntField(prop, cudaDeviceProp_maxThreadsPerBlock, (jint)p.maxThreadsPerBlock); + env->SetIntField(prop, cudaDeviceProp_maxThreadsPerMultiProcessor,(jint)p.maxThreadsPerMultiProcessor); + env->SetIntField(prop, cudaDeviceProp_clockRate, (jint)p.clockRate); + env->SetIntField(prop, cudaDeviceProp_memoryClockRate, (jint)p.memoryClockRate); + env->SetIntField(prop, cudaDeviceProp_memoryBusWidth, (jint)p.memoryBusWidth); + env->SetIntField(prop, cudaDeviceProp_l2CacheSize, (jint)p.l2CacheSize); + env->SetIntField(prop, cudaDeviceProp_major, (jint)p.major); + env->SetIntField(prop, cudaDeviceProp_minor, (jint)p.minor); + env->SetIntField(prop, cudaDeviceProp_multiProcessorCount, (jint)p.multiProcessorCount); + env->SetIntField(prop, cudaDeviceProp_deviceOverlap, (jint)p.deviceOverlap); + env->SetIntField(prop, cudaDeviceProp_kernelExecTimeoutEnabled, (jint)p.kernelExecTimeoutEnabled); + env->SetIntField(prop, cudaDeviceProp_integrated, (jint)p.integrated); + env->SetIntField(prop, cudaDeviceProp_canMapHostMemory, (jint)p.canMapHostMemory); + env->SetIntField(prop, cudaDeviceProp_computeMode, (jint)p.computeMode); + env->SetIntField(prop, cudaDeviceProp_maxTexture1D, (jint)p.maxTexture1D); + env->SetIntField(prop, cudaDeviceProp_maxTexture1DMipmap, (jint)p.maxTexture1DMipmap); + env->SetIntField(prop, cudaDeviceProp_maxTexture1DLinear, (jint)p.maxTexture1DLinear); + env->SetIntField(prop, cudaDeviceProp_maxTextureCubemap, (jint)p.maxTextureCubemap); + env->SetIntField(prop, cudaDeviceProp_maxSurface1D, (jint)p.maxSurface1D); + env->SetIntField(prop, cudaDeviceProp_maxSurfaceCubemap, (jint)p.maxSurfaceCubemap); + env->SetIntField(prop, cudaDeviceProp_asyncEngineCount, (jint)p.asyncEngineCount); + env->SetIntField(prop, cudaDeviceProp_concurrentKernels, (jint)p.concurrentKernels); + env->SetIntField(prop, cudaDeviceProp_ECCEnabled, (jint)p.ECCEnabled); + env->SetIntField(prop, cudaDeviceProp_pciBusID, (jint)p.pciBusID); + env->SetIntField(prop, cudaDeviceProp_pciDeviceID, (jint)p.pciDeviceID); + env->SetIntField(prop, cudaDeviceProp_pciDomainID, (jint)p.pciDomainID); + env->SetIntField(prop, cudaDeviceProp_unifiedAddressing, (jint)p.unifiedAddressing); + +} + + JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_runtime_CuJava_cudaMemcpyNative (JNIEnv *env, jclass cls, jobject dst, jobject src, jlong count, jint kind) { From 1a1bc4c8c18e74fb9b5786d2fbea48965253e049 Mon Sep 17 00:00:00 2001 From: ReneEnjilian Date: Sat, 23 Aug 2025 00:03:33 +0200 Subject: [PATCH 34/57] rebuild runtime lib --- src/main/cpp/jni/build/CMakeCache.txt | 652 +++++++++++++++ .../CMakeFiles/3.22.1/CMakeCXXCompiler.cmake | 83 ++ .../3.22.1/CMakeDetermineCompilerABI_CXX.bin | Bin 0 -> 15992 bytes .../build/CMakeFiles/3.22.1/CMakeSystem.cmake | 15 + .../CompilerIdCXX/CMakeCXXCompilerId.cpp | 791 ++++++++++++++++++ .../CMakeFiles/3.22.1/CompilerIdCXX/a.out | Bin 0 -> 16096 bytes .../CMakeDirectoryInformation.cmake | 16 + .../cpp/jni/build/CMakeFiles/CMakeOutput.log | 278 ++++++ .../cpp/jni/build/CMakeFiles/Makefile.cmake | 58 ++ src/main/cpp/jni/build/CMakeFiles/Makefile2 | 171 ++++ .../build/CMakeFiles/TargetDirectories.txt | 8 + .../jni/build/CMakeFiles/cmake.check_cache | 1 + .../cpp/jni/build/CMakeFiles/progress.marks | 1 + src/main/cpp/jni/build/Makefile | 168 ++++ src/main/cpp/jni/build/cmake_install.cmake | 64 ++ .../CMakeDirectoryInformation.cmake | 16 + .../CuJavaCommonJNI.dir/DependInfo.cmake | 21 + .../CMakeFiles/CuJavaCommonJNI.dir/build.make | 143 ++++ .../CuJavaCommonJNI.dir/cmake_clean.cmake | 15 + .../cmake_clean_target.cmake | 3 + .../compiler_depend.internal | 127 +++ .../CuJavaCommonJNI.dir/compiler_depend.make | 218 +++++ .../CuJavaCommonJNI.dir/compiler_depend.ts | 2 + .../cujava_jni_utils.cpp.o | Bin 0 -> 7544 bytes .../cujava_jni_utils.cpp.o.d | 38 + .../CuJavaCommonJNI.dir/cujava_logger.cpp.o | Bin 0 -> 2056 bytes .../CuJavaCommonJNI.dir/cujava_logger.cpp.o.d | 34 + .../cujava_pointer_utils.cpp.o | Bin 0 -> 44536 bytes .../cujava_pointer_utils.cpp.o.d | 43 + .../CuJavaCommonJNI.dir/depend.make | 2 + .../CMakeFiles/CuJavaCommonJNI.dir/flags.make | 10 + .../CMakeFiles/CuJavaCommonJNI.dir/link.txt | 2 + .../CuJavaCommonJNI.dir/progress.make | 5 + .../build/common/CMakeFiles/progress.marks | 1 + src/main/cpp/jni/build/common/Makefile | 236 ++++++ .../cpp/jni/build/common/cmake_install.cmake | 44 + .../CMakeDirectoryInformation.cmake | 16 + .../CuJavaRuntime.dir/DependInfo.cmake | 20 + .../CMakeFiles/CuJavaRuntime.dir/build.make | 114 +++ .../CuJavaRuntime.dir/cmake_clean.cmake | 11 + .../CuJavaRuntime.dir/compiler_depend.make | 2 + .../CuJavaRuntime.dir/compiler_depend.ts | 2 + .../CuJavaRuntime.dir/cujava_runtime.cpp.o | Bin 0 -> 32832 bytes .../CuJavaRuntime.dir/cujava_runtime.cpp.o.d | 96 +++ .../CMakeFiles/CuJavaRuntime.dir/depend.make | 2 + .../CMakeFiles/CuJavaRuntime.dir/flags.make | 10 + .../CMakeFiles/CuJavaRuntime.dir/link.txt | 1 + .../CuJavaRuntime.dir/progress.make | 3 + .../build/runtime/CMakeFiles/progress.marks | 1 + src/main/cpp/jni/build/runtime/Makefile | 182 ++++ .../cpp/jni/build/runtime/cmake_install.cmake | 44 + src/main/cpp/jni/common/cujava_jni_utils.hpp | 1 + src/main/cpp/lib/libCuJavaCommonJNI.a | Bin 55798 -> 58608 bytes src/main/cpp/lib/libcujava_runtime.so | Bin 43064 -> 73784 bytes 54 files changed, 3771 insertions(+) create mode 100644 src/main/cpp/jni/build/CMakeCache.txt create mode 100644 src/main/cpp/jni/build/CMakeFiles/3.22.1/CMakeCXXCompiler.cmake create mode 100755 src/main/cpp/jni/build/CMakeFiles/3.22.1/CMakeDetermineCompilerABI_CXX.bin create mode 100644 src/main/cpp/jni/build/CMakeFiles/3.22.1/CMakeSystem.cmake create mode 100644 src/main/cpp/jni/build/CMakeFiles/3.22.1/CompilerIdCXX/CMakeCXXCompilerId.cpp create mode 100755 src/main/cpp/jni/build/CMakeFiles/3.22.1/CompilerIdCXX/a.out create mode 100644 src/main/cpp/jni/build/CMakeFiles/CMakeDirectoryInformation.cmake create mode 100644 src/main/cpp/jni/build/CMakeFiles/CMakeOutput.log create mode 100644 src/main/cpp/jni/build/CMakeFiles/Makefile.cmake create mode 100644 src/main/cpp/jni/build/CMakeFiles/Makefile2 create mode 100644 src/main/cpp/jni/build/CMakeFiles/TargetDirectories.txt create mode 100644 src/main/cpp/jni/build/CMakeFiles/cmake.check_cache create mode 100644 src/main/cpp/jni/build/CMakeFiles/progress.marks create mode 100644 src/main/cpp/jni/build/Makefile create mode 100644 src/main/cpp/jni/build/cmake_install.cmake create mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CMakeDirectoryInformation.cmake create mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/DependInfo.cmake create mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/build.make create mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cmake_clean.cmake create mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cmake_clean_target.cmake create mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.internal create mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.make create mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.ts create mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o create mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o.d create mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o create mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o.d create mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o create mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o.d create mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/depend.make create mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/flags.make create mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/link.txt create mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/progress.make create mode 100644 src/main/cpp/jni/build/common/CMakeFiles/progress.marks create mode 100644 src/main/cpp/jni/build/common/Makefile create mode 100644 src/main/cpp/jni/build/common/cmake_install.cmake create mode 100644 src/main/cpp/jni/build/runtime/CMakeFiles/CMakeDirectoryInformation.cmake create mode 100644 src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/DependInfo.cmake create mode 100644 src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/build.make create mode 100644 src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/cmake_clean.cmake create mode 100644 src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/compiler_depend.make create mode 100644 src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/compiler_depend.ts create mode 100644 src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.o create mode 100644 src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.o.d create mode 100644 src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/depend.make create mode 100644 src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/flags.make create mode 100644 src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/link.txt create mode 100644 src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/progress.make create mode 100644 src/main/cpp/jni/build/runtime/CMakeFiles/progress.marks create mode 100644 src/main/cpp/jni/build/runtime/Makefile create mode 100644 src/main/cpp/jni/build/runtime/cmake_install.cmake diff --git a/src/main/cpp/jni/build/CMakeCache.txt b/src/main/cpp/jni/build/CMakeCache.txt new file mode 100644 index 00000000000..2ec4e700ae3 --- /dev/null +++ b/src/main/cpp/jni/build/CMakeCache.txt @@ -0,0 +1,652 @@ +# This is the CMakeCache file. +# For build in directory: /home/rene/projects/systemds/src/main/cpp/jni/build +# It was generated by CMake: /usr/bin/cmake +# You can edit this file to change values found and used by cmake. +# If you do not want to change any of the values, simply exit the editor. +# If you do want to change a value, simply edit, save, and exit the editor. +# The syntax for the file is as follows: +# KEY:TYPE=VALUE +# KEY is the name of a variable in the cache. +# TYPE is a hint to GUIs for the type of VALUE, DO NOT EDIT TYPE!. +# VALUE is the current value for the KEY. + +######################## +# EXTERNAL cache entries +######################## + +//Path to a program. +CMAKE_ADDR2LINE:FILEPATH=/usr/bin/addr2line + +//Path to a program. +CMAKE_AR:FILEPATH=/usr/bin/ar + +//Choose the type of build, options are: None Debug Release RelWithDebInfo +// MinSizeRel ... +CMAKE_BUILD_TYPE:STRING=Release + +//Enable/Disable color output during build. +CMAKE_COLOR_MAKEFILE:BOOL=ON + +//CXX compiler +CMAKE_CXX_COMPILER:FILEPATH=/usr/bin/c++ + +//A wrapper around 'ar' adding the appropriate '--plugin' option +// for the GCC compiler +CMAKE_CXX_COMPILER_AR:FILEPATH=/usr/bin/gcc-ar-12 + +//A wrapper around 'ranlib' adding the appropriate '--plugin' option +// for the GCC compiler +CMAKE_CXX_COMPILER_RANLIB:FILEPATH=/usr/bin/gcc-ranlib-12 + +//Flags used by the CXX compiler during all build types. +CMAKE_CXX_FLAGS:STRING= + +//Flags used by the CXX compiler during DEBUG builds. +CMAKE_CXX_FLAGS_DEBUG:STRING=-g + +//Flags used by the CXX compiler during MINSIZEREL builds. +CMAKE_CXX_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG + +//Flags used by the CXX compiler during RELEASE builds. +CMAKE_CXX_FLAGS_RELEASE:STRING=-O3 -DNDEBUG + +//Flags used by the CXX compiler during RELWITHDEBINFO builds. +CMAKE_CXX_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG + +//Path to a program. +CMAKE_DLLTOOL:FILEPATH=CMAKE_DLLTOOL-NOTFOUND + +//Flags used by the linker during all build types. +CMAKE_EXE_LINKER_FLAGS:STRING= + +//Flags used by the linker during DEBUG builds. +CMAKE_EXE_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during MINSIZEREL builds. +CMAKE_EXE_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during RELEASE builds. +CMAKE_EXE_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during RELWITHDEBINFO builds. +CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//Enable/Disable output of compile commands during generation. +CMAKE_EXPORT_COMPILE_COMMANDS:BOOL= + +//Install path prefix, prepended onto install directories. +CMAKE_INSTALL_PREFIX:PATH=/usr/local + +//Path to a program. +CMAKE_LINKER:FILEPATH=/usr/bin/ld + +//Path to a program. +CMAKE_MAKE_PROGRAM:FILEPATH=/usr/bin/gmake + +//Flags used by the linker during the creation of modules during +// all build types. +CMAKE_MODULE_LINKER_FLAGS:STRING= + +//Flags used by the linker during the creation of modules during +// DEBUG builds. +CMAKE_MODULE_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during the creation of modules during +// MINSIZEREL builds. +CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during the creation of modules during +// RELEASE builds. +CMAKE_MODULE_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during the creation of modules during +// RELWITHDEBINFO builds. +CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//Path to a program. +CMAKE_NM:FILEPATH=/usr/bin/nm + +//Path to a program. +CMAKE_OBJCOPY:FILEPATH=/usr/bin/objcopy + +//Path to a program. +CMAKE_OBJDUMP:FILEPATH=/usr/bin/objdump + +//Value Computed by CMake +CMAKE_PROJECT_DESCRIPTION:STATIC= + +//Value Computed by CMake +CMAKE_PROJECT_HOMEPAGE_URL:STATIC= + +//Value Computed by CMake +CMAKE_PROJECT_NAME:STATIC=cujava_jni + +//Path to a program. +CMAKE_RANLIB:FILEPATH=/usr/bin/ranlib + +//Path to a program. +CMAKE_READELF:FILEPATH=/usr/bin/readelf + +//Flags used by the linker during the creation of shared libraries +// during all build types. +CMAKE_SHARED_LINKER_FLAGS:STRING= + +//Flags used by the linker during the creation of shared libraries +// during DEBUG builds. +CMAKE_SHARED_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during the creation of shared libraries +// during MINSIZEREL builds. +CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during the creation of shared libraries +// during RELEASE builds. +CMAKE_SHARED_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during the creation of shared libraries +// during RELWITHDEBINFO builds. +CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//If set, runtime paths are not added when installing shared libraries, +// but are added when building. +CMAKE_SKIP_INSTALL_RPATH:BOOL=NO + +//If set, runtime paths are not added when using shared libraries. +CMAKE_SKIP_RPATH:BOOL=NO + +//Flags used by the linker during the creation of static libraries +// during all build types. +CMAKE_STATIC_LINKER_FLAGS:STRING= + +//Flags used by the linker during the creation of static libraries +// during DEBUG builds. +CMAKE_STATIC_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during the creation of static libraries +// during MINSIZEREL builds. +CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during the creation of static libraries +// during RELEASE builds. +CMAKE_STATIC_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during the creation of static libraries +// during RELWITHDEBINFO builds. +CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//Path to a program. +CMAKE_STRIP:FILEPATH=/usr/bin/strip + +//If this value is on, makefiles will be generated without the +// .SILENT directive, and all commands will be echoed to the console +// during the make. This is useful for debugging only. With Visual +// Studio IDE projects all commands are done without /nologo. +CMAKE_VERBOSE_MAKEFILE:BOOL=FALSE + +CUDAToolkit_BIN_DIR:PATH=/usr/local/cuda-12.6/bin + +//Path to a program. +CUDAToolkit_NVCC_EXECUTABLE:FILEPATH=/usr/local/cuda-12.6/bin/nvcc + +//Path to a library. +CUDAToolkit_rt_LIBRARY:FILEPATH=/usr/lib/x86_64-linux-gnu/librt.a + +//Path to a library. +CUDA_CUDART:FILEPATH=/usr/local/cuda-12.6/lib64/libcudart.so + +//Path to a library. +CUDA_OpenCL_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libOpenCL.so + +//Path to a library. +CUDA_cublasLt_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcublasLt.so + +//Path to a library. +CUDA_cublasLt_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcublasLt_static.a + +//Path to a library. +CUDA_cublas_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcublas.so + +//Path to a library. +CUDA_cublas_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcublas_static.a + +//Path to a library. +CUDA_cuda_driver_LIBRARY:FILEPATH=/usr/lib/x86_64-linux-gnu/libcuda.so + +//Path to a library. +CUDA_cudart_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcudart.so + +//Path to a library. +CUDA_cudart_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcudart_static.a + +//Path to a library. +CUDA_cufft_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcufft.so + +//Path to a library. +CUDA_cufft_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcufft_static.a + +//Path to a library. +CUDA_cufftw_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcufftw.so + +//Path to a library. +CUDA_culibos_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libculibos.a + +//Path to a library. +CUDA_cupti_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcupti.so + +//Path to a library. +CUDA_cupti_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcupti_static.a + +//Path to a library. +CUDA_curand_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcurand.so + +//Path to a library. +CUDA_curand_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcurand_static.a + +//Path to a library. +CUDA_cusolver_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcusolver.so + +//Path to a library. +CUDA_cusolver_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcusolver_static.a + +//Path to a library. +CUDA_cusparse_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcusparse.so + +//Path to a library. +CUDA_cusparse_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcusparse_static.a + +//Path to a library. +CUDA_nppc_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppc.so + +//Path to a library. +CUDA_nppc_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppc_static.a + +//Path to a library. +CUDA_nppial_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppial.so + +//Path to a library. +CUDA_nppial_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppial_static.a + +//Path to a library. +CUDA_nppicc_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppicc.so + +//Path to a library. +CUDA_nppicc_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppicc_static.a + +//Path to a library. +CUDA_nppicom_LIBRARY:FILEPATH=CUDA_nppicom_LIBRARY-NOTFOUND + +//Path to a library. +CUDA_nppicom_static_LIBRARY:FILEPATH=CUDA_nppicom_static_LIBRARY-NOTFOUND + +//Path to a library. +CUDA_nppidei_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppidei.so + +//Path to a library. +CUDA_nppidei_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppidei_static.a + +//Path to a library. +CUDA_nppif_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppif.so + +//Path to a library. +CUDA_nppif_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppif_static.a + +//Path to a library. +CUDA_nppig_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppig.so + +//Path to a library. +CUDA_nppig_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppig_static.a + +//Path to a library. +CUDA_nppim_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppim.so + +//Path to a library. +CUDA_nppim_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppim_static.a + +//Path to a library. +CUDA_nppist_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppist.so + +//Path to a library. +CUDA_nppist_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppist_static.a + +//Path to a library. +CUDA_nppisu_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppisu.so + +//Path to a library. +CUDA_nppisu_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppisu_static.a + +//Path to a library. +CUDA_nppitc_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppitc.so + +//Path to a library. +CUDA_nppitc_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppitc_static.a + +//Path to a library. +CUDA_npps_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnpps.so + +//Path to a library. +CUDA_npps_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnpps_static.a + +//Path to a library. +CUDA_nvToolsExt_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnvToolsExt.so + +//Path to a library. +CUDA_nvgraph_LIBRARY:FILEPATH=CUDA_nvgraph_LIBRARY-NOTFOUND + +//Path to a library. +CUDA_nvgraph_static_LIBRARY:FILEPATH=CUDA_nvgraph_static_LIBRARY-NOTFOUND + +//Path to a library. +CUDA_nvjpeg_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnvjpeg.so + +//Path to a library. +CUDA_nvjpeg_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnvjpeg_static.a + +//Path to a library. +CUDA_nvml_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/stubs/libnvidia-ml.so + +//Path to a library. +CUDA_nvrtc_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnvrtc.so + +//Value Computed by CMake +CuJavaCommonJNI_BINARY_DIR:STATIC=/home/rene/projects/systemds/src/main/cpp/jni/build/common + +//Value Computed by CMake +CuJavaCommonJNI_IS_TOP_LEVEL:STATIC=OFF + +//Value Computed by CMake +CuJavaCommonJNI_SOURCE_DIR:STATIC=/home/rene/projects/systemds/src/main/cpp/jni/common + +//Value Computed by CMake +CuJavaRuntime_BINARY_DIR:STATIC=/home/rene/projects/systemds/src/main/cpp/jni/build/runtime + +//Value Computed by CMake +CuJavaRuntime_IS_TOP_LEVEL:STATIC=OFF + +//Value Computed by CMake +CuJavaRuntime_SOURCE_DIR:STATIC=/home/rene/projects/systemds/src/main/cpp/jni/runtime + +//Path to a file. +JAVA_AWT_INCLUDE_PATH:PATH=/usr/lib/jvm/java-11-openjdk-amd64/include + +//Path to a library. +JAVA_AWT_LIBRARY:FILEPATH=/usr/lib/jvm/java-11-openjdk-amd64/lib/libjawt.so + +//Path to a file. +JAVA_INCLUDE_PATH:PATH=/usr/lib/jvm/java-11-openjdk-amd64/include + +//Path to a file. +JAVA_INCLUDE_PATH2:PATH=/usr/lib/jvm/java-11-openjdk-amd64/include/linux + +//Path to a library. +JAVA_JVM_LIBRARY:FILEPATH=/usr/lib/jvm/java-11-openjdk-amd64/lib/server/libjvm.so + +//Value Computed by CMake +cujava_jni_BINARY_DIR:STATIC=/home/rene/projects/systemds/src/main/cpp/jni/build + +//Value Computed by CMake +cujava_jni_IS_TOP_LEVEL:STATIC=ON + +//Value Computed by CMake +cujava_jni_SOURCE_DIR:STATIC=/home/rene/projects/systemds/src/main/cpp/jni + + +######################## +# INTERNAL cache entries +######################## + +//ADVANCED property for variable: CMAKE_ADDR2LINE +CMAKE_ADDR2LINE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_AR +CMAKE_AR-ADVANCED:INTERNAL=1 +//This is the directory where this CMakeCache.txt was created +CMAKE_CACHEFILE_DIR:INTERNAL=/home/rene/projects/systemds/src/main/cpp/jni/build +//Major version of cmake used to create the current loaded cache +CMAKE_CACHE_MAJOR_VERSION:INTERNAL=3 +//Minor version of cmake used to create the current loaded cache +CMAKE_CACHE_MINOR_VERSION:INTERNAL=22 +//Patch version of cmake used to create the current loaded cache +CMAKE_CACHE_PATCH_VERSION:INTERNAL=1 +//ADVANCED property for variable: CMAKE_COLOR_MAKEFILE +CMAKE_COLOR_MAKEFILE-ADVANCED:INTERNAL=1 +//Path to CMake executable. +CMAKE_COMMAND:INTERNAL=/usr/bin/cmake +//Path to cpack program executable. +CMAKE_CPACK_COMMAND:INTERNAL=/usr/bin/cpack +//Path to ctest program executable. +CMAKE_CTEST_COMMAND:INTERNAL=/usr/bin/ctest +//ADVANCED property for variable: CMAKE_CXX_COMPILER +CMAKE_CXX_COMPILER-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_COMPILER_AR +CMAKE_CXX_COMPILER_AR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_COMPILER_RANLIB +CMAKE_CXX_COMPILER_RANLIB-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS +CMAKE_CXX_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS_DEBUG +CMAKE_CXX_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS_MINSIZEREL +CMAKE_CXX_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELEASE +CMAKE_CXX_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELWITHDEBINFO +CMAKE_CXX_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_DLLTOOL +CMAKE_DLLTOOL-ADVANCED:INTERNAL=1 +//Executable file format +CMAKE_EXECUTABLE_FORMAT:INTERNAL=ELF +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS +CMAKE_EXE_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_DEBUG +CMAKE_EXE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_MINSIZEREL +CMAKE_EXE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELEASE +CMAKE_EXE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXPORT_COMPILE_COMMANDS +CMAKE_EXPORT_COMPILE_COMMANDS-ADVANCED:INTERNAL=1 +//Name of external makefile project generator. +CMAKE_EXTRA_GENERATOR:INTERNAL= +//Name of generator. +CMAKE_GENERATOR:INTERNAL=Unix Makefiles +//Generator instance identifier. +CMAKE_GENERATOR_INSTANCE:INTERNAL= +//Name of generator platform. +CMAKE_GENERATOR_PLATFORM:INTERNAL= +//Name of generator toolset. +CMAKE_GENERATOR_TOOLSET:INTERNAL= +//Test CMAKE_HAVE_LIBC_PTHREAD +CMAKE_HAVE_LIBC_PTHREAD:INTERNAL=1 +//Have include pthread.h +CMAKE_HAVE_PTHREAD_H:INTERNAL=1 +//Source directory with the top level CMakeLists.txt file for this +// project +CMAKE_HOME_DIRECTORY:INTERNAL=/home/rene/projects/systemds/src/main/cpp/jni +//Install .so files without execute permission. +CMAKE_INSTALL_SO_NO_EXE:INTERNAL=1 +//ADVANCED property for variable: CMAKE_LINKER +CMAKE_LINKER-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MAKE_PROGRAM +CMAKE_MAKE_PROGRAM-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS +CMAKE_MODULE_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_DEBUG +CMAKE_MODULE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL +CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELEASE +CMAKE_MODULE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_NM +CMAKE_NM-ADVANCED:INTERNAL=1 +//number of local generators +CMAKE_NUMBER_OF_MAKEFILES:INTERNAL=3 +//ADVANCED property for variable: CMAKE_OBJCOPY +CMAKE_OBJCOPY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_OBJDUMP +CMAKE_OBJDUMP-ADVANCED:INTERNAL=1 +//Platform information initialized +CMAKE_PLATFORM_INFO_INITIALIZED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_RANLIB +CMAKE_RANLIB-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_READELF +CMAKE_READELF-ADVANCED:INTERNAL=1 +//Path to CMake installation. +CMAKE_ROOT:INTERNAL=/usr/share/cmake-3.22 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS +CMAKE_SHARED_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_DEBUG +CMAKE_SHARED_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL +CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELEASE +CMAKE_SHARED_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SKIP_INSTALL_RPATH +CMAKE_SKIP_INSTALL_RPATH-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SKIP_RPATH +CMAKE_SKIP_RPATH-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS +CMAKE_STATIC_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_DEBUG +CMAKE_STATIC_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL +CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELEASE +CMAKE_STATIC_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STRIP +CMAKE_STRIP-ADVANCED:INTERNAL=1 +//uname command +CMAKE_UNAME:INTERNAL=/usr/bin/uname +//ADVANCED property for variable: CMAKE_VERBOSE_MAKEFILE +CMAKE_VERBOSE_MAKEFILE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDAToolkit_NVCC_EXECUTABLE +CUDAToolkit_NVCC_EXECUTABLE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDAToolkit_rt_LIBRARY +CUDAToolkit_rt_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_CUDART +CUDA_CUDART-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_OpenCL_LIBRARY +CUDA_OpenCL_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_cublasLt_LIBRARY +CUDA_cublasLt_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_cublasLt_static_LIBRARY +CUDA_cublasLt_static_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_cublas_LIBRARY +CUDA_cublas_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_cublas_static_LIBRARY +CUDA_cublas_static_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_cuda_driver_LIBRARY +CUDA_cuda_driver_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_cudart_LIBRARY +CUDA_cudart_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_cudart_static_LIBRARY +CUDA_cudart_static_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_cufft_LIBRARY +CUDA_cufft_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_cufft_static_LIBRARY +CUDA_cufft_static_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_cufftw_LIBRARY +CUDA_cufftw_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_culibos_LIBRARY +CUDA_culibos_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_cupti_LIBRARY +CUDA_cupti_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_cupti_static_LIBRARY +CUDA_cupti_static_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_curand_LIBRARY +CUDA_curand_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_curand_static_LIBRARY +CUDA_curand_static_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_cusolver_LIBRARY +CUDA_cusolver_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_cusolver_static_LIBRARY +CUDA_cusolver_static_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_cusparse_LIBRARY +CUDA_cusparse_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_cusparse_static_LIBRARY +CUDA_cusparse_static_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nppc_LIBRARY +CUDA_nppc_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nppc_static_LIBRARY +CUDA_nppc_static_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nppial_LIBRARY +CUDA_nppial_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nppial_static_LIBRARY +CUDA_nppial_static_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nppicc_LIBRARY +CUDA_nppicc_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nppicc_static_LIBRARY +CUDA_nppicc_static_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nppicom_LIBRARY +CUDA_nppicom_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nppicom_static_LIBRARY +CUDA_nppicom_static_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nppidei_LIBRARY +CUDA_nppidei_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nppidei_static_LIBRARY +CUDA_nppidei_static_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nppif_LIBRARY +CUDA_nppif_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nppif_static_LIBRARY +CUDA_nppif_static_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nppig_LIBRARY +CUDA_nppig_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nppig_static_LIBRARY +CUDA_nppig_static_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nppim_LIBRARY +CUDA_nppim_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nppim_static_LIBRARY +CUDA_nppim_static_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nppist_LIBRARY +CUDA_nppist_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nppist_static_LIBRARY +CUDA_nppist_static_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nppisu_LIBRARY +CUDA_nppisu_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nppisu_static_LIBRARY +CUDA_nppisu_static_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nppitc_LIBRARY +CUDA_nppitc_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nppitc_static_LIBRARY +CUDA_nppitc_static_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_npps_LIBRARY +CUDA_npps_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_npps_static_LIBRARY +CUDA_npps_static_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nvToolsExt_LIBRARY +CUDA_nvToolsExt_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nvgraph_LIBRARY +CUDA_nvgraph_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nvgraph_static_LIBRARY +CUDA_nvgraph_static_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nvjpeg_LIBRARY +CUDA_nvjpeg_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nvjpeg_static_LIBRARY +CUDA_nvjpeg_static_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nvml_LIBRARY +CUDA_nvml_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nvrtc_LIBRARY +CUDA_nvrtc_LIBRARY-ADVANCED:INTERNAL=1 +//Details about finding CUDAToolkit +FIND_PACKAGE_MESSAGE_DETAILS_CUDAToolkit:INTERNAL=[/usr/local/cuda-12.6/include][/usr/local/cuda-12.6/lib64/libcudart.so][/usr/local/cuda-12.6/bin][v12.6.85()] +//Details about finding JNI +FIND_PACKAGE_MESSAGE_DETAILS_JNI:INTERNAL=[/usr/lib/jvm/java-11-openjdk-amd64/lib/libjawt.so][/usr/lib/jvm/java-11-openjdk-amd64/lib/server/libjvm.so][/usr/lib/jvm/java-11-openjdk-amd64/include][/usr/lib/jvm/java-11-openjdk-amd64/include/linux][/usr/lib/jvm/java-11-openjdk-amd64/include][v()] +//Details about finding Threads +FIND_PACKAGE_MESSAGE_DETAILS_Threads:INTERNAL=[TRUE][v()] +//ADVANCED property for variable: JAVA_AWT_INCLUDE_PATH +JAVA_AWT_INCLUDE_PATH-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: JAVA_AWT_LIBRARY +JAVA_AWT_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: JAVA_INCLUDE_PATH +JAVA_INCLUDE_PATH-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: JAVA_INCLUDE_PATH2 +JAVA_INCLUDE_PATH2-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: JAVA_JVM_LIBRARY +JAVA_JVM_LIBRARY-ADVANCED:INTERNAL=1 + diff --git a/src/main/cpp/jni/build/CMakeFiles/3.22.1/CMakeCXXCompiler.cmake b/src/main/cpp/jni/build/CMakeFiles/3.22.1/CMakeCXXCompiler.cmake new file mode 100644 index 00000000000..08880e71e24 --- /dev/null +++ b/src/main/cpp/jni/build/CMakeFiles/3.22.1/CMakeCXXCompiler.cmake @@ -0,0 +1,83 @@ +set(CMAKE_CXX_COMPILER "/usr/bin/c++") +set(CMAKE_CXX_COMPILER_ARG1 "") +set(CMAKE_CXX_COMPILER_ID "GNU") +set(CMAKE_CXX_COMPILER_VERSION "12.3.0") +set(CMAKE_CXX_COMPILER_VERSION_INTERNAL "") +set(CMAKE_CXX_COMPILER_WRAPPER "") +set(CMAKE_CXX_STANDARD_COMPUTED_DEFAULT "17") +set(CMAKE_CXX_EXTENSIONS_COMPUTED_DEFAULT "ON") +set(CMAKE_CXX_COMPILE_FEATURES "cxx_std_98;cxx_template_template_parameters;cxx_std_11;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates;cxx_std_14;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates;cxx_std_17;cxx_std_20;cxx_std_23") +set(CMAKE_CXX98_COMPILE_FEATURES "cxx_std_98;cxx_template_template_parameters") +set(CMAKE_CXX11_COMPILE_FEATURES "cxx_std_11;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates") +set(CMAKE_CXX14_COMPILE_FEATURES "cxx_std_14;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates") +set(CMAKE_CXX17_COMPILE_FEATURES "cxx_std_17") +set(CMAKE_CXX20_COMPILE_FEATURES "cxx_std_20") +set(CMAKE_CXX23_COMPILE_FEATURES "cxx_std_23") + +set(CMAKE_CXX_PLATFORM_ID "Linux") +set(CMAKE_CXX_SIMULATE_ID "") +set(CMAKE_CXX_COMPILER_FRONTEND_VARIANT "") +set(CMAKE_CXX_SIMULATE_VERSION "") + + + + +set(CMAKE_AR "/usr/bin/ar") +set(CMAKE_CXX_COMPILER_AR "/usr/bin/gcc-ar-12") +set(CMAKE_RANLIB "/usr/bin/ranlib") +set(CMAKE_CXX_COMPILER_RANLIB "/usr/bin/gcc-ranlib-12") +set(CMAKE_LINKER "/usr/bin/ld") +set(CMAKE_MT "") +set(CMAKE_COMPILER_IS_GNUCXX 1) +set(CMAKE_CXX_COMPILER_LOADED 1) +set(CMAKE_CXX_COMPILER_WORKS TRUE) +set(CMAKE_CXX_ABI_COMPILED TRUE) + +set(CMAKE_CXX_COMPILER_ENV_VAR "CXX") + +set(CMAKE_CXX_COMPILER_ID_RUN 1) +set(CMAKE_CXX_SOURCE_FILE_EXTENSIONS C;M;c++;cc;cpp;cxx;m;mm;mpp;CPP;ixx;cppm) +set(CMAKE_CXX_IGNORE_EXTENSIONS inl;h;hpp;HPP;H;o;O;obj;OBJ;def;DEF;rc;RC) + +foreach (lang C OBJC OBJCXX) + if (CMAKE_${lang}_COMPILER_ID_RUN) + foreach(extension IN LISTS CMAKE_${lang}_SOURCE_FILE_EXTENSIONS) + list(REMOVE_ITEM CMAKE_CXX_SOURCE_FILE_EXTENSIONS ${extension}) + endforeach() + endif() +endforeach() + +set(CMAKE_CXX_LINKER_PREFERENCE 30) +set(CMAKE_CXX_LINKER_PREFERENCE_PROPAGATES 1) + +# Save compiler ABI information. +set(CMAKE_CXX_SIZEOF_DATA_PTR "8") +set(CMAKE_CXX_COMPILER_ABI "ELF") +set(CMAKE_CXX_BYTE_ORDER "LITTLE_ENDIAN") +set(CMAKE_CXX_LIBRARY_ARCHITECTURE "x86_64-linux-gnu") + +if(CMAKE_CXX_SIZEOF_DATA_PTR) + set(CMAKE_SIZEOF_VOID_P "${CMAKE_CXX_SIZEOF_DATA_PTR}") +endif() + +if(CMAKE_CXX_COMPILER_ABI) + set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_CXX_COMPILER_ABI}") +endif() + +if(CMAKE_CXX_LIBRARY_ARCHITECTURE) + set(CMAKE_LIBRARY_ARCHITECTURE "x86_64-linux-gnu") +endif() + +set(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX "") +if(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX) + set(CMAKE_CL_SHOWINCLUDES_PREFIX "${CMAKE_CXX_CL_SHOWINCLUDES_PREFIX}") +endif() + + + + + +set(CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES "/usr/include/c++/12;/usr/include/x86_64-linux-gnu/c++/12;/usr/include/c++/12/backward;/usr/lib/gcc/x86_64-linux-gnu/12/include;/usr/local/include;/usr/include/x86_64-linux-gnu;/usr/include") +set(CMAKE_CXX_IMPLICIT_LINK_LIBRARIES "stdc++;m;gcc_s;gcc;c;gcc_s;gcc") +set(CMAKE_CXX_IMPLICIT_LINK_DIRECTORIES "/usr/lib/gcc/x86_64-linux-gnu/12;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib") +set(CMAKE_CXX_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "") diff --git a/src/main/cpp/jni/build/CMakeFiles/3.22.1/CMakeDetermineCompilerABI_CXX.bin b/src/main/cpp/jni/build/CMakeFiles/3.22.1/CMakeDetermineCompilerABI_CXX.bin new file mode 100755 index 0000000000000000000000000000000000000000..be4688452097ca7d724b10c7ea18ff3d8978dbbc GIT binary patch literal 15992 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 literal 0 HcmV?d00001 diff --git a/src/main/cpp/jni/build/CMakeFiles/3.22.1/CMakeSystem.cmake b/src/main/cpp/jni/build/CMakeFiles/3.22.1/CMakeSystem.cmake new file mode 100644 index 00000000000..c1d7ea84b21 --- /dev/null +++ b/src/main/cpp/jni/build/CMakeFiles/3.22.1/CMakeSystem.cmake @@ -0,0 +1,15 @@ +set(CMAKE_HOST_SYSTEM "Linux-6.8.0-65-generic") +set(CMAKE_HOST_SYSTEM_NAME "Linux") +set(CMAKE_HOST_SYSTEM_VERSION "6.8.0-65-generic") +set(CMAKE_HOST_SYSTEM_PROCESSOR "x86_64") + + + +set(CMAKE_SYSTEM "Linux-6.8.0-65-generic") +set(CMAKE_SYSTEM_NAME "Linux") +set(CMAKE_SYSTEM_VERSION "6.8.0-65-generic") +set(CMAKE_SYSTEM_PROCESSOR "x86_64") + +set(CMAKE_CROSSCOMPILING "FALSE") + +set(CMAKE_SYSTEM_LOADED 1) diff --git a/src/main/cpp/jni/build/CMakeFiles/3.22.1/CompilerIdCXX/CMakeCXXCompilerId.cpp b/src/main/cpp/jni/build/CMakeFiles/3.22.1/CompilerIdCXX/CMakeCXXCompilerId.cpp new file mode 100644 index 00000000000..25c62a8c3cb --- /dev/null +++ b/src/main/cpp/jni/build/CMakeFiles/3.22.1/CompilerIdCXX/CMakeCXXCompilerId.cpp @@ -0,0 +1,791 @@ +/* This source file must have a .cpp extension so that all C++ compilers + recognize the extension without flags. Borland does not know .cxx for + example. */ +#ifndef __cplusplus +# error "A C compiler has been selected for C++." +#endif + +#if !defined(__has_include) +/* If the compiler does not have __has_include, pretend the answer is + always no. */ +# define __has_include(x) 0 +#endif + + +/* Version number components: V=Version, R=Revision, P=Patch + Version date components: YYYY=Year, MM=Month, DD=Day */ + +#if defined(__COMO__) +# define COMPILER_ID "Comeau" + /* __COMO_VERSION__ = VRR */ +# define COMPILER_VERSION_MAJOR DEC(__COMO_VERSION__ / 100) +# define COMPILER_VERSION_MINOR DEC(__COMO_VERSION__ % 100) + +#elif defined(__INTEL_COMPILER) || defined(__ICC) +# define COMPILER_ID "Intel" +# if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +# endif +# if defined(__GNUC__) +# define SIMULATE_ID "GNU" +# endif + /* __INTEL_COMPILER = VRP prior to 2021, and then VVVV for 2021 and later, + except that a few beta releases use the old format with V=2021. */ +# if __INTEL_COMPILER < 2021 || __INTEL_COMPILER == 202110 || __INTEL_COMPILER == 202111 +# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER/100) +# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER/10 % 10) +# if defined(__INTEL_COMPILER_UPDATE) +# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER_UPDATE) +# else +# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER % 10) +# endif +# else +# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER) +# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER_UPDATE) + /* The third version component from --version is an update index, + but no macro is provided for it. */ +# define COMPILER_VERSION_PATCH DEC(0) +# endif +# if defined(__INTEL_COMPILER_BUILD_DATE) + /* __INTEL_COMPILER_BUILD_DATE = YYYYMMDD */ +# define COMPILER_VERSION_TWEAK DEC(__INTEL_COMPILER_BUILD_DATE) +# endif +# if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +# endif +# if defined(__GNUC__) +# define SIMULATE_VERSION_MAJOR DEC(__GNUC__) +# elif defined(__GNUG__) +# define SIMULATE_VERSION_MAJOR DEC(__GNUG__) +# endif +# if defined(__GNUC_MINOR__) +# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__) +# endif +# if defined(__GNUC_PATCHLEVEL__) +# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) +# endif + +#elif (defined(__clang__) && defined(__INTEL_CLANG_COMPILER)) || defined(__INTEL_LLVM_COMPILER) +# define COMPILER_ID "IntelLLVM" +#if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +#endif +#if defined(__GNUC__) +# define SIMULATE_ID "GNU" +#endif +/* __INTEL_LLVM_COMPILER = VVVVRP prior to 2021.2.0, VVVVRRPP for 2021.2.0 and + * later. Look for 6 digit vs. 8 digit version number to decide encoding. + * VVVV is no smaller than the current year when a version is released. + */ +#if __INTEL_LLVM_COMPILER < 1000000L +# define COMPILER_VERSION_MAJOR DEC(__INTEL_LLVM_COMPILER/100) +# define COMPILER_VERSION_MINOR DEC(__INTEL_LLVM_COMPILER/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__INTEL_LLVM_COMPILER % 10) +#else +# define COMPILER_VERSION_MAJOR DEC(__INTEL_LLVM_COMPILER/10000) +# define COMPILER_VERSION_MINOR DEC(__INTEL_LLVM_COMPILER/100 % 100) +# define COMPILER_VERSION_PATCH DEC(__INTEL_LLVM_COMPILER % 100) +#endif +#if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +#endif +#if defined(__GNUC__) +# define SIMULATE_VERSION_MAJOR DEC(__GNUC__) +#elif defined(__GNUG__) +# define SIMULATE_VERSION_MAJOR DEC(__GNUG__) +#endif +#if defined(__GNUC_MINOR__) +# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__) +#endif +#if defined(__GNUC_PATCHLEVEL__) +# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) +#endif + +#elif defined(__PATHCC__) +# define COMPILER_ID "PathScale" +# define COMPILER_VERSION_MAJOR DEC(__PATHCC__) +# define COMPILER_VERSION_MINOR DEC(__PATHCC_MINOR__) +# if defined(__PATHCC_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__PATHCC_PATCHLEVEL__) +# endif + +#elif defined(__BORLANDC__) && defined(__CODEGEARC_VERSION__) +# define COMPILER_ID "Embarcadero" +# define COMPILER_VERSION_MAJOR HEX(__CODEGEARC_VERSION__>>24 & 0x00FF) +# define COMPILER_VERSION_MINOR HEX(__CODEGEARC_VERSION__>>16 & 0x00FF) +# define COMPILER_VERSION_PATCH DEC(__CODEGEARC_VERSION__ & 0xFFFF) + +#elif defined(__BORLANDC__) +# define COMPILER_ID "Borland" + /* __BORLANDC__ = 0xVRR */ +# define COMPILER_VERSION_MAJOR HEX(__BORLANDC__>>8) +# define COMPILER_VERSION_MINOR HEX(__BORLANDC__ & 0xFF) + +#elif defined(__WATCOMC__) && __WATCOMC__ < 1200 +# define COMPILER_ID "Watcom" + /* __WATCOMC__ = VVRR */ +# define COMPILER_VERSION_MAJOR DEC(__WATCOMC__ / 100) +# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10) +# if (__WATCOMC__ % 10) > 0 +# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10) +# endif + +#elif defined(__WATCOMC__) +# define COMPILER_ID "OpenWatcom" + /* __WATCOMC__ = VVRP + 1100 */ +# define COMPILER_VERSION_MAJOR DEC((__WATCOMC__ - 1100) / 100) +# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10) +# if (__WATCOMC__ % 10) > 0 +# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10) +# endif + +#elif defined(__SUNPRO_CC) +# define COMPILER_ID "SunPro" +# if __SUNPRO_CC >= 0x5100 + /* __SUNPRO_CC = 0xVRRP */ +# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>12) +# define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xFF) +# define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC & 0xF) +# else + /* __SUNPRO_CC = 0xVRP */ +# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>8) +# define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xF) +# define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC & 0xF) +# endif + +#elif defined(__HP_aCC) +# define COMPILER_ID "HP" + /* __HP_aCC = VVRRPP */ +# define COMPILER_VERSION_MAJOR DEC(__HP_aCC/10000) +# define COMPILER_VERSION_MINOR DEC(__HP_aCC/100 % 100) +# define COMPILER_VERSION_PATCH DEC(__HP_aCC % 100) + +#elif defined(__DECCXX) +# define COMPILER_ID "Compaq" + /* __DECCXX_VER = VVRRTPPPP */ +# define COMPILER_VERSION_MAJOR DEC(__DECCXX_VER/10000000) +# define COMPILER_VERSION_MINOR DEC(__DECCXX_VER/100000 % 100) +# define COMPILER_VERSION_PATCH DEC(__DECCXX_VER % 10000) + +#elif defined(__IBMCPP__) && defined(__COMPILER_VER__) +# define COMPILER_ID "zOS" + /* __IBMCPP__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10) + +#elif defined(__ibmxl__) && defined(__clang__) +# define COMPILER_ID "XLClang" +# define COMPILER_VERSION_MAJOR DEC(__ibmxl_version__) +# define COMPILER_VERSION_MINOR DEC(__ibmxl_release__) +# define COMPILER_VERSION_PATCH DEC(__ibmxl_modification__) +# define COMPILER_VERSION_TWEAK DEC(__ibmxl_ptf_fix_level__) + + +#elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ >= 800 +# define COMPILER_ID "XL" + /* __IBMCPP__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10) + +#elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ < 800 +# define COMPILER_ID "VisualAge" + /* __IBMCPP__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10) + +#elif defined(__NVCOMPILER) +# define COMPILER_ID "NVHPC" +# define COMPILER_VERSION_MAJOR DEC(__NVCOMPILER_MAJOR__) +# define COMPILER_VERSION_MINOR DEC(__NVCOMPILER_MINOR__) +# if defined(__NVCOMPILER_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__NVCOMPILER_PATCHLEVEL__) +# endif + +#elif defined(__PGI) +# define COMPILER_ID "PGI" +# define COMPILER_VERSION_MAJOR DEC(__PGIC__) +# define COMPILER_VERSION_MINOR DEC(__PGIC_MINOR__) +# if defined(__PGIC_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__PGIC_PATCHLEVEL__) +# endif + +#elif defined(_CRAYC) +# define COMPILER_ID "Cray" +# define COMPILER_VERSION_MAJOR DEC(_RELEASE_MAJOR) +# define COMPILER_VERSION_MINOR DEC(_RELEASE_MINOR) + +#elif defined(__TI_COMPILER_VERSION__) +# define COMPILER_ID "TI" + /* __TI_COMPILER_VERSION__ = VVVRRRPPP */ +# define COMPILER_VERSION_MAJOR DEC(__TI_COMPILER_VERSION__/1000000) +# define COMPILER_VERSION_MINOR DEC(__TI_COMPILER_VERSION__/1000 % 1000) +# define COMPILER_VERSION_PATCH DEC(__TI_COMPILER_VERSION__ % 1000) + +#elif defined(__CLANG_FUJITSU) +# define COMPILER_ID "FujitsuClang" +# define COMPILER_VERSION_MAJOR DEC(__FCC_major__) +# define COMPILER_VERSION_MINOR DEC(__FCC_minor__) +# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__) +# define COMPILER_VERSION_INTERNAL_STR __clang_version__ + + +#elif defined(__FUJITSU) +# define COMPILER_ID "Fujitsu" +# if defined(__FCC_version__) +# define COMPILER_VERSION __FCC_version__ +# elif defined(__FCC_major__) +# define COMPILER_VERSION_MAJOR DEC(__FCC_major__) +# define COMPILER_VERSION_MINOR DEC(__FCC_minor__) +# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__) +# endif +# if defined(__fcc_version) +# define COMPILER_VERSION_INTERNAL DEC(__fcc_version) +# elif defined(__FCC_VERSION) +# define COMPILER_VERSION_INTERNAL DEC(__FCC_VERSION) +# endif + + +#elif defined(__ghs__) +# define COMPILER_ID "GHS" +/* __GHS_VERSION_NUMBER = VVVVRP */ +# ifdef __GHS_VERSION_NUMBER +# define COMPILER_VERSION_MAJOR DEC(__GHS_VERSION_NUMBER / 100) +# define COMPILER_VERSION_MINOR DEC(__GHS_VERSION_NUMBER / 10 % 10) +# define COMPILER_VERSION_PATCH DEC(__GHS_VERSION_NUMBER % 10) +# endif + +#elif defined(__SCO_VERSION__) +# define COMPILER_ID "SCO" + +#elif defined(__ARMCC_VERSION) && !defined(__clang__) +# define COMPILER_ID "ARMCC" +#if __ARMCC_VERSION >= 1000000 + /* __ARMCC_VERSION = VRRPPPP */ + # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/1000000) + # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 100) + # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000) +#else + /* __ARMCC_VERSION = VRPPPP */ + # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/100000) + # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 10) + # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000) +#endif + + +#elif defined(__clang__) && defined(__apple_build_version__) +# define COMPILER_ID "AppleClang" +# if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +# endif +# define COMPILER_VERSION_MAJOR DEC(__clang_major__) +# define COMPILER_VERSION_MINOR DEC(__clang_minor__) +# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__) +# if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +# endif +# define COMPILER_VERSION_TWEAK DEC(__apple_build_version__) + +#elif defined(__clang__) && defined(__ARMCOMPILER_VERSION) +# define COMPILER_ID "ARMClang" + # define COMPILER_VERSION_MAJOR DEC(__ARMCOMPILER_VERSION/1000000) + # define COMPILER_VERSION_MINOR DEC(__ARMCOMPILER_VERSION/10000 % 100) + # define COMPILER_VERSION_PATCH DEC(__ARMCOMPILER_VERSION % 10000) +# define COMPILER_VERSION_INTERNAL DEC(__ARMCOMPILER_VERSION) + +#elif defined(__clang__) +# define COMPILER_ID "Clang" +# if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +# endif +# define COMPILER_VERSION_MAJOR DEC(__clang_major__) +# define COMPILER_VERSION_MINOR DEC(__clang_minor__) +# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__) +# if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +# endif + +#elif defined(__GNUC__) || defined(__GNUG__) +# define COMPILER_ID "GNU" +# if defined(__GNUC__) +# define COMPILER_VERSION_MAJOR DEC(__GNUC__) +# else +# define COMPILER_VERSION_MAJOR DEC(__GNUG__) +# endif +# if defined(__GNUC_MINOR__) +# define COMPILER_VERSION_MINOR DEC(__GNUC_MINOR__) +# endif +# if defined(__GNUC_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) +# endif + +#elif defined(_MSC_VER) +# define COMPILER_ID "MSVC" + /* _MSC_VER = VVRR */ +# define COMPILER_VERSION_MAJOR DEC(_MSC_VER / 100) +# define COMPILER_VERSION_MINOR DEC(_MSC_VER % 100) +# if defined(_MSC_FULL_VER) +# if _MSC_VER >= 1400 + /* _MSC_FULL_VER = VVRRPPPPP */ +# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 100000) +# else + /* _MSC_FULL_VER = VVRRPPPP */ +# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 10000) +# endif +# endif +# if defined(_MSC_BUILD) +# define COMPILER_VERSION_TWEAK DEC(_MSC_BUILD) +# endif + +#elif defined(__VISUALDSPVERSION__) || defined(__ADSPBLACKFIN__) || defined(__ADSPTS__) || defined(__ADSP21000__) +# define COMPILER_ID "ADSP" +#if defined(__VISUALDSPVERSION__) + /* __VISUALDSPVERSION__ = 0xVVRRPP00 */ +# define COMPILER_VERSION_MAJOR HEX(__VISUALDSPVERSION__>>24) +# define COMPILER_VERSION_MINOR HEX(__VISUALDSPVERSION__>>16 & 0xFF) +# define COMPILER_VERSION_PATCH HEX(__VISUALDSPVERSION__>>8 & 0xFF) +#endif + +#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC) +# define COMPILER_ID "IAR" +# if defined(__VER__) && defined(__ICCARM__) +# define COMPILER_VERSION_MAJOR DEC((__VER__) / 1000000) +# define COMPILER_VERSION_MINOR DEC(((__VER__) / 1000) % 1000) +# define COMPILER_VERSION_PATCH DEC((__VER__) % 1000) +# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__) +# elif defined(__VER__) && (defined(__ICCAVR__) || defined(__ICCRX__) || defined(__ICCRH850__) || defined(__ICCRL78__) || defined(__ICC430__) || defined(__ICCRISCV__) || defined(__ICCV850__) || defined(__ICC8051__) || defined(__ICCSTM8__)) +# define COMPILER_VERSION_MAJOR DEC((__VER__) / 100) +# define COMPILER_VERSION_MINOR DEC((__VER__) - (((__VER__) / 100)*100)) +# define COMPILER_VERSION_PATCH DEC(__SUBVERSION__) +# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__) +# endif + + +/* These compilers are either not known or too old to define an + identification macro. Try to identify the platform and guess that + it is the native compiler. */ +#elif defined(__hpux) || defined(__hpua) +# define COMPILER_ID "HP" + +#else /* unknown compiler */ +# define COMPILER_ID "" +#endif + +/* Construct the string literal in pieces to prevent the source from + getting matched. Store it in a pointer rather than an array + because some compilers will just produce instructions to fill the + array rather than assigning a pointer to a static array. */ +char const* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]"; +#ifdef SIMULATE_ID +char const* info_simulate = "INFO" ":" "simulate[" SIMULATE_ID "]"; +#endif + +#ifdef __QNXNTO__ +char const* qnxnto = "INFO" ":" "qnxnto[]"; +#endif + +#if defined(__CRAYXT_COMPUTE_LINUX_TARGET) +char const *info_cray = "INFO" ":" "compiler_wrapper[CrayPrgEnv]"; +#endif + +#define STRINGIFY_HELPER(X) #X +#define STRINGIFY(X) STRINGIFY_HELPER(X) + +/* Identify known platforms by name. */ +#if defined(__linux) || defined(__linux__) || defined(linux) +# define PLATFORM_ID "Linux" + +#elif defined(__MSYS__) +# define PLATFORM_ID "MSYS" + +#elif defined(__CYGWIN__) +# define PLATFORM_ID "Cygwin" + +#elif defined(__MINGW32__) +# define PLATFORM_ID "MinGW" + +#elif defined(__APPLE__) +# define PLATFORM_ID "Darwin" + +#elif defined(_WIN32) || defined(__WIN32__) || defined(WIN32) +# define PLATFORM_ID "Windows" + +#elif defined(__FreeBSD__) || defined(__FreeBSD) +# define PLATFORM_ID "FreeBSD" + +#elif defined(__NetBSD__) || defined(__NetBSD) +# define PLATFORM_ID "NetBSD" + +#elif defined(__OpenBSD__) || defined(__OPENBSD) +# define PLATFORM_ID "OpenBSD" + +#elif defined(__sun) || defined(sun) +# define PLATFORM_ID "SunOS" + +#elif defined(_AIX) || defined(__AIX) || defined(__AIX__) || defined(__aix) || defined(__aix__) +# define PLATFORM_ID "AIX" + +#elif defined(__hpux) || defined(__hpux__) +# define PLATFORM_ID "HP-UX" + +#elif defined(__HAIKU__) +# define PLATFORM_ID "Haiku" + +#elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS) +# define PLATFORM_ID "BeOS" + +#elif defined(__QNX__) || defined(__QNXNTO__) +# define PLATFORM_ID "QNX" + +#elif defined(__tru64) || defined(_tru64) || defined(__TRU64__) +# define PLATFORM_ID "Tru64" + +#elif defined(__riscos) || defined(__riscos__) +# define PLATFORM_ID "RISCos" + +#elif defined(__sinix) || defined(__sinix__) || defined(__SINIX__) +# define PLATFORM_ID "SINIX" + +#elif defined(__UNIX_SV__) +# define PLATFORM_ID "UNIX_SV" + +#elif defined(__bsdos__) +# define PLATFORM_ID "BSDOS" + +#elif defined(_MPRAS) || defined(MPRAS) +# define PLATFORM_ID "MP-RAS" + +#elif defined(__osf) || defined(__osf__) +# define PLATFORM_ID "OSF1" + +#elif defined(_SCO_SV) || defined(SCO_SV) || defined(sco_sv) +# define PLATFORM_ID "SCO_SV" + +#elif defined(__ultrix) || defined(__ultrix__) || defined(_ULTRIX) +# define PLATFORM_ID "ULTRIX" + +#elif defined(__XENIX__) || defined(_XENIX) || defined(XENIX) +# define PLATFORM_ID "Xenix" + +#elif defined(__WATCOMC__) +# if defined(__LINUX__) +# define PLATFORM_ID "Linux" + +# elif defined(__DOS__) +# define PLATFORM_ID "DOS" + +# elif defined(__OS2__) +# define PLATFORM_ID "OS2" + +# elif defined(__WINDOWS__) +# define PLATFORM_ID "Windows3x" + +# elif defined(__VXWORKS__) +# define PLATFORM_ID "VxWorks" + +# else /* unknown platform */ +# define PLATFORM_ID +# endif + +#elif defined(__INTEGRITY) +# if defined(INT_178B) +# define PLATFORM_ID "Integrity178" + +# else /* regular Integrity */ +# define PLATFORM_ID "Integrity" +# endif + +#else /* unknown platform */ +# define PLATFORM_ID + +#endif + +/* For windows compilers MSVC and Intel we can determine + the architecture of the compiler being used. This is because + the compilers do not have flags that can change the architecture, + but rather depend on which compiler is being used +*/ +#if defined(_WIN32) && defined(_MSC_VER) +# if defined(_M_IA64) +# define ARCHITECTURE_ID "IA64" + +# elif defined(_M_ARM64EC) +# define ARCHITECTURE_ID "ARM64EC" + +# elif defined(_M_X64) || defined(_M_AMD64) +# define ARCHITECTURE_ID "x64" + +# elif defined(_M_IX86) +# define ARCHITECTURE_ID "X86" + +# elif defined(_M_ARM64) +# define ARCHITECTURE_ID "ARM64" + +# elif defined(_M_ARM) +# if _M_ARM == 4 +# define ARCHITECTURE_ID "ARMV4I" +# elif _M_ARM == 5 +# define ARCHITECTURE_ID "ARMV5I" +# else +# define ARCHITECTURE_ID "ARMV" STRINGIFY(_M_ARM) +# endif + +# elif defined(_M_MIPS) +# define ARCHITECTURE_ID "MIPS" + +# elif defined(_M_SH) +# define ARCHITECTURE_ID "SHx" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__WATCOMC__) +# if defined(_M_I86) +# define ARCHITECTURE_ID "I86" + +# elif defined(_M_IX86) +# define ARCHITECTURE_ID "X86" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC) +# if defined(__ICCARM__) +# define ARCHITECTURE_ID "ARM" + +# elif defined(__ICCRX__) +# define ARCHITECTURE_ID "RX" + +# elif defined(__ICCRH850__) +# define ARCHITECTURE_ID "RH850" + +# elif defined(__ICCRL78__) +# define ARCHITECTURE_ID "RL78" + +# elif defined(__ICCRISCV__) +# define ARCHITECTURE_ID "RISCV" + +# elif defined(__ICCAVR__) +# define ARCHITECTURE_ID "AVR" + +# elif defined(__ICC430__) +# define ARCHITECTURE_ID "MSP430" + +# elif defined(__ICCV850__) +# define ARCHITECTURE_ID "V850" + +# elif defined(__ICC8051__) +# define ARCHITECTURE_ID "8051" + +# elif defined(__ICCSTM8__) +# define ARCHITECTURE_ID "STM8" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__ghs__) +# if defined(__PPC64__) +# define ARCHITECTURE_ID "PPC64" + +# elif defined(__ppc__) +# define ARCHITECTURE_ID "PPC" + +# elif defined(__ARM__) +# define ARCHITECTURE_ID "ARM" + +# elif defined(__x86_64__) +# define ARCHITECTURE_ID "x64" + +# elif defined(__i386__) +# define ARCHITECTURE_ID "X86" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__TI_COMPILER_VERSION__) +# if defined(__TI_ARM__) +# define ARCHITECTURE_ID "ARM" + +# elif defined(__MSP430__) +# define ARCHITECTURE_ID "MSP430" + +# elif defined(__TMS320C28XX__) +# define ARCHITECTURE_ID "TMS320C28x" + +# elif defined(__TMS320C6X__) || defined(_TMS320C6X) +# define ARCHITECTURE_ID "TMS320C6x" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#else +# define ARCHITECTURE_ID +#endif + +/* Convert integer to decimal digit literals. */ +#define DEC(n) \ + ('0' + (((n) / 10000000)%10)), \ + ('0' + (((n) / 1000000)%10)), \ + ('0' + (((n) / 100000)%10)), \ + ('0' + (((n) / 10000)%10)), \ + ('0' + (((n) / 1000)%10)), \ + ('0' + (((n) / 100)%10)), \ + ('0' + (((n) / 10)%10)), \ + ('0' + ((n) % 10)) + +/* Convert integer to hex digit literals. */ +#define HEX(n) \ + ('0' + ((n)>>28 & 0xF)), \ + ('0' + ((n)>>24 & 0xF)), \ + ('0' + ((n)>>20 & 0xF)), \ + ('0' + ((n)>>16 & 0xF)), \ + ('0' + ((n)>>12 & 0xF)), \ + ('0' + ((n)>>8 & 0xF)), \ + ('0' + ((n)>>4 & 0xF)), \ + ('0' + ((n) & 0xF)) + +/* Construct a string literal encoding the version number. */ +#ifdef COMPILER_VERSION +char const* info_version = "INFO" ":" "compiler_version[" COMPILER_VERSION "]"; + +/* Construct a string literal encoding the version number components. */ +#elif defined(COMPILER_VERSION_MAJOR) +char const info_version[] = { + 'I', 'N', 'F', 'O', ':', + 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','[', + COMPILER_VERSION_MAJOR, +# ifdef COMPILER_VERSION_MINOR + '.', COMPILER_VERSION_MINOR, +# ifdef COMPILER_VERSION_PATCH + '.', COMPILER_VERSION_PATCH, +# ifdef COMPILER_VERSION_TWEAK + '.', COMPILER_VERSION_TWEAK, +# endif +# endif +# endif + ']','\0'}; +#endif + +/* Construct a string literal encoding the internal version number. */ +#ifdef COMPILER_VERSION_INTERNAL +char const info_version_internal[] = { + 'I', 'N', 'F', 'O', ':', + 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','_', + 'i','n','t','e','r','n','a','l','[', + COMPILER_VERSION_INTERNAL,']','\0'}; +#elif defined(COMPILER_VERSION_INTERNAL_STR) +char const* info_version_internal = "INFO" ":" "compiler_version_internal[" COMPILER_VERSION_INTERNAL_STR "]"; +#endif + +/* Construct a string literal encoding the version number components. */ +#ifdef SIMULATE_VERSION_MAJOR +char const info_simulate_version[] = { + 'I', 'N', 'F', 'O', ':', + 's','i','m','u','l','a','t','e','_','v','e','r','s','i','o','n','[', + SIMULATE_VERSION_MAJOR, +# ifdef SIMULATE_VERSION_MINOR + '.', SIMULATE_VERSION_MINOR, +# ifdef SIMULATE_VERSION_PATCH + '.', SIMULATE_VERSION_PATCH, +# ifdef SIMULATE_VERSION_TWEAK + '.', SIMULATE_VERSION_TWEAK, +# endif +# endif +# endif + ']','\0'}; +#endif + +/* Construct the string literal in pieces to prevent the source from + getting matched. Store it in a pointer rather than an array + because some compilers will just produce instructions to fill the + array rather than assigning a pointer to a static array. */ +char const* info_platform = "INFO" ":" "platform[" PLATFORM_ID "]"; +char const* info_arch = "INFO" ":" "arch[" ARCHITECTURE_ID "]"; + + + +#if defined(__INTEL_COMPILER) && defined(_MSVC_LANG) && _MSVC_LANG < 201403L +# if defined(__INTEL_CXX11_MODE__) +# if defined(__cpp_aggregate_nsdmi) +# define CXX_STD 201402L +# else +# define CXX_STD 201103L +# endif +# else +# define CXX_STD 199711L +# endif +#elif defined(_MSC_VER) && defined(_MSVC_LANG) +# define CXX_STD _MSVC_LANG +#else +# define CXX_STD __cplusplus +#endif + +const char* info_language_standard_default = "INFO" ":" "standard_default[" +#if CXX_STD > 202002L + "23" +#elif CXX_STD > 201703L + "20" +#elif CXX_STD >= 201703L + "17" +#elif CXX_STD >= 201402L + "14" +#elif CXX_STD >= 201103L + "11" +#else + "98" +#endif +"]"; + +const char* info_language_extensions_default = "INFO" ":" "extensions_default[" +/* !defined(_MSC_VER) to exclude Clang's MSVC compatibility mode. */ +#if (defined(__clang__) || defined(__GNUC__) || \ + defined(__TI_COMPILER_VERSION__)) && \ + !defined(__STRICT_ANSI__) && !defined(_MSC_VER) + "ON" +#else + "OFF" +#endif +"]"; + +/*--------------------------------------------------------------------------*/ + +int main(int argc, char* argv[]) +{ + int require = 0; + require += info_compiler[argc]; + require += info_platform[argc]; +#ifdef COMPILER_VERSION_MAJOR + require += info_version[argc]; +#endif +#ifdef COMPILER_VERSION_INTERNAL + require += info_version_internal[argc]; +#endif +#ifdef SIMULATE_ID + require += info_simulate[argc]; +#endif +#ifdef SIMULATE_VERSION_MAJOR + require += info_simulate_version[argc]; +#endif +#if defined(__CRAYXT_COMPUTE_LINUX_TARGET) + require += info_cray[argc]; +#endif + require += info_language_standard_default[argc]; + require += info_language_extensions_default[argc]; + (void)argv; + return require; +} diff --git a/src/main/cpp/jni/build/CMakeFiles/3.22.1/CompilerIdCXX/a.out b/src/main/cpp/jni/build/CMakeFiles/3.22.1/CompilerIdCXX/a.out new file mode 100755 index 0000000000000000000000000000000000000000..9fe81eee4abb75ec64309c98d682c547d65f12bc GIT binary patch literal 16096 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 literal 0 HcmV?d00001 diff --git a/src/main/cpp/jni/build/CMakeFiles/CMakeDirectoryInformation.cmake b/src/main/cpp/jni/build/CMakeFiles/CMakeDirectoryInformation.cmake new file mode 100644 index 00000000000..b9b869f5a2e --- /dev/null +++ b/src/main/cpp/jni/build/CMakeFiles/CMakeDirectoryInformation.cmake @@ -0,0 +1,16 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# Relative path conversion top directories. +set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/home/rene/projects/systemds/src/main/cpp/jni") +set(CMAKE_RELATIVE_PATH_TOP_BINARY "/home/rene/projects/systemds/src/main/cpp/jni/build") + +# Force unix paths in dependencies. +set(CMAKE_FORCE_UNIX_PATHS 1) + + +# The C and CXX include file regular expressions for this directory. +set(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$") +set(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$") +set(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN}) +set(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN}) diff --git a/src/main/cpp/jni/build/CMakeFiles/CMakeOutput.log b/src/main/cpp/jni/build/CMakeFiles/CMakeOutput.log new file mode 100644 index 00000000000..9b8a4662856 --- /dev/null +++ b/src/main/cpp/jni/build/CMakeFiles/CMakeOutput.log @@ -0,0 +1,278 @@ +The system is: Linux - 6.8.0-65-generic - x86_64 +Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" succeeded. +Compiler: /usr/bin/c++ +Build flags: +Id flags: + +The output was: +0 + + +Compilation of the CXX compiler identification source "CMakeCXXCompilerId.cpp" produced "a.out" + +The CXX compiler identification is GNU, found in "/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/3.22.1/CompilerIdCXX/a.out" + +Detecting CXX compiler ABI info compiled with the following output: +Change Dir: /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/CMakeTmp + +Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_da38c/fast && /usr/bin/gmake -f CMakeFiles/cmTC_da38c.dir/build.make CMakeFiles/cmTC_da38c.dir/build +gmake[1]: Entering directory '/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/CMakeTmp' +Building CXX object CMakeFiles/cmTC_da38c.dir/CMakeCXXCompilerABI.cpp.o +/usr/bin/c++ -v -o CMakeFiles/cmTC_da38c.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake-3.22/Modules/CMakeCXXCompilerABI.cpp +Using built-in specs. +COLLECT_GCC=/usr/bin/c++ +OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa +OFFLOAD_TARGET_DEFAULT=1 +Target: x86_64-linux-gnu +Configured with: ../src/configure -v --with-pkgversion='Ubuntu 12.3.0-1ubuntu1~22.04.2' --with-bugurl=file:///usr/share/doc/gcc-12/README.Bugs --enable-languages=c,ada,c++,go,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-12 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-12-dNWB6h/gcc-12-12.3.0/debian/tmp-nvptx/usr,amdgcn-amdhsa=/build/gcc-12-dNWB6h/gcc-12-12.3.0/debian/tmp-gcn/usr --enable-offload-defaulted --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu +Thread model: posix +Supported LTO compression algorithms: zlib zstd +gcc version 12.3.0 (Ubuntu 12.3.0-1ubuntu1~22.04.2) +COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_da38c.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_da38c.dir/' + /usr/lib/gcc/x86_64-linux-gnu/12/cc1plus -quiet -v -imultiarch x86_64-linux-gnu -D_GNU_SOURCE /usr/share/cmake-3.22/Modules/CMakeCXXCompilerABI.cpp -quiet -dumpdir CMakeFiles/cmTC_da38c.dir/ -dumpbase CMakeCXXCompilerABI.cpp.cpp -dumpbase-ext .cpp -mtune=generic -march=x86-64 -version -fasynchronous-unwind-tables -fstack-protector-strong -Wformat -Wformat-security -fstack-clash-protection -fcf-protection -o /tmp/ccjQGxGf.s +GNU C++17 (Ubuntu 12.3.0-1ubuntu1~22.04.2) version 12.3.0 (x86_64-linux-gnu) + compiled by GNU C version 12.3.0, GMP version 6.2.1, MPFR version 4.1.0, MPC version 1.2.1, isl version isl-0.24-GMP + +GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 +ignoring duplicate directory "/usr/include/x86_64-linux-gnu/c++/12" +ignoring nonexistent directory "/usr/local/include/x86_64-linux-gnu" +ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/12/include-fixed" +ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/12/../../../../x86_64-linux-gnu/include" +#include "..." search starts here: +#include <...> search starts here: + /usr/include/c++/12 + /usr/include/x86_64-linux-gnu/c++/12 + /usr/include/c++/12/backward + /usr/lib/gcc/x86_64-linux-gnu/12/include + /usr/local/include + /usr/include/x86_64-linux-gnu + /usr/include +End of search list. +GNU C++17 (Ubuntu 12.3.0-1ubuntu1~22.04.2) version 12.3.0 (x86_64-linux-gnu) + compiled by GNU C version 12.3.0, GMP version 6.2.1, MPFR version 4.1.0, MPC version 1.2.1, isl version isl-0.24-GMP + +GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 +Compiler executable checksum: 0d370165627a7e26039599c56dc32a7a +COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_da38c.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_da38c.dir/' + as -v --64 -o CMakeFiles/cmTC_da38c.dir/CMakeCXXCompilerABI.cpp.o /tmp/ccjQGxGf.s +GNU assembler version 2.38 (x86_64-linux-gnu) using BFD version (GNU Binutils for Ubuntu) 2.38 +COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/ +LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../:/lib/:/usr/lib/ +COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_da38c.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_da38c.dir/CMakeCXXCompilerABI.cpp.' +Linking CXX executable cmTC_da38c +/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_da38c.dir/link.txt --verbose=1 +/usr/bin/c++ -v CMakeFiles/cmTC_da38c.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_da38c +Using built-in specs. +COLLECT_GCC=/usr/bin/c++ +COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/12/lto-wrapper +OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa +OFFLOAD_TARGET_DEFAULT=1 +Target: x86_64-linux-gnu +Configured with: ../src/configure -v --with-pkgversion='Ubuntu 12.3.0-1ubuntu1~22.04.2' --with-bugurl=file:///usr/share/doc/gcc-12/README.Bugs --enable-languages=c,ada,c++,go,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-12 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-12-dNWB6h/gcc-12-12.3.0/debian/tmp-nvptx/usr,amdgcn-amdhsa=/build/gcc-12-dNWB6h/gcc-12-12.3.0/debian/tmp-gcn/usr --enable-offload-defaulted --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu +Thread model: posix +Supported LTO compression algorithms: zlib zstd +gcc version 12.3.0 (Ubuntu 12.3.0-1ubuntu1~22.04.2) +COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/ +LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../:/lib/:/usr/lib/ +COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_da38c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_da38c.' + /usr/lib/gcc/x86_64-linux-gnu/12/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/12/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/12/lto-wrapper -plugin-opt=-fresolution=/tmp/cc1ZUDVx.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -z now -z relro -o cmTC_da38c /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/12/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/12 -L/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/12/../../.. CMakeFiles/cmTC_da38c.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-linux-gnu/12/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crtn.o +COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_da38c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_da38c.' +gmake[1]: Leaving directory '/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/CMakeTmp' + + + +Parsed CXX implicit include dir info from above output: rv=done + found start of include info + found start of implicit include info + add: [/usr/include/c++/12] + add: [/usr/include/x86_64-linux-gnu/c++/12] + add: [/usr/include/c++/12/backward] + add: [/usr/lib/gcc/x86_64-linux-gnu/12/include] + add: [/usr/local/include] + add: [/usr/include/x86_64-linux-gnu] + add: [/usr/include] + end of search list found + collapse include dir [/usr/include/c++/12] ==> [/usr/include/c++/12] + collapse include dir [/usr/include/x86_64-linux-gnu/c++/12] ==> [/usr/include/x86_64-linux-gnu/c++/12] + collapse include dir [/usr/include/c++/12/backward] ==> [/usr/include/c++/12/backward] + collapse include dir [/usr/lib/gcc/x86_64-linux-gnu/12/include] ==> [/usr/lib/gcc/x86_64-linux-gnu/12/include] + collapse include dir [/usr/local/include] ==> [/usr/local/include] + collapse include dir [/usr/include/x86_64-linux-gnu] ==> [/usr/include/x86_64-linux-gnu] + collapse include dir [/usr/include] ==> [/usr/include] + implicit include dirs: [/usr/include/c++/12;/usr/include/x86_64-linux-gnu/c++/12;/usr/include/c++/12/backward;/usr/lib/gcc/x86_64-linux-gnu/12/include;/usr/local/include;/usr/include/x86_64-linux-gnu;/usr/include] + + +Parsed CXX implicit link information from above output: + link line regex: [^( *|.*[/\])(ld|CMAKE_LINK_STARTFILE-NOTFOUND|([^/\]+-)?ld|collect2)[^/\]*( |$)] + ignore line: [Change Dir: /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/CMakeTmp] + ignore line: [] + ignore line: [Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_da38c/fast && /usr/bin/gmake -f CMakeFiles/cmTC_da38c.dir/build.make CMakeFiles/cmTC_da38c.dir/build] + ignore line: [gmake[1]: Entering directory '/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/CMakeTmp'] + ignore line: [Building CXX object CMakeFiles/cmTC_da38c.dir/CMakeCXXCompilerABI.cpp.o] + ignore line: [/usr/bin/c++ -v -o CMakeFiles/cmTC_da38c.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake-3.22/Modules/CMakeCXXCompilerABI.cpp] + ignore line: [Using built-in specs.] + ignore line: [COLLECT_GCC=/usr/bin/c++] + ignore line: [OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa] + ignore line: [OFFLOAD_TARGET_DEFAULT=1] + ignore line: [Target: x86_64-linux-gnu] + ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 12.3.0-1ubuntu1~22.04.2' --with-bugurl=file:///usr/share/doc/gcc-12/README.Bugs --enable-languages=c ada c++ go d fortran objc obj-c++ m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-12 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32 m64 mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-12-dNWB6h/gcc-12-12.3.0/debian/tmp-nvptx/usr amdgcn-amdhsa=/build/gcc-12-dNWB6h/gcc-12-12.3.0/debian/tmp-gcn/usr --enable-offload-defaulted --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu] + ignore line: [Thread model: posix] + ignore line: [Supported LTO compression algorithms: zlib zstd] + ignore line: [gcc version 12.3.0 (Ubuntu 12.3.0-1ubuntu1~22.04.2) ] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_da38c.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_da38c.dir/'] + ignore line: [ /usr/lib/gcc/x86_64-linux-gnu/12/cc1plus -quiet -v -imultiarch x86_64-linux-gnu -D_GNU_SOURCE /usr/share/cmake-3.22/Modules/CMakeCXXCompilerABI.cpp -quiet -dumpdir CMakeFiles/cmTC_da38c.dir/ -dumpbase CMakeCXXCompilerABI.cpp.cpp -dumpbase-ext .cpp -mtune=generic -march=x86-64 -version -fasynchronous-unwind-tables -fstack-protector-strong -Wformat -Wformat-security -fstack-clash-protection -fcf-protection -o /tmp/ccjQGxGf.s] + ignore line: [GNU C++17 (Ubuntu 12.3.0-1ubuntu1~22.04.2) version 12.3.0 (x86_64-linux-gnu)] + ignore line: [ compiled by GNU C version 12.3.0 GMP version 6.2.1 MPFR version 4.1.0 MPC version 1.2.1 isl version isl-0.24-GMP] + ignore line: [] + ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072] + ignore line: [ignoring duplicate directory "/usr/include/x86_64-linux-gnu/c++/12"] + ignore line: [ignoring nonexistent directory "/usr/local/include/x86_64-linux-gnu"] + ignore line: [ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/12/include-fixed"] + ignore line: [ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/12/../../../../x86_64-linux-gnu/include"] + ignore line: [#include "..." search starts here:] + ignore line: [#include <...> search starts here:] + ignore line: [ /usr/include/c++/12] + ignore line: [ /usr/include/x86_64-linux-gnu/c++/12] + ignore line: [ /usr/include/c++/12/backward] + ignore line: [ /usr/lib/gcc/x86_64-linux-gnu/12/include] + ignore line: [ /usr/local/include] + ignore line: [ /usr/include/x86_64-linux-gnu] + ignore line: [ /usr/include] + ignore line: [End of search list.] + ignore line: [GNU C++17 (Ubuntu 12.3.0-1ubuntu1~22.04.2) version 12.3.0 (x86_64-linux-gnu)] + ignore line: [ compiled by GNU C version 12.3.0 GMP version 6.2.1 MPFR version 4.1.0 MPC version 1.2.1 isl version isl-0.24-GMP] + ignore line: [] + ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072] + ignore line: [Compiler executable checksum: 0d370165627a7e26039599c56dc32a7a] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_da38c.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_da38c.dir/'] + ignore line: [ as -v --64 -o CMakeFiles/cmTC_da38c.dir/CMakeCXXCompilerABI.cpp.o /tmp/ccjQGxGf.s] + ignore line: [GNU assembler version 2.38 (x86_64-linux-gnu) using BFD version (GNU Binutils for Ubuntu) 2.38] + ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/] + ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../:/lib/:/usr/lib/] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_da38c.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_da38c.dir/CMakeCXXCompilerABI.cpp.'] + ignore line: [Linking CXX executable cmTC_da38c] + ignore line: [/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_da38c.dir/link.txt --verbose=1] + ignore line: [/usr/bin/c++ -v CMakeFiles/cmTC_da38c.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_da38c ] + ignore line: [Using built-in specs.] + ignore line: [COLLECT_GCC=/usr/bin/c++] + ignore line: [COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/12/lto-wrapper] + ignore line: [OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa] + ignore line: [OFFLOAD_TARGET_DEFAULT=1] + ignore line: [Target: x86_64-linux-gnu] + ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 12.3.0-1ubuntu1~22.04.2' --with-bugurl=file:///usr/share/doc/gcc-12/README.Bugs --enable-languages=c ada c++ go d fortran objc obj-c++ m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-12 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32 m64 mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-12-dNWB6h/gcc-12-12.3.0/debian/tmp-nvptx/usr amdgcn-amdhsa=/build/gcc-12-dNWB6h/gcc-12-12.3.0/debian/tmp-gcn/usr --enable-offload-defaulted --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu] + ignore line: [Thread model: posix] + ignore line: [Supported LTO compression algorithms: zlib zstd] + ignore line: [gcc version 12.3.0 (Ubuntu 12.3.0-1ubuntu1~22.04.2) ] + ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/] + ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../:/lib/:/usr/lib/] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_da38c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_da38c.'] + link line: [ /usr/lib/gcc/x86_64-linux-gnu/12/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/12/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/12/lto-wrapper -plugin-opt=-fresolution=/tmp/cc1ZUDVx.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -z now -z relro -o cmTC_da38c /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/12/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/12 -L/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/12/../../.. CMakeFiles/cmTC_da38c.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-linux-gnu/12/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crtn.o] + arg [/usr/lib/gcc/x86_64-linux-gnu/12/collect2] ==> ignore + arg [-plugin] ==> ignore + arg [/usr/lib/gcc/x86_64-linux-gnu/12/liblto_plugin.so] ==> ignore + arg [-plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/12/lto-wrapper] ==> ignore + arg [-plugin-opt=-fresolution=/tmp/cc1ZUDVx.res] ==> ignore + arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore + arg [-plugin-opt=-pass-through=-lgcc] ==> ignore + arg [-plugin-opt=-pass-through=-lc] ==> ignore + arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore + arg [-plugin-opt=-pass-through=-lgcc] ==> ignore + arg [--build-id] ==> ignore + arg [--eh-frame-hdr] ==> ignore + arg [-m] ==> ignore + arg [elf_x86_64] ==> ignore + arg [--hash-style=gnu] ==> ignore + arg [--as-needed] ==> ignore + arg [-dynamic-linker] ==> ignore + arg [/lib64/ld-linux-x86-64.so.2] ==> ignore + arg [-pie] ==> ignore + arg [-znow] ==> ignore + arg [-zrelro] ==> ignore + arg [-o] ==> ignore + arg [cmTC_da38c] ==> ignore + arg [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/Scrt1.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/Scrt1.o] + arg [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crti.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crti.o] + arg [/usr/lib/gcc/x86_64-linux-gnu/12/crtbeginS.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/12/crtbeginS.o] + arg [-L/usr/lib/gcc/x86_64-linux-gnu/12] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/12] + arg [-L/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu] + arg [-L/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib] + arg [-L/lib/x86_64-linux-gnu] ==> dir [/lib/x86_64-linux-gnu] + arg [-L/lib/../lib] ==> dir [/lib/../lib] + arg [-L/usr/lib/x86_64-linux-gnu] ==> dir [/usr/lib/x86_64-linux-gnu] + arg [-L/usr/lib/../lib] ==> dir [/usr/lib/../lib] + arg [-L/usr/lib/gcc/x86_64-linux-gnu/12/../../..] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/12/../../..] + arg [CMakeFiles/cmTC_da38c.dir/CMakeCXXCompilerABI.cpp.o] ==> ignore + arg [-lstdc++] ==> lib [stdc++] + arg [-lm] ==> lib [m] + arg [-lgcc_s] ==> lib [gcc_s] + arg [-lgcc] ==> lib [gcc] + arg [-lc] ==> lib [c] + arg [-lgcc_s] ==> lib [gcc_s] + arg [-lgcc] ==> lib [gcc] + arg [/usr/lib/gcc/x86_64-linux-gnu/12/crtendS.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/12/crtendS.o] + arg [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crtn.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crtn.o] + collapse obj [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/Scrt1.o] ==> [/usr/lib/x86_64-linux-gnu/Scrt1.o] + collapse obj [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crti.o] ==> [/usr/lib/x86_64-linux-gnu/crti.o] + collapse obj [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crtn.o] ==> [/usr/lib/x86_64-linux-gnu/crtn.o] + collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/12] ==> [/usr/lib/gcc/x86_64-linux-gnu/12] + collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu] + collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib] ==> [/usr/lib] + collapse library dir [/lib/x86_64-linux-gnu] ==> [/lib/x86_64-linux-gnu] + collapse library dir [/lib/../lib] ==> [/lib] + collapse library dir [/usr/lib/x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu] + collapse library dir [/usr/lib/../lib] ==> [/usr/lib] + collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/12/../../..] ==> [/usr/lib] + implicit libs: [stdc++;m;gcc_s;gcc;c;gcc_s;gcc] + implicit objs: [/usr/lib/x86_64-linux-gnu/Scrt1.o;/usr/lib/x86_64-linux-gnu/crti.o;/usr/lib/gcc/x86_64-linux-gnu/12/crtbeginS.o;/usr/lib/gcc/x86_64-linux-gnu/12/crtendS.o;/usr/lib/x86_64-linux-gnu/crtn.o] + implicit dirs: [/usr/lib/gcc/x86_64-linux-gnu/12;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib] + implicit fwks: [] + + +Determining if the include file pthread.h exists passed with the following output: +Change Dir: /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/CMakeTmp + +Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_9cfd3/fast && /usr/bin/gmake -f CMakeFiles/cmTC_9cfd3.dir/build.make CMakeFiles/cmTC_9cfd3.dir/build +gmake[1]: Entering directory '/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/CMakeTmp' +Building CXX object CMakeFiles/cmTC_9cfd3.dir/CheckIncludeFile.cxx.o +/usr/bin/c++ -o CMakeFiles/cmTC_9cfd3.dir/CheckIncludeFile.cxx.o -c /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/CMakeTmp/CheckIncludeFile.cxx +Linking CXX executable cmTC_9cfd3 +/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_9cfd3.dir/link.txt --verbose=1 +/usr/bin/c++ CMakeFiles/cmTC_9cfd3.dir/CheckIncludeFile.cxx.o -o cmTC_9cfd3 +gmake[1]: Leaving directory '/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/CMakeTmp' + + + +Performing C++ SOURCE FILE Test CMAKE_HAVE_LIBC_PTHREAD succeeded with the following output: +Change Dir: /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/CMakeTmp + +Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_991e3/fast && /usr/bin/gmake -f CMakeFiles/cmTC_991e3.dir/build.make CMakeFiles/cmTC_991e3.dir/build +gmake[1]: Entering directory '/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/CMakeTmp' +Building CXX object CMakeFiles/cmTC_991e3.dir/src.cxx.o +/usr/bin/c++ -DCMAKE_HAVE_LIBC_PTHREAD -o CMakeFiles/cmTC_991e3.dir/src.cxx.o -c /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/CMakeTmp/src.cxx +Linking CXX executable cmTC_991e3 +/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_991e3.dir/link.txt --verbose=1 +/usr/bin/c++ CMakeFiles/cmTC_991e3.dir/src.cxx.o -o cmTC_991e3 +gmake[1]: Leaving directory '/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/CMakeTmp' + + +Source file was: +#include + +static void* test_func(void* data) +{ + return data; +} + +int main(void) +{ + pthread_t thread; + pthread_create(&thread, NULL, test_func, NULL); + pthread_detach(thread); + pthread_cancel(thread); + pthread_join(thread, NULL); + pthread_atfork(NULL, NULL, NULL); + pthread_exit(NULL); + + return 0; +} + diff --git a/src/main/cpp/jni/build/CMakeFiles/Makefile.cmake b/src/main/cpp/jni/build/CMakeFiles/Makefile.cmake new file mode 100644 index 00000000000..3cdca206cfc --- /dev/null +++ b/src/main/cpp/jni/build/CMakeFiles/Makefile.cmake @@ -0,0 +1,58 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# The generator used is: +set(CMAKE_DEPENDS_GENERATOR "Unix Makefiles") + +# The top level Makefile was generated from the following files: +set(CMAKE_MAKEFILE_DEPENDS + "CMakeCache.txt" + "../CMakeLists.txt" + "CMakeFiles/3.22.1/CMakeCXXCompiler.cmake" + "CMakeFiles/3.22.1/CMakeSystem.cmake" + "../common/CMakeLists.txt" + "../runtime/CMakeLists.txt" + "/usr/share/cmake-3.22/Modules/CMakeCXXInformation.cmake" + "/usr/share/cmake-3.22/Modules/CMakeCommonLanguageInclude.cmake" + "/usr/share/cmake-3.22/Modules/CMakeFindJavaCommon.cmake" + "/usr/share/cmake-3.22/Modules/CMakeGenericSystem.cmake" + "/usr/share/cmake-3.22/Modules/CMakeInitializeConfigs.cmake" + "/usr/share/cmake-3.22/Modules/CMakeLanguageInformation.cmake" + "/usr/share/cmake-3.22/Modules/CMakeSystemSpecificInformation.cmake" + "/usr/share/cmake-3.22/Modules/CMakeSystemSpecificInitialize.cmake" + "/usr/share/cmake-3.22/Modules/CheckCXXSourceCompiles.cmake" + "/usr/share/cmake-3.22/Modules/CheckIncludeFileCXX.cmake" + "/usr/share/cmake-3.22/Modules/CheckLibraryExists.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/CMakeCommonCompilerMacros.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/GNU-CXX.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/GNU.cmake" + "/usr/share/cmake-3.22/Modules/FindCUDAToolkit.cmake" + "/usr/share/cmake-3.22/Modules/FindJNI.cmake" + "/usr/share/cmake-3.22/Modules/FindPackageHandleStandardArgs.cmake" + "/usr/share/cmake-3.22/Modules/FindPackageMessage.cmake" + "/usr/share/cmake-3.22/Modules/FindThreads.cmake" + "/usr/share/cmake-3.22/Modules/Internal/CheckSourceCompiles.cmake" + "/usr/share/cmake-3.22/Modules/Platform/Linux-GNU-CXX.cmake" + "/usr/share/cmake-3.22/Modules/Platform/Linux-GNU.cmake" + "/usr/share/cmake-3.22/Modules/Platform/Linux.cmake" + "/usr/share/cmake-3.22/Modules/Platform/UnixPaths.cmake" + ) + +# The corresponding makefile is: +set(CMAKE_MAKEFILE_OUTPUTS + "Makefile" + "CMakeFiles/cmake.check_cache" + ) + +# Byproducts of CMake generate step: +set(CMAKE_MAKEFILE_PRODUCTS + "CMakeFiles/CMakeDirectoryInformation.cmake" + "common/CMakeFiles/CMakeDirectoryInformation.cmake" + "runtime/CMakeFiles/CMakeDirectoryInformation.cmake" + ) + +# Dependency information for all targets: +set(CMAKE_DEPEND_INFO_FILES + "common/CMakeFiles/CuJavaCommonJNI.dir/DependInfo.cmake" + "runtime/CMakeFiles/CuJavaRuntime.dir/DependInfo.cmake" + ) diff --git a/src/main/cpp/jni/build/CMakeFiles/Makefile2 b/src/main/cpp/jni/build/CMakeFiles/Makefile2 new file mode 100644 index 00000000000..17a479e4850 --- /dev/null +++ b/src/main/cpp/jni/build/CMakeFiles/Makefile2 @@ -0,0 +1,171 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# Default target executed when no arguments are given to make. +default_target: all +.PHONY : default_target + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + +# Disable VCS-based implicit rules. +% : %,v + +# Disable VCS-based implicit rules. +% : RCS/% + +# Disable VCS-based implicit rules. +% : RCS/%,v + +# Disable VCS-based implicit rules. +% : SCCS/s.% + +# Disable VCS-based implicit rules. +% : s.% + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /usr/bin/cmake + +# The command to remove a file. +RM = /usr/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /home/rene/projects/systemds/src/main/cpp/jni + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /home/rene/projects/systemds/src/main/cpp/jni/build + +#============================================================================= +# Directory level rules for the build root directory + +# The main recursive "all" target. +all: common/all +all: runtime/all +.PHONY : all + +# The main recursive "preinstall" target. +preinstall: common/preinstall +preinstall: runtime/preinstall +.PHONY : preinstall + +# The main recursive "clean" target. +clean: common/clean +clean: runtime/clean +.PHONY : clean + +#============================================================================= +# Directory level rules for directory common + +# Recursive "all" directory target. +common/all: common/CMakeFiles/CuJavaCommonJNI.dir/all +.PHONY : common/all + +# Recursive "preinstall" directory target. +common/preinstall: +.PHONY : common/preinstall + +# Recursive "clean" directory target. +common/clean: common/CMakeFiles/CuJavaCommonJNI.dir/clean +.PHONY : common/clean + +#============================================================================= +# Directory level rules for directory runtime + +# Recursive "all" directory target. +runtime/all: runtime/CMakeFiles/CuJavaRuntime.dir/all +.PHONY : runtime/all + +# Recursive "preinstall" directory target. +runtime/preinstall: +.PHONY : runtime/preinstall + +# Recursive "clean" directory target. +runtime/clean: runtime/CMakeFiles/CuJavaRuntime.dir/clean +.PHONY : runtime/clean + +#============================================================================= +# Target rules for target common/CMakeFiles/CuJavaCommonJNI.dir + +# All Build rule for target. +common/CMakeFiles/CuJavaCommonJNI.dir/all: + $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/depend + $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles --progress-num=1,2,3,4 "Built target CuJavaCommonJNI" +.PHONY : common/CMakeFiles/CuJavaCommonJNI.dir/all + +# Build rule for subdir invocation for target. +common/CMakeFiles/CuJavaCommonJNI.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles 4 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 common/CMakeFiles/CuJavaCommonJNI.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles 0 +.PHONY : common/CMakeFiles/CuJavaCommonJNI.dir/rule + +# Convenience name for target. +CuJavaCommonJNI: common/CMakeFiles/CuJavaCommonJNI.dir/rule +.PHONY : CuJavaCommonJNI + +# clean rule for target. +common/CMakeFiles/CuJavaCommonJNI.dir/clean: + $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/clean +.PHONY : common/CMakeFiles/CuJavaCommonJNI.dir/clean + +#============================================================================= +# Target rules for target runtime/CMakeFiles/CuJavaRuntime.dir + +# All Build rule for target. +runtime/CMakeFiles/CuJavaRuntime.dir/all: common/CMakeFiles/CuJavaCommonJNI.dir/all + $(MAKE) $(MAKESILENT) -f runtime/CMakeFiles/CuJavaRuntime.dir/build.make runtime/CMakeFiles/CuJavaRuntime.dir/depend + $(MAKE) $(MAKESILENT) -f runtime/CMakeFiles/CuJavaRuntime.dir/build.make runtime/CMakeFiles/CuJavaRuntime.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles --progress-num=5,6 "Built target CuJavaRuntime" +.PHONY : runtime/CMakeFiles/CuJavaRuntime.dir/all + +# Build rule for subdir invocation for target. +runtime/CMakeFiles/CuJavaRuntime.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles 6 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 runtime/CMakeFiles/CuJavaRuntime.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles 0 +.PHONY : runtime/CMakeFiles/CuJavaRuntime.dir/rule + +# Convenience name for target. +CuJavaRuntime: runtime/CMakeFiles/CuJavaRuntime.dir/rule +.PHONY : CuJavaRuntime + +# clean rule for target. +runtime/CMakeFiles/CuJavaRuntime.dir/clean: + $(MAKE) $(MAKESILENT) -f runtime/CMakeFiles/CuJavaRuntime.dir/build.make runtime/CMakeFiles/CuJavaRuntime.dir/clean +.PHONY : runtime/CMakeFiles/CuJavaRuntime.dir/clean + +#============================================================================= +# Special targets to cleanup operation of make. + +# Special rule to run CMake to check the build system integrity. +# No rule that depends on this can have commands that come from listfiles +# because they might be regenerated. +cmake_check_build_system: + $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 +.PHONY : cmake_check_build_system + diff --git a/src/main/cpp/jni/build/CMakeFiles/TargetDirectories.txt b/src/main/cpp/jni/build/CMakeFiles/TargetDirectories.txt new file mode 100644 index 00000000000..6185453e56e --- /dev/null +++ b/src/main/cpp/jni/build/CMakeFiles/TargetDirectories.txt @@ -0,0 +1,8 @@ +/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/edit_cache.dir +/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/rebuild_cache.dir +/home/rene/projects/systemds/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir +/home/rene/projects/systemds/src/main/cpp/jni/build/common/CMakeFiles/edit_cache.dir +/home/rene/projects/systemds/src/main/cpp/jni/build/common/CMakeFiles/rebuild_cache.dir +/home/rene/projects/systemds/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir +/home/rene/projects/systemds/src/main/cpp/jni/build/runtime/CMakeFiles/edit_cache.dir +/home/rene/projects/systemds/src/main/cpp/jni/build/runtime/CMakeFiles/rebuild_cache.dir diff --git a/src/main/cpp/jni/build/CMakeFiles/cmake.check_cache b/src/main/cpp/jni/build/CMakeFiles/cmake.check_cache new file mode 100644 index 00000000000..3dccd731726 --- /dev/null +++ b/src/main/cpp/jni/build/CMakeFiles/cmake.check_cache @@ -0,0 +1 @@ +# This file is generated by cmake for dependency checking of the CMakeCache.txt file diff --git a/src/main/cpp/jni/build/CMakeFiles/progress.marks b/src/main/cpp/jni/build/CMakeFiles/progress.marks new file mode 100644 index 00000000000..1e8b3149621 --- /dev/null +++ b/src/main/cpp/jni/build/CMakeFiles/progress.marks @@ -0,0 +1 @@ +6 diff --git a/src/main/cpp/jni/build/Makefile b/src/main/cpp/jni/build/Makefile new file mode 100644 index 00000000000..e66405c1138 --- /dev/null +++ b/src/main/cpp/jni/build/Makefile @@ -0,0 +1,168 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# Default target executed when no arguments are given to make. +default_target: all +.PHONY : default_target + +# Allow only one "make -f Makefile2" at a time, but pass parallelism. +.NOTPARALLEL: + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + +# Disable VCS-based implicit rules. +% : %,v + +# Disable VCS-based implicit rules. +% : RCS/% + +# Disable VCS-based implicit rules. +% : RCS/%,v + +# Disable VCS-based implicit rules. +% : SCCS/s.% + +# Disable VCS-based implicit rules. +% : s.% + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /usr/bin/cmake + +# The command to remove a file. +RM = /usr/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /home/rene/projects/systemds/src/main/cpp/jni + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /home/rene/projects/systemds/src/main/cpp/jni/build + +#============================================================================= +# Targets provided globally by CMake. + +# Special rule for the target edit_cache +edit_cache: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "No interactive CMake dialog available..." + /usr/bin/cmake -E echo No\ interactive\ CMake\ dialog\ available. +.PHONY : edit_cache + +# Special rule for the target edit_cache +edit_cache/fast: edit_cache +.PHONY : edit_cache/fast + +# Special rule for the target rebuild_cache +rebuild_cache: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..." + /usr/bin/cmake --regenerate-during-build -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) +.PHONY : rebuild_cache + +# Special rule for the target rebuild_cache +rebuild_cache/fast: rebuild_cache +.PHONY : rebuild_cache/fast + +# The main all target +all: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles /home/rene/projects/systemds/src/main/cpp/jni/build//CMakeFiles/progress.marks + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 all + $(CMAKE_COMMAND) -E cmake_progress_start /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles 0 +.PHONY : all + +# The main clean target +clean: + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 clean +.PHONY : clean + +# The main clean target +clean/fast: clean +.PHONY : clean/fast + +# Prepare targets for installation. +preinstall: all + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 preinstall +.PHONY : preinstall + +# Prepare targets for installation. +preinstall/fast: + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 preinstall +.PHONY : preinstall/fast + +# clear depends +depend: + $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1 +.PHONY : depend + +#============================================================================= +# Target rules for targets named CuJavaCommonJNI + +# Build rule for target. +CuJavaCommonJNI: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 CuJavaCommonJNI +.PHONY : CuJavaCommonJNI + +# fast build rule for target. +CuJavaCommonJNI/fast: + $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/build +.PHONY : CuJavaCommonJNI/fast + +#============================================================================= +# Target rules for targets named CuJavaRuntime + +# Build rule for target. +CuJavaRuntime: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 CuJavaRuntime +.PHONY : CuJavaRuntime + +# fast build rule for target. +CuJavaRuntime/fast: + $(MAKE) $(MAKESILENT) -f runtime/CMakeFiles/CuJavaRuntime.dir/build.make runtime/CMakeFiles/CuJavaRuntime.dir/build +.PHONY : CuJavaRuntime/fast + +# Help Target +help: + @echo "The following are some of the valid targets for this Makefile:" + @echo "... all (the default if no target is provided)" + @echo "... clean" + @echo "... depend" + @echo "... edit_cache" + @echo "... rebuild_cache" + @echo "... CuJavaCommonJNI" + @echo "... CuJavaRuntime" +.PHONY : help + + + +#============================================================================= +# Special targets to cleanup operation of make. + +# Special rule to run CMake to check the build system integrity. +# No rule that depends on this can have commands that come from listfiles +# because they might be regenerated. +cmake_check_build_system: + $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 +.PHONY : cmake_check_build_system + diff --git a/src/main/cpp/jni/build/cmake_install.cmake b/src/main/cpp/jni/build/cmake_install.cmake new file mode 100644 index 00000000000..97744b2b547 --- /dev/null +++ b/src/main/cpp/jni/build/cmake_install.cmake @@ -0,0 +1,64 @@ +# Install script for directory: /home/rene/projects/systemds/src/main/cpp/jni + +# Set the install prefix +if(NOT DEFINED CMAKE_INSTALL_PREFIX) + set(CMAKE_INSTALL_PREFIX "/usr/local") +endif() +string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}") + +# Set the install configuration name. +if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME) + if(BUILD_TYPE) + string(REGEX REPLACE "^[^A-Za-z0-9_]+" "" + CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}") + else() + set(CMAKE_INSTALL_CONFIG_NAME "Release") + endif() + message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"") +endif() + +# Set the component getting installed. +if(NOT CMAKE_INSTALL_COMPONENT) + if(COMPONENT) + message(STATUS "Install component: \"${COMPONENT}\"") + set(CMAKE_INSTALL_COMPONENT "${COMPONENT}") + else() + set(CMAKE_INSTALL_COMPONENT) + endif() +endif() + +# Install shared libraries without execute permission? +if(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE) + set(CMAKE_INSTALL_SO_NO_EXE "1") +endif() + +# Is this installation the result of a crosscompile? +if(NOT DEFINED CMAKE_CROSSCOMPILING) + set(CMAKE_CROSSCOMPILING "FALSE") +endif() + +# Set default install directory permissions. +if(NOT DEFINED CMAKE_OBJDUMP) + set(CMAKE_OBJDUMP "/usr/bin/objdump") +endif() + +if(NOT CMAKE_INSTALL_LOCAL_ONLY) + # Include the install script for the subdirectory. + include("/home/rene/projects/systemds/src/main/cpp/jni/build/common/cmake_install.cmake") +endif() + +if(NOT CMAKE_INSTALL_LOCAL_ONLY) + # Include the install script for the subdirectory. + include("/home/rene/projects/systemds/src/main/cpp/jni/build/runtime/cmake_install.cmake") +endif() + +if(CMAKE_INSTALL_COMPONENT) + set(CMAKE_INSTALL_MANIFEST "install_manifest_${CMAKE_INSTALL_COMPONENT}.txt") +else() + set(CMAKE_INSTALL_MANIFEST "install_manifest.txt") +endif() + +string(REPLACE ";" "\n" CMAKE_INSTALL_MANIFEST_CONTENT + "${CMAKE_INSTALL_MANIFEST_FILES}") +file(WRITE "/home/rene/projects/systemds/src/main/cpp/jni/build/${CMAKE_INSTALL_MANIFEST}" + "${CMAKE_INSTALL_MANIFEST_CONTENT}") diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CMakeDirectoryInformation.cmake b/src/main/cpp/jni/build/common/CMakeFiles/CMakeDirectoryInformation.cmake new file mode 100644 index 00000000000..b9b869f5a2e --- /dev/null +++ b/src/main/cpp/jni/build/common/CMakeFiles/CMakeDirectoryInformation.cmake @@ -0,0 +1,16 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# Relative path conversion top directories. +set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/home/rene/projects/systemds/src/main/cpp/jni") +set(CMAKE_RELATIVE_PATH_TOP_BINARY "/home/rene/projects/systemds/src/main/cpp/jni/build") + +# Force unix paths in dependencies. +set(CMAKE_FORCE_UNIX_PATHS 1) + + +# The C and CXX include file regular expressions for this directory. +set(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$") +set(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$") +set(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN}) +set(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN}) diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/DependInfo.cmake b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/DependInfo.cmake new file mode 100644 index 00000000000..16ff2a011d6 --- /dev/null +++ b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/DependInfo.cmake @@ -0,0 +1,21 @@ + +# Consider dependencies only in project. +set(CMAKE_DEPENDS_IN_PROJECT_ONLY OFF) + +# The set of languages for which implicit dependencies are needed: +set(CMAKE_DEPENDS_LANGUAGES + ) + +# The set of dependency files which are needed: +set(CMAKE_DEPENDS_DEPENDENCY_FILES + "/home/rene/projects/systemds/src/main/cpp/jni/common/cujava_jni_utils.cpp" "common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o" "gcc" "common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o.d" + "/home/rene/projects/systemds/src/main/cpp/jni/common/cujava_logger.cpp" "common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o" "gcc" "common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o.d" + "/home/rene/projects/systemds/src/main/cpp/jni/common/cujava_pointer_utils.cpp" "common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o" "gcc" "common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o.d" + ) + +# Targets to which this target links. +set(CMAKE_TARGET_LINKED_INFO_FILES + ) + +# Fortran module output directory. +set(CMAKE_Fortran_TARGET_MODULE_DIR "") diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/build.make b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/build.make new file mode 100644 index 00000000000..9999564f42a --- /dev/null +++ b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/build.make @@ -0,0 +1,143 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# Delete rule output on recipe failure. +.DELETE_ON_ERROR: + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + +# Disable VCS-based implicit rules. +% : %,v + +# Disable VCS-based implicit rules. +% : RCS/% + +# Disable VCS-based implicit rules. +% : RCS/%,v + +# Disable VCS-based implicit rules. +% : SCCS/s.% + +# Disable VCS-based implicit rules. +% : s.% + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /usr/bin/cmake + +# The command to remove a file. +RM = /usr/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /home/rene/projects/systemds/src/main/cpp/jni + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /home/rene/projects/systemds/src/main/cpp/jni/build + +# Include any dependencies generated for this target. +include common/CMakeFiles/CuJavaCommonJNI.dir/depend.make +# Include any dependencies generated by the compiler for this target. +include common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.make + +# Include the progress variables for this target. +include common/CMakeFiles/CuJavaCommonJNI.dir/progress.make + +# Include the compile flags for this target's objects. +include common/CMakeFiles/CuJavaCommonJNI.dir/flags.make + +common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o: common/CMakeFiles/CuJavaCommonJNI.dir/flags.make +common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o: ../common/cujava_logger.cpp +common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o: common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.ts + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building CXX object common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o" + cd /home/rene/projects/systemds/src/main/cpp/jni/build/common && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o -MF CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o.d -o CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o -c /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_logger.cpp + +common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.i" + cd /home/rene/projects/systemds/src/main/cpp/jni/build/common && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_logger.cpp > CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.i + +common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.s" + cd /home/rene/projects/systemds/src/main/cpp/jni/build/common && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_logger.cpp -o CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.s + +common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o: common/CMakeFiles/CuJavaCommonJNI.dir/flags.make +common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o: ../common/cujava_jni_utils.cpp +common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o: common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.ts + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Building CXX object common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o" + cd /home/rene/projects/systemds/src/main/cpp/jni/build/common && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o -MF CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o.d -o CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o -c /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_jni_utils.cpp + +common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.i" + cd /home/rene/projects/systemds/src/main/cpp/jni/build/common && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_jni_utils.cpp > CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.i + +common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.s" + cd /home/rene/projects/systemds/src/main/cpp/jni/build/common && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_jni_utils.cpp -o CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.s + +common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o: common/CMakeFiles/CuJavaCommonJNI.dir/flags.make +common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o: ../common/cujava_pointer_utils.cpp +common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o: common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.ts + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_3) "Building CXX object common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o" + cd /home/rene/projects/systemds/src/main/cpp/jni/build/common && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o -MF CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o.d -o CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o -c /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_pointer_utils.cpp + +common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.i" + cd /home/rene/projects/systemds/src/main/cpp/jni/build/common && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_pointer_utils.cpp > CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.i + +common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.s" + cd /home/rene/projects/systemds/src/main/cpp/jni/build/common && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_pointer_utils.cpp -o CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.s + +# Object files for target CuJavaCommonJNI +CuJavaCommonJNI_OBJECTS = \ +"CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o" \ +"CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o" \ +"CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o" + +# External object files for target CuJavaCommonJNI +CuJavaCommonJNI_EXTERNAL_OBJECTS = + +/home/rene/projects/systemds/src/main/cpp/lib/libCuJavaCommonJNI.a: common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o +/home/rene/projects/systemds/src/main/cpp/lib/libCuJavaCommonJNI.a: common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o +/home/rene/projects/systemds/src/main/cpp/lib/libCuJavaCommonJNI.a: common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o +/home/rene/projects/systemds/src/main/cpp/lib/libCuJavaCommonJNI.a: common/CMakeFiles/CuJavaCommonJNI.dir/build.make +/home/rene/projects/systemds/src/main/cpp/lib/libCuJavaCommonJNI.a: common/CMakeFiles/CuJavaCommonJNI.dir/link.txt + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_4) "Linking CXX static library /home/rene/projects/systemds/src/main/cpp/lib/libCuJavaCommonJNI.a" + cd /home/rene/projects/systemds/src/main/cpp/jni/build/common && $(CMAKE_COMMAND) -P CMakeFiles/CuJavaCommonJNI.dir/cmake_clean_target.cmake + cd /home/rene/projects/systemds/src/main/cpp/jni/build/common && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/CuJavaCommonJNI.dir/link.txt --verbose=$(VERBOSE) + +# Rule to build all files generated by this target. +common/CMakeFiles/CuJavaCommonJNI.dir/build: /home/rene/projects/systemds/src/main/cpp/lib/libCuJavaCommonJNI.a +.PHONY : common/CMakeFiles/CuJavaCommonJNI.dir/build + +common/CMakeFiles/CuJavaCommonJNI.dir/clean: + cd /home/rene/projects/systemds/src/main/cpp/jni/build/common && $(CMAKE_COMMAND) -P CMakeFiles/CuJavaCommonJNI.dir/cmake_clean.cmake +.PHONY : common/CMakeFiles/CuJavaCommonJNI.dir/clean + +common/CMakeFiles/CuJavaCommonJNI.dir/depend: + cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/rene/projects/systemds/src/main/cpp/jni /home/rene/projects/systemds/src/main/cpp/jni/common /home/rene/projects/systemds/src/main/cpp/jni/build /home/rene/projects/systemds/src/main/cpp/jni/build/common /home/rene/projects/systemds/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/DependInfo.cmake --color=$(COLOR) +.PHONY : common/CMakeFiles/CuJavaCommonJNI.dir/depend + diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cmake_clean.cmake b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cmake_clean.cmake new file mode 100644 index 00000000000..57aa3559e0f --- /dev/null +++ b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cmake_clean.cmake @@ -0,0 +1,15 @@ +file(REMOVE_RECURSE + "/home/rene/projects/systemds/src/main/cpp/lib/libCuJavaCommonJNI.a" + "/home/rene/projects/systemds/src/main/cpp/lib/libCuJavaCommonJNI.pdb" + "CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o" + "CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o.d" + "CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o" + "CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o.d" + "CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o" + "CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o.d" +) + +# Per-language clean rules from dependency scanning. +foreach(lang CXX) + include(CMakeFiles/CuJavaCommonJNI.dir/cmake_clean_${lang}.cmake OPTIONAL) +endforeach() diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cmake_clean_target.cmake b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cmake_clean_target.cmake new file mode 100644 index 00000000000..70103b5824a --- /dev/null +++ b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cmake_clean_target.cmake @@ -0,0 +1,3 @@ +file(REMOVE_RECURSE + "/home/rene/projects/systemds/src/main/cpp/lib/libCuJavaCommonJNI.a" +) diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.internal b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.internal new file mode 100644 index 00000000000..c0369a66a34 --- /dev/null +++ b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.internal @@ -0,0 +1,127 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o + /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_jni_utils.cpp + /usr/include/stdc-predef.h + /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_jni_utils.hpp + /usr/lib/jvm/java-11-openjdk-amd64/include/jni.h + /usr/include/stdio.h + /usr/include/x86_64-linux-gnu/bits/libc-header-start.h + /usr/include/features.h + /usr/include/features-time64.h + /usr/include/x86_64-linux-gnu/bits/wordsize.h + /usr/include/x86_64-linux-gnu/bits/timesize.h + /usr/include/x86_64-linux-gnu/sys/cdefs.h + /usr/include/x86_64-linux-gnu/bits/long-double.h + /usr/include/x86_64-linux-gnu/gnu/stubs.h + /usr/include/x86_64-linux-gnu/gnu/stubs-64.h + /usr/lib/gcc/x86_64-linux-gnu/12/include/stddef.h + /usr/lib/gcc/x86_64-linux-gnu/12/include/stdarg.h + /usr/include/x86_64-linux-gnu/bits/types.h + /usr/include/x86_64-linux-gnu/bits/typesizes.h + /usr/include/x86_64-linux-gnu/bits/time64.h + /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h + /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h + /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h + /usr/include/x86_64-linux-gnu/bits/types/__FILE.h + /usr/include/x86_64-linux-gnu/bits/types/FILE.h + /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h + /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h + /usr/include/x86_64-linux-gnu/bits/stdio_lim.h + /usr/include/x86_64-linux-gnu/bits/floatn.h + /usr/include/x86_64-linux-gnu/bits/floatn-common.h + /usr/include/x86_64-linux-gnu/bits/stdio.h + /usr/include/x86_64-linux-gnu/bits/stdio2.h + /usr/lib/jvm/java-11-openjdk-amd64/include/linux/jni_md.h + /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_logger.hpp + /usr/include/c++/12/cstdarg + /usr/include/x86_64-linux-gnu/c++/12/bits/c++config.h + /usr/include/x86_64-linux-gnu/c++/12/bits/os_defines.h + /usr/include/x86_64-linux-gnu/c++/12/bits/cpu_defines.h + /usr/include/c++/12/cstdio + +common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o + /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_logger.cpp + /usr/include/stdc-predef.h + /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_logger.hpp + /usr/include/c++/12/cstdarg + /usr/include/x86_64-linux-gnu/c++/12/bits/c++config.h + /usr/include/x86_64-linux-gnu/c++/12/bits/os_defines.h + /usr/include/features.h + /usr/include/features-time64.h + /usr/include/x86_64-linux-gnu/bits/wordsize.h + /usr/include/x86_64-linux-gnu/bits/timesize.h + /usr/include/x86_64-linux-gnu/sys/cdefs.h + /usr/include/x86_64-linux-gnu/bits/long-double.h + /usr/include/x86_64-linux-gnu/gnu/stubs.h + /usr/include/x86_64-linux-gnu/gnu/stubs-64.h + /usr/include/x86_64-linux-gnu/c++/12/bits/cpu_defines.h + /usr/lib/gcc/x86_64-linux-gnu/12/include/stdarg.h + /usr/include/c++/12/cstdio + /usr/include/stdio.h + /usr/include/x86_64-linux-gnu/bits/libc-header-start.h + /usr/lib/gcc/x86_64-linux-gnu/12/include/stddef.h + /usr/include/x86_64-linux-gnu/bits/types.h + /usr/include/x86_64-linux-gnu/bits/typesizes.h + /usr/include/x86_64-linux-gnu/bits/time64.h + /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h + /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h + /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h + /usr/include/x86_64-linux-gnu/bits/types/__FILE.h + /usr/include/x86_64-linux-gnu/bits/types/FILE.h + /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h + /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h + /usr/include/x86_64-linux-gnu/bits/stdio_lim.h + /usr/include/x86_64-linux-gnu/bits/floatn.h + /usr/include/x86_64-linux-gnu/bits/floatn-common.h + /usr/include/x86_64-linux-gnu/bits/stdio.h + /usr/include/x86_64-linux-gnu/bits/stdio2.h + +common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o + /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_pointer_utils.cpp + /usr/include/stdc-predef.h + /usr/lib/jvm/java-11-openjdk-amd64/include/jni.h + /usr/include/stdio.h + /usr/include/x86_64-linux-gnu/bits/libc-header-start.h + /usr/include/features.h + /usr/include/features-time64.h + /usr/include/x86_64-linux-gnu/bits/wordsize.h + /usr/include/x86_64-linux-gnu/bits/timesize.h + /usr/include/x86_64-linux-gnu/sys/cdefs.h + /usr/include/x86_64-linux-gnu/bits/long-double.h + /usr/include/x86_64-linux-gnu/gnu/stubs.h + /usr/include/x86_64-linux-gnu/gnu/stubs-64.h + /usr/lib/gcc/x86_64-linux-gnu/12/include/stddef.h + /usr/lib/gcc/x86_64-linux-gnu/12/include/stdarg.h + /usr/include/x86_64-linux-gnu/bits/types.h + /usr/include/x86_64-linux-gnu/bits/typesizes.h + /usr/include/x86_64-linux-gnu/bits/time64.h + /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h + /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h + /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h + /usr/include/x86_64-linux-gnu/bits/types/__FILE.h + /usr/include/x86_64-linux-gnu/bits/types/FILE.h + /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h + /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h + /usr/include/x86_64-linux-gnu/bits/stdio_lim.h + /usr/include/x86_64-linux-gnu/bits/floatn.h + /usr/include/x86_64-linux-gnu/bits/floatn-common.h + /usr/include/x86_64-linux-gnu/bits/stdio.h + /usr/include/x86_64-linux-gnu/bits/stdio2.h + /usr/lib/jvm/java-11-openjdk-amd64/include/linux/jni_md.h + /usr/include/c++/12/cstdint + /usr/include/x86_64-linux-gnu/c++/12/bits/c++config.h + /usr/include/x86_64-linux-gnu/c++/12/bits/os_defines.h + /usr/include/x86_64-linux-gnu/c++/12/bits/cpu_defines.h + /usr/lib/gcc/x86_64-linux-gnu/12/include/stdint.h + /usr/include/stdint.h + /usr/include/x86_64-linux-gnu/bits/wchar.h + /usr/include/x86_64-linux-gnu/bits/stdint-intn.h + /usr/include/x86_64-linux-gnu/bits/stdint-uintn.h + /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_logger.hpp + /usr/include/c++/12/cstdarg + /usr/include/c++/12/cstdio + /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_jni_utils.hpp + /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_pointer_utils.hpp + diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.make b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.make new file mode 100644 index 00000000000..d9a06fa900e --- /dev/null +++ b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.make @@ -0,0 +1,218 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o: ../common/cujava_jni_utils.cpp \ + /usr/include/stdc-predef.h \ + ../common/cujava_jni_utils.hpp \ + /usr/lib/jvm/java-11-openjdk-amd64/include/jni.h \ + /usr/include/stdio.h \ + /usr/include/x86_64-linux-gnu/bits/libc-header-start.h \ + /usr/include/features.h \ + /usr/include/features-time64.h \ + /usr/include/x86_64-linux-gnu/bits/wordsize.h \ + /usr/include/x86_64-linux-gnu/bits/timesize.h \ + /usr/include/x86_64-linux-gnu/sys/cdefs.h \ + /usr/include/x86_64-linux-gnu/bits/long-double.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ + /usr/lib/gcc/x86_64-linux-gnu/12/include/stddef.h \ + /usr/lib/gcc/x86_64-linux-gnu/12/include/stdarg.h \ + /usr/include/x86_64-linux-gnu/bits/types.h \ + /usr/include/x86_64-linux-gnu/bits/typesizes.h \ + /usr/include/x86_64-linux-gnu/bits/time64.h \ + /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h \ + /usr/include/x86_64-linux-gnu/bits/stdio_lim.h \ + /usr/include/x86_64-linux-gnu/bits/floatn.h \ + /usr/include/x86_64-linux-gnu/bits/floatn-common.h \ + /usr/include/x86_64-linux-gnu/bits/stdio.h \ + /usr/include/x86_64-linux-gnu/bits/stdio2.h \ + /usr/lib/jvm/java-11-openjdk-amd64/include/linux/jni_md.h \ + ../common/cujava_logger.hpp \ + /usr/include/c++/12/cstdarg \ + /usr/include/x86_64-linux-gnu/c++/12/bits/c++config.h \ + /usr/include/x86_64-linux-gnu/c++/12/bits/os_defines.h \ + /usr/include/x86_64-linux-gnu/c++/12/bits/cpu_defines.h \ + /usr/include/c++/12/cstdio + +common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o: ../common/cujava_logger.cpp \ + /usr/include/stdc-predef.h \ + ../common/cujava_logger.hpp \ + /usr/include/c++/12/cstdarg \ + /usr/include/x86_64-linux-gnu/c++/12/bits/c++config.h \ + /usr/include/x86_64-linux-gnu/c++/12/bits/os_defines.h \ + /usr/include/features.h \ + /usr/include/features-time64.h \ + /usr/include/x86_64-linux-gnu/bits/wordsize.h \ + /usr/include/x86_64-linux-gnu/bits/timesize.h \ + /usr/include/x86_64-linux-gnu/sys/cdefs.h \ + /usr/include/x86_64-linux-gnu/bits/long-double.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ + /usr/include/x86_64-linux-gnu/c++/12/bits/cpu_defines.h \ + /usr/lib/gcc/x86_64-linux-gnu/12/include/stdarg.h \ + /usr/include/c++/12/cstdio \ + /usr/include/stdio.h \ + /usr/include/x86_64-linux-gnu/bits/libc-header-start.h \ + /usr/lib/gcc/x86_64-linux-gnu/12/include/stddef.h \ + /usr/include/x86_64-linux-gnu/bits/types.h \ + /usr/include/x86_64-linux-gnu/bits/typesizes.h \ + /usr/include/x86_64-linux-gnu/bits/time64.h \ + /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h \ + /usr/include/x86_64-linux-gnu/bits/stdio_lim.h \ + /usr/include/x86_64-linux-gnu/bits/floatn.h \ + /usr/include/x86_64-linux-gnu/bits/floatn-common.h \ + /usr/include/x86_64-linux-gnu/bits/stdio.h \ + /usr/include/x86_64-linux-gnu/bits/stdio2.h + +common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o: ../common/cujava_pointer_utils.cpp \ + /usr/include/stdc-predef.h \ + /usr/lib/jvm/java-11-openjdk-amd64/include/jni.h \ + /usr/include/stdio.h \ + /usr/include/x86_64-linux-gnu/bits/libc-header-start.h \ + /usr/include/features.h \ + /usr/include/features-time64.h \ + /usr/include/x86_64-linux-gnu/bits/wordsize.h \ + /usr/include/x86_64-linux-gnu/bits/timesize.h \ + /usr/include/x86_64-linux-gnu/sys/cdefs.h \ + /usr/include/x86_64-linux-gnu/bits/long-double.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ + /usr/lib/gcc/x86_64-linux-gnu/12/include/stddef.h \ + /usr/lib/gcc/x86_64-linux-gnu/12/include/stdarg.h \ + /usr/include/x86_64-linux-gnu/bits/types.h \ + /usr/include/x86_64-linux-gnu/bits/typesizes.h \ + /usr/include/x86_64-linux-gnu/bits/time64.h \ + /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h \ + /usr/include/x86_64-linux-gnu/bits/stdio_lim.h \ + /usr/include/x86_64-linux-gnu/bits/floatn.h \ + /usr/include/x86_64-linux-gnu/bits/floatn-common.h \ + /usr/include/x86_64-linux-gnu/bits/stdio.h \ + /usr/include/x86_64-linux-gnu/bits/stdio2.h \ + /usr/lib/jvm/java-11-openjdk-amd64/include/linux/jni_md.h \ + /usr/include/c++/12/cstdint \ + /usr/include/x86_64-linux-gnu/c++/12/bits/c++config.h \ + /usr/include/x86_64-linux-gnu/c++/12/bits/os_defines.h \ + /usr/include/x86_64-linux-gnu/c++/12/bits/cpu_defines.h \ + /usr/lib/gcc/x86_64-linux-gnu/12/include/stdint.h \ + /usr/include/stdint.h \ + /usr/include/x86_64-linux-gnu/bits/wchar.h \ + /usr/include/x86_64-linux-gnu/bits/stdint-intn.h \ + /usr/include/x86_64-linux-gnu/bits/stdint-uintn.h \ + ../common/cujava_logger.hpp \ + /usr/include/c++/12/cstdarg \ + /usr/include/c++/12/cstdio \ + ../common/cujava_jni_utils.hpp \ + ../common/cujava_pointer_utils.hpp + + +/usr/include/x86_64-linux-gnu/bits/stdint-intn.h: + +/usr/lib/gcc/x86_64-linux-gnu/12/include/stdint.h: + +/usr/include/c++/12/cstdint: + +../common/cujava_pointer_utils.cpp: + +/usr/include/c++/12/cstdio: + +/usr/include/x86_64-linux-gnu/c++/12/bits/cpu_defines.h: + +/usr/include/x86_64-linux-gnu/c++/12/bits/os_defines.h: + +/usr/include/x86_64-linux-gnu/bits/stdio.h: + +/usr/include/stdint.h: + +/usr/include/x86_64-linux-gnu/bits/timesize.h: + +/usr/lib/gcc/x86_64-linux-gnu/12/include/stddef.h: + +/usr/lib/jvm/java-11-openjdk-amd64/include/jni.h: + +/usr/include/x86_64-linux-gnu/bits/libc-header-start.h: + +/usr/include/stdc-predef.h: + +/usr/include/x86_64-linux-gnu/bits/stdio2.h: + +/usr/include/x86_64-linux-gnu/sys/cdefs.h: + +/usr/include/stdio.h: + +/usr/include/x86_64-linux-gnu/bits/floatn-common.h: + +../common/cujava_logger.hpp: + +/usr/include/x86_64-linux-gnu/bits/long-double.h: + +../common/cujava_jni_utils.hpp: + +/usr/include/x86_64-linux-gnu/bits/wordsize.h: + +../common/cujava_jni_utils.cpp: + +/usr/include/x86_64-linux-gnu/bits/stdint-uintn.h: + +/usr/include/x86_64-linux-gnu/bits/wchar.h: + +/usr/include/x86_64-linux-gnu/gnu/stubs-64.h: + +/usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h: + +../common/cujava_pointer_utils.hpp: + +/usr/lib/gcc/x86_64-linux-gnu/12/include/stdarg.h: + +/usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h: + +/usr/include/x86_64-linux-gnu/bits/typesizes.h: + +/usr/include/x86_64-linux-gnu/bits/time64.h: + +/usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h: + +../common/cujava_logger.cpp: + +/usr/lib/jvm/java-11-openjdk-amd64/include/linux/jni_md.h: + +/usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h: + +/usr/include/x86_64-linux-gnu/bits/types/__FILE.h: + +/usr/include/x86_64-linux-gnu/c++/12/bits/c++config.h: + +/usr/include/features.h: + +/usr/include/x86_64-linux-gnu/bits/types/FILE.h: + +/usr/include/features-time64.h: + +/usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h: + +/usr/include/c++/12/cstdarg: + +/usr/include/x86_64-linux-gnu/bits/types.h: + +/usr/include/x86_64-linux-gnu/gnu/stubs.h: + +/usr/include/x86_64-linux-gnu/bits/stdio_lim.h: + +/usr/include/x86_64-linux-gnu/bits/floatn.h: diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.ts b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.ts new file mode 100644 index 00000000000..17eeca5619f --- /dev/null +++ b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.ts @@ -0,0 +1,2 @@ +# CMAKE generated file: DO NOT EDIT! +# Timestamp file for compiler generated dependencies management for CuJavaCommonJNI. diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o new file mode 100644 index 0000000000000000000000000000000000000000..ad1f68a520fe44179d163389f5355eed4336e46e GIT binary patch literal 7544 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 QUyg?_v=^*b{%Pm`AK@IC+W-In literal 0 HcmV?d00001 diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o.d b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o.d new file mode 100644 index 00000000000..7ded0e0ccf0 --- /dev/null +++ b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o.d @@ -0,0 +1,38 @@ +common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o: \ + /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_jni_utils.cpp \ + /usr/include/stdc-predef.h \ + /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_jni_utils.hpp \ + /usr/lib/jvm/java-11-openjdk-amd64/include/jni.h /usr/include/stdio.h \ + /usr/include/x86_64-linux-gnu/bits/libc-header-start.h \ + /usr/include/features.h /usr/include/features-time64.h \ + /usr/include/x86_64-linux-gnu/bits/wordsize.h \ + /usr/include/x86_64-linux-gnu/bits/timesize.h \ + /usr/include/x86_64-linux-gnu/sys/cdefs.h \ + /usr/include/x86_64-linux-gnu/bits/long-double.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ + /usr/lib/gcc/x86_64-linux-gnu/12/include/stddef.h \ + /usr/lib/gcc/x86_64-linux-gnu/12/include/stdarg.h \ + /usr/include/x86_64-linux-gnu/bits/types.h \ + /usr/include/x86_64-linux-gnu/bits/typesizes.h \ + /usr/include/x86_64-linux-gnu/bits/time64.h \ + /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h \ + /usr/include/x86_64-linux-gnu/bits/stdio_lim.h \ + /usr/include/x86_64-linux-gnu/bits/floatn.h \ + /usr/include/x86_64-linux-gnu/bits/floatn-common.h \ + /usr/include/x86_64-linux-gnu/bits/stdio.h \ + /usr/include/x86_64-linux-gnu/bits/stdio2.h \ + /usr/lib/jvm/java-11-openjdk-amd64/include/linux/jni_md.h \ + /usr/include/c++/12/new \ + /usr/include/x86_64-linux-gnu/c++/12/bits/c++config.h \ + /usr/include/x86_64-linux-gnu/c++/12/bits/os_defines.h \ + /usr/include/x86_64-linux-gnu/c++/12/bits/cpu_defines.h \ + /usr/include/c++/12/bits/exception.h \ + /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_logger.hpp \ + /usr/include/c++/12/cstdarg /usr/include/c++/12/cstdio diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o new file mode 100644 index 0000000000000000000000000000000000000000..7229186d77db2f497a8b1c00c72b445c79b65508 GIT binary patch literal 2056 zcmbu9O-vI(6vwAfr2@7^J&=If!)mC?rUg_2i7C*+MmIpD7^5-kwrnX-+Ge{;fCC?q zgH1z%@nVbz4<0?3=+PJwOz_~rg9j52){`b06ZK|H@V(ucGTF2zU$Xtb`OUmHGjC?P z8k2|XTrR@QMJ|#37Ndl`aqs&P%Z-r3q?!Eoo%k~$t$%+9Oe)5OkW`d~Ubz?*A~JZ= z#mTrXqD`1Lf_-3KTWbDdMcm})UbO-BRZjjW3_QYdYYo7# zYB;ach5@uxc4hAy$0XsaHh#7SU#h{^YVdo&ah+vQv`QV4=B&D)Dw*8$w5E&6e4Z#b zMlZ-#vm0ov7kpV;&@$s!lFLLHk;euHWMyo4cp?^8;sb+nOyNSp=aZ(cYgvOu#Yn-J z%9#dHl!a7YpUE02C7GThsZ_=+q=6O;H93b!NvSg#K2^A&?Wd_M!(M;J7IFp@@66vl z+wODxAjjWQj(4hoM>qsJz`;L-cS=nEEu}2 zY3Au#MimWh(IDcKYN$j^6beL4=H}<2u0+h{3{8YL(rHzWwx_eEnAdZ8O*fW^Xl2mS zN=jGfH8$gaX#k?}ZD37#i_pdo9)j<@%Wc50_7V7adq5xf7KM$VI1io$TB|MOG$?ZR ze?Tz_Aq2zRygA$Fpc8XC<9ld4AB(;dhbap=2C{h3!C5@hzA8B}B*6yMh-dgRICyXQ zyM=ve8Xv$0XRLkWseyyxRG7&_c7i;Q3)Ji)ZIoZEl?E1D)SP pwFwxWkux6Op!4hikuu%Tb8K)%(^W_dc-7*s)Ah6e6Bgi%{|B2y0nY#c literal 0 HcmV?d00001 diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o.d b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o.d new file mode 100644 index 00000000000..cb81af50e50 --- /dev/null +++ b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o.d @@ -0,0 +1,34 @@ +common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o: \ + /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_logger.cpp \ + /usr/include/stdc-predef.h \ + /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_logger.hpp \ + /usr/include/c++/12/cstdarg \ + /usr/include/x86_64-linux-gnu/c++/12/bits/c++config.h \ + /usr/include/x86_64-linux-gnu/c++/12/bits/os_defines.h \ + /usr/include/features.h /usr/include/features-time64.h \ + /usr/include/x86_64-linux-gnu/bits/wordsize.h \ + /usr/include/x86_64-linux-gnu/bits/timesize.h \ + /usr/include/x86_64-linux-gnu/sys/cdefs.h \ + /usr/include/x86_64-linux-gnu/bits/long-double.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ + /usr/include/x86_64-linux-gnu/c++/12/bits/cpu_defines.h \ + /usr/lib/gcc/x86_64-linux-gnu/12/include/stdarg.h \ + /usr/include/c++/12/cstdio /usr/include/stdio.h \ + /usr/include/x86_64-linux-gnu/bits/libc-header-start.h \ + /usr/lib/gcc/x86_64-linux-gnu/12/include/stddef.h \ + /usr/include/x86_64-linux-gnu/bits/types.h \ + /usr/include/x86_64-linux-gnu/bits/typesizes.h \ + /usr/include/x86_64-linux-gnu/bits/time64.h \ + /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h \ + /usr/include/x86_64-linux-gnu/bits/stdio_lim.h \ + /usr/include/x86_64-linux-gnu/bits/floatn.h \ + /usr/include/x86_64-linux-gnu/bits/floatn-common.h \ + /usr/include/x86_64-linux-gnu/bits/stdio.h \ + /usr/include/x86_64-linux-gnu/bits/stdio2.h diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o new file mode 100644 index 0000000000000000000000000000000000000000..b5ad40f221ec6c959501145b58689fa2518cdd63 GIT binary patch literal 44536 zcmeHwe|%k4mG5b9X#>S1K-H)Smy&8KkmjZ-O({asB<)F?rh%qEq%BFB+%##^Bqlfg z0ki~@6t1BVkO5TGGV(BksP)Gi(Lo6mO5Y5h_wdIcI{4@yGqx15Dj+&Aowe3p>)dtE zJv%uO=ks}gy#499d!O%FzxLWc&))l_H&)dwojPTTBVmejg_F7y)Nx7&Qt2{EmN{Q_ z9wORH;l3HJ7PydiA;+a0FXH$zh_}Jj!S{uyEy$xhD>@t$LZ@KzJb#>LHsFB4?(<-(>HT`3&crI zf12ZAh;QZeevWU0_;yZ@aC`^EcXIkO9Nz`;-*EbFj_-l^UQT}&;?HsV^AO+1=`TS1 zMNWSS;scz%AL74-ONT$?ocHH7?*8{8w%Sephdc0UUW+?CZB79IZn82zD>mjP|IK}R zT0WAv$=8lyJUEs!*fbUHhl$f2F3ES3FV^fojfnQY2P2QL6bX$A;0HSI$$4Q#yfG!D zu4j-iP}jG@ib#efYz#}d&}!6&!-{wv92%UjU*MDB2p7Srkx{xg#gd%r4nawMS3%>J z6xPfTMVe?2LsS`t==?{fK_BG~*XL)oxEIZ$YS(v`JMd)QhE0cZ&UYR;1>uCLF*)a# zIapuI*SX2x$HvOnmanN!zTxg)09HHY^=q*HJ~kb*0F{{P*vg^bbIu<`)0~=Na;oR|>f!fECZ8e$E}|}iN)OdR z0S@P~_u;-A9S%h)`rZKQ^8UA{)w zviGq9u#{3@-h?Hc7g*9!%&lY%@&RRMjMLe1eRi4t5&Vo9@YjyVbq-%dv$$Rt-~%j+ z%KT_rHvbRQVpEv@93CG9>#%)g<{hgj<=vWbuSUC2*SVJajlG;YIw{6rV@<1+qMU6t z7JG-9sj) zzSidVZJCHVPnAsHB1@^94V@n}l}fCWrbjmg2c=6z(mGO;{57SjVlN+m`9Dvc;{3

#I&0L(+nvobB;^A5T>s5p*y0+%pA^>w793Z{06 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 Y`lW;4f4IyY#6Q|&xb{Q-bnx^47xETh1ONa4 literal 0 HcmV?d00001 diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o.d b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o.d new file mode 100644 index 00000000000..e4c67f047cc --- /dev/null +++ b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o.d @@ -0,0 +1,43 @@ +common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o: \ + /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_pointer_utils.cpp \ + /usr/include/stdc-predef.h \ + /usr/lib/jvm/java-11-openjdk-amd64/include/jni.h /usr/include/stdio.h \ + /usr/include/x86_64-linux-gnu/bits/libc-header-start.h \ + /usr/include/features.h /usr/include/features-time64.h \ + /usr/include/x86_64-linux-gnu/bits/wordsize.h \ + /usr/include/x86_64-linux-gnu/bits/timesize.h \ + /usr/include/x86_64-linux-gnu/sys/cdefs.h \ + /usr/include/x86_64-linux-gnu/bits/long-double.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ + /usr/lib/gcc/x86_64-linux-gnu/12/include/stddef.h \ + /usr/lib/gcc/x86_64-linux-gnu/12/include/stdarg.h \ + /usr/include/x86_64-linux-gnu/bits/types.h \ + /usr/include/x86_64-linux-gnu/bits/typesizes.h \ + /usr/include/x86_64-linux-gnu/bits/time64.h \ + /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h \ + /usr/include/x86_64-linux-gnu/bits/stdio_lim.h \ + /usr/include/x86_64-linux-gnu/bits/floatn.h \ + /usr/include/x86_64-linux-gnu/bits/floatn-common.h \ + /usr/include/x86_64-linux-gnu/bits/stdio.h \ + /usr/include/x86_64-linux-gnu/bits/stdio2.h \ + /usr/lib/jvm/java-11-openjdk-amd64/include/linux/jni_md.h \ + /usr/include/c++/12/cstdint \ + /usr/include/x86_64-linux-gnu/c++/12/bits/c++config.h \ + /usr/include/x86_64-linux-gnu/c++/12/bits/os_defines.h \ + /usr/include/x86_64-linux-gnu/c++/12/bits/cpu_defines.h \ + /usr/lib/gcc/x86_64-linux-gnu/12/include/stdint.h /usr/include/stdint.h \ + /usr/include/x86_64-linux-gnu/bits/wchar.h \ + /usr/include/x86_64-linux-gnu/bits/stdint-intn.h \ + /usr/include/x86_64-linux-gnu/bits/stdint-uintn.h \ + /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_logger.hpp \ + /usr/include/c++/12/cstdarg /usr/include/c++/12/cstdio \ + /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_jni_utils.hpp \ + /usr/include/c++/12/new /usr/include/c++/12/bits/exception.h \ + /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_pointer_utils.hpp diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/depend.make b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/depend.make new file mode 100644 index 00000000000..4918cb226bc --- /dev/null +++ b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/depend.make @@ -0,0 +1,2 @@ +# Empty dependencies file for CuJavaCommonJNI. +# This may be replaced when dependencies are built. diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/flags.make b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/flags.make new file mode 100644 index 00000000000..ce0eb24447c --- /dev/null +++ b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/flags.make @@ -0,0 +1,10 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# compile CXX with /usr/bin/c++ +CXX_DEFINES = + +CXX_INCLUDES = -I/usr/lib/jvm/java-11-openjdk-amd64/include -I/usr/lib/jvm/java-11-openjdk-amd64/include/linux -I/home/rene/projects/systemds/src/main/cpp/jni/common + +CXX_FLAGS = -O3 -DNDEBUG -fPIC -std=gnu++11 + diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/link.txt b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/link.txt new file mode 100644 index 00000000000..abb08b36493 --- /dev/null +++ b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/link.txt @@ -0,0 +1,2 @@ +/usr/bin/ar qc /home/rene/projects/systemds/src/main/cpp/lib/libCuJavaCommonJNI.a CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o +/usr/bin/ranlib /home/rene/projects/systemds/src/main/cpp/lib/libCuJavaCommonJNI.a diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/progress.make b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/progress.make new file mode 100644 index 00000000000..a69a57e8e4f --- /dev/null +++ b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/progress.make @@ -0,0 +1,5 @@ +CMAKE_PROGRESS_1 = 1 +CMAKE_PROGRESS_2 = 2 +CMAKE_PROGRESS_3 = 3 +CMAKE_PROGRESS_4 = 4 + diff --git a/src/main/cpp/jni/build/common/CMakeFiles/progress.marks b/src/main/cpp/jni/build/common/CMakeFiles/progress.marks new file mode 100644 index 00000000000..b8626c4cff2 --- /dev/null +++ b/src/main/cpp/jni/build/common/CMakeFiles/progress.marks @@ -0,0 +1 @@ +4 diff --git a/src/main/cpp/jni/build/common/Makefile b/src/main/cpp/jni/build/common/Makefile new file mode 100644 index 00000000000..28447921416 --- /dev/null +++ b/src/main/cpp/jni/build/common/Makefile @@ -0,0 +1,236 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# Default target executed when no arguments are given to make. +default_target: all +.PHONY : default_target + +# Allow only one "make -f Makefile2" at a time, but pass parallelism. +.NOTPARALLEL: + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + +# Disable VCS-based implicit rules. +% : %,v + +# Disable VCS-based implicit rules. +% : RCS/% + +# Disable VCS-based implicit rules. +% : RCS/%,v + +# Disable VCS-based implicit rules. +% : SCCS/s.% + +# Disable VCS-based implicit rules. +% : s.% + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /usr/bin/cmake + +# The command to remove a file. +RM = /usr/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /home/rene/projects/systemds/src/main/cpp/jni + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /home/rene/projects/systemds/src/main/cpp/jni/build + +#============================================================================= +# Targets provided globally by CMake. + +# Special rule for the target edit_cache +edit_cache: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "No interactive CMake dialog available..." + /usr/bin/cmake -E echo No\ interactive\ CMake\ dialog\ available. +.PHONY : edit_cache + +# Special rule for the target edit_cache +edit_cache/fast: edit_cache +.PHONY : edit_cache/fast + +# Special rule for the target rebuild_cache +rebuild_cache: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..." + /usr/bin/cmake --regenerate-during-build -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) +.PHONY : rebuild_cache + +# Special rule for the target rebuild_cache +rebuild_cache/fast: rebuild_cache +.PHONY : rebuild_cache/fast + +# The main all target +all: cmake_check_build_system + cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(CMAKE_COMMAND) -E cmake_progress_start /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles /home/rene/projects/systemds/src/main/cpp/jni/build/common//CMakeFiles/progress.marks + cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 common/all + $(CMAKE_COMMAND) -E cmake_progress_start /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles 0 +.PHONY : all + +# The main clean target +clean: + cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 common/clean +.PHONY : clean + +# The main clean target +clean/fast: clean +.PHONY : clean/fast + +# Prepare targets for installation. +preinstall: all + cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 common/preinstall +.PHONY : preinstall + +# Prepare targets for installation. +preinstall/fast: + cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 common/preinstall +.PHONY : preinstall/fast + +# clear depends +depend: + cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1 +.PHONY : depend + +# Convenience name for target. +common/CMakeFiles/CuJavaCommonJNI.dir/rule: + cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 common/CMakeFiles/CuJavaCommonJNI.dir/rule +.PHONY : common/CMakeFiles/CuJavaCommonJNI.dir/rule + +# Convenience name for target. +CuJavaCommonJNI: common/CMakeFiles/CuJavaCommonJNI.dir/rule +.PHONY : CuJavaCommonJNI + +# fast build rule for target. +CuJavaCommonJNI/fast: + cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/build +.PHONY : CuJavaCommonJNI/fast + +cujava_jni_utils.o: cujava_jni_utils.cpp.o +.PHONY : cujava_jni_utils.o + +# target to build an object file +cujava_jni_utils.cpp.o: + cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o +.PHONY : cujava_jni_utils.cpp.o + +cujava_jni_utils.i: cujava_jni_utils.cpp.i +.PHONY : cujava_jni_utils.i + +# target to preprocess a source file +cujava_jni_utils.cpp.i: + cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.i +.PHONY : cujava_jni_utils.cpp.i + +cujava_jni_utils.s: cujava_jni_utils.cpp.s +.PHONY : cujava_jni_utils.s + +# target to generate assembly for a file +cujava_jni_utils.cpp.s: + cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.s +.PHONY : cujava_jni_utils.cpp.s + +cujava_logger.o: cujava_logger.cpp.o +.PHONY : cujava_logger.o + +# target to build an object file +cujava_logger.cpp.o: + cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o +.PHONY : cujava_logger.cpp.o + +cujava_logger.i: cujava_logger.cpp.i +.PHONY : cujava_logger.i + +# target to preprocess a source file +cujava_logger.cpp.i: + cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.i +.PHONY : cujava_logger.cpp.i + +cujava_logger.s: cujava_logger.cpp.s +.PHONY : cujava_logger.s + +# target to generate assembly for a file +cujava_logger.cpp.s: + cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.s +.PHONY : cujava_logger.cpp.s + +cujava_pointer_utils.o: cujava_pointer_utils.cpp.o +.PHONY : cujava_pointer_utils.o + +# target to build an object file +cujava_pointer_utils.cpp.o: + cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o +.PHONY : cujava_pointer_utils.cpp.o + +cujava_pointer_utils.i: cujava_pointer_utils.cpp.i +.PHONY : cujava_pointer_utils.i + +# target to preprocess a source file +cujava_pointer_utils.cpp.i: + cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.i +.PHONY : cujava_pointer_utils.cpp.i + +cujava_pointer_utils.s: cujava_pointer_utils.cpp.s +.PHONY : cujava_pointer_utils.s + +# target to generate assembly for a file +cujava_pointer_utils.cpp.s: + cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.s +.PHONY : cujava_pointer_utils.cpp.s + +# Help Target +help: + @echo "The following are some of the valid targets for this Makefile:" + @echo "... all (the default if no target is provided)" + @echo "... clean" + @echo "... depend" + @echo "... edit_cache" + @echo "... rebuild_cache" + @echo "... CuJavaCommonJNI" + @echo "... cujava_jni_utils.o" + @echo "... cujava_jni_utils.i" + @echo "... cujava_jni_utils.s" + @echo "... cujava_logger.o" + @echo "... cujava_logger.i" + @echo "... cujava_logger.s" + @echo "... cujava_pointer_utils.o" + @echo "... cujava_pointer_utils.i" + @echo "... cujava_pointer_utils.s" +.PHONY : help + + + +#============================================================================= +# Special targets to cleanup operation of make. + +# Special rule to run CMake to check the build system integrity. +# No rule that depends on this can have commands that come from listfiles +# because they might be regenerated. +cmake_check_build_system: + cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 +.PHONY : cmake_check_build_system + diff --git a/src/main/cpp/jni/build/common/cmake_install.cmake b/src/main/cpp/jni/build/common/cmake_install.cmake new file mode 100644 index 00000000000..bad033eb317 --- /dev/null +++ b/src/main/cpp/jni/build/common/cmake_install.cmake @@ -0,0 +1,44 @@ +# Install script for directory: /home/rene/projects/systemds/src/main/cpp/jni/common + +# Set the install prefix +if(NOT DEFINED CMAKE_INSTALL_PREFIX) + set(CMAKE_INSTALL_PREFIX "/usr/local") +endif() +string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}") + +# Set the install configuration name. +if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME) + if(BUILD_TYPE) + string(REGEX REPLACE "^[^A-Za-z0-9_]+" "" + CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}") + else() + set(CMAKE_INSTALL_CONFIG_NAME "Release") + endif() + message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"") +endif() + +# Set the component getting installed. +if(NOT CMAKE_INSTALL_COMPONENT) + if(COMPONENT) + message(STATUS "Install component: \"${COMPONENT}\"") + set(CMAKE_INSTALL_COMPONENT "${COMPONENT}") + else() + set(CMAKE_INSTALL_COMPONENT) + endif() +endif() + +# Install shared libraries without execute permission? +if(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE) + set(CMAKE_INSTALL_SO_NO_EXE "1") +endif() + +# Is this installation the result of a crosscompile? +if(NOT DEFINED CMAKE_CROSSCOMPILING) + set(CMAKE_CROSSCOMPILING "FALSE") +endif() + +# Set default install directory permissions. +if(NOT DEFINED CMAKE_OBJDUMP) + set(CMAKE_OBJDUMP "/usr/bin/objdump") +endif() + diff --git a/src/main/cpp/jni/build/runtime/CMakeFiles/CMakeDirectoryInformation.cmake b/src/main/cpp/jni/build/runtime/CMakeFiles/CMakeDirectoryInformation.cmake new file mode 100644 index 00000000000..b9b869f5a2e --- /dev/null +++ b/src/main/cpp/jni/build/runtime/CMakeFiles/CMakeDirectoryInformation.cmake @@ -0,0 +1,16 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# Relative path conversion top directories. +set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/home/rene/projects/systemds/src/main/cpp/jni") +set(CMAKE_RELATIVE_PATH_TOP_BINARY "/home/rene/projects/systemds/src/main/cpp/jni/build") + +# Force unix paths in dependencies. +set(CMAKE_FORCE_UNIX_PATHS 1) + + +# The C and CXX include file regular expressions for this directory. +set(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$") +set(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$") +set(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN}) +set(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN}) diff --git a/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/DependInfo.cmake b/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/DependInfo.cmake new file mode 100644 index 00000000000..162910217e6 --- /dev/null +++ b/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/DependInfo.cmake @@ -0,0 +1,20 @@ + +# Consider dependencies only in project. +set(CMAKE_DEPENDS_IN_PROJECT_ONLY OFF) + +# The set of languages for which implicit dependencies are needed: +set(CMAKE_DEPENDS_LANGUAGES + ) + +# The set of dependency files which are needed: +set(CMAKE_DEPENDS_DEPENDENCY_FILES + "/home/rene/projects/systemds/src/main/cpp/jni/runtime/cujava_runtime.cpp" "runtime/CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.o" "gcc" "runtime/CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.o.d" + ) + +# Targets to which this target links. +set(CMAKE_TARGET_LINKED_INFO_FILES + "/home/rene/projects/systemds/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/DependInfo.cmake" + ) + +# Fortran module output directory. +set(CMAKE_Fortran_TARGET_MODULE_DIR "") diff --git a/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/build.make b/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/build.make new file mode 100644 index 00000000000..22406aed434 --- /dev/null +++ b/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/build.make @@ -0,0 +1,114 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# Delete rule output on recipe failure. +.DELETE_ON_ERROR: + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + +# Disable VCS-based implicit rules. +% : %,v + +# Disable VCS-based implicit rules. +% : RCS/% + +# Disable VCS-based implicit rules. +% : RCS/%,v + +# Disable VCS-based implicit rules. +% : SCCS/s.% + +# Disable VCS-based implicit rules. +% : s.% + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /usr/bin/cmake + +# The command to remove a file. +RM = /usr/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /home/rene/projects/systemds/src/main/cpp/jni + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /home/rene/projects/systemds/src/main/cpp/jni/build + +# Include any dependencies generated for this target. +include runtime/CMakeFiles/CuJavaRuntime.dir/depend.make +# Include any dependencies generated by the compiler for this target. +include runtime/CMakeFiles/CuJavaRuntime.dir/compiler_depend.make + +# Include the progress variables for this target. +include runtime/CMakeFiles/CuJavaRuntime.dir/progress.make + +# Include the compile flags for this target's objects. +include runtime/CMakeFiles/CuJavaRuntime.dir/flags.make + +runtime/CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.o: runtime/CMakeFiles/CuJavaRuntime.dir/flags.make +runtime/CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.o: ../runtime/cujava_runtime.cpp +runtime/CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.o: runtime/CMakeFiles/CuJavaRuntime.dir/compiler_depend.ts + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building CXX object runtime/CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.o" + cd /home/rene/projects/systemds/src/main/cpp/jni/build/runtime && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT runtime/CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.o -MF CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.o.d -o CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.o -c /home/rene/projects/systemds/src/main/cpp/jni/runtime/cujava_runtime.cpp + +runtime/CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.i" + cd /home/rene/projects/systemds/src/main/cpp/jni/build/runtime && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/rene/projects/systemds/src/main/cpp/jni/runtime/cujava_runtime.cpp > CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.i + +runtime/CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.s" + cd /home/rene/projects/systemds/src/main/cpp/jni/build/runtime && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/rene/projects/systemds/src/main/cpp/jni/runtime/cujava_runtime.cpp -o CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.s + +# Object files for target CuJavaRuntime +CuJavaRuntime_OBJECTS = \ +"CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.o" + +# External object files for target CuJavaRuntime +CuJavaRuntime_EXTERNAL_OBJECTS = + +/home/rene/projects/systemds/src/main/cpp/lib/libcujava_runtime.so: runtime/CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.o +/home/rene/projects/systemds/src/main/cpp/lib/libcujava_runtime.so: runtime/CMakeFiles/CuJavaRuntime.dir/build.make +/home/rene/projects/systemds/src/main/cpp/lib/libcujava_runtime.so: /home/rene/projects/systemds/src/main/cpp/lib/libCuJavaCommonJNI.a +/home/rene/projects/systemds/src/main/cpp/lib/libcujava_runtime.so: /usr/local/cuda-12.6/lib64/libcudart.so +/home/rene/projects/systemds/src/main/cpp/lib/libcujava_runtime.so: /usr/lib/jvm/java-11-openjdk-amd64/lib/libjawt.so +/home/rene/projects/systemds/src/main/cpp/lib/libcujava_runtime.so: /usr/lib/jvm/java-11-openjdk-amd64/lib/server/libjvm.so +/home/rene/projects/systemds/src/main/cpp/lib/libcujava_runtime.so: runtime/CMakeFiles/CuJavaRuntime.dir/link.txt + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Linking CXX shared library /home/rene/projects/systemds/src/main/cpp/lib/libcujava_runtime.so" + cd /home/rene/projects/systemds/src/main/cpp/jni/build/runtime && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/CuJavaRuntime.dir/link.txt --verbose=$(VERBOSE) + +# Rule to build all files generated by this target. +runtime/CMakeFiles/CuJavaRuntime.dir/build: /home/rene/projects/systemds/src/main/cpp/lib/libcujava_runtime.so +.PHONY : runtime/CMakeFiles/CuJavaRuntime.dir/build + +runtime/CMakeFiles/CuJavaRuntime.dir/clean: + cd /home/rene/projects/systemds/src/main/cpp/jni/build/runtime && $(CMAKE_COMMAND) -P CMakeFiles/CuJavaRuntime.dir/cmake_clean.cmake +.PHONY : runtime/CMakeFiles/CuJavaRuntime.dir/clean + +runtime/CMakeFiles/CuJavaRuntime.dir/depend: + cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/rene/projects/systemds/src/main/cpp/jni /home/rene/projects/systemds/src/main/cpp/jni/runtime /home/rene/projects/systemds/src/main/cpp/jni/build /home/rene/projects/systemds/src/main/cpp/jni/build/runtime /home/rene/projects/systemds/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/DependInfo.cmake --color=$(COLOR) +.PHONY : runtime/CMakeFiles/CuJavaRuntime.dir/depend + diff --git a/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/cmake_clean.cmake b/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/cmake_clean.cmake new file mode 100644 index 00000000000..d9adbdc4504 --- /dev/null +++ b/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/cmake_clean.cmake @@ -0,0 +1,11 @@ +file(REMOVE_RECURSE + "/home/rene/projects/systemds/src/main/cpp/lib/libcujava_runtime.pdb" + "/home/rene/projects/systemds/src/main/cpp/lib/libcujava_runtime.so" + "CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.o" + "CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.o.d" +) + +# Per-language clean rules from dependency scanning. +foreach(lang CXX) + include(CMakeFiles/CuJavaRuntime.dir/cmake_clean_${lang}.cmake OPTIONAL) +endforeach() diff --git a/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/compiler_depend.make b/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/compiler_depend.make new file mode 100644 index 00000000000..600905e15ea --- /dev/null +++ b/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/compiler_depend.make @@ -0,0 +1,2 @@ +# Empty compiler generated dependencies file for CuJavaRuntime. +# This may be replaced when dependencies are built. diff --git a/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/compiler_depend.ts b/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/compiler_depend.ts new file mode 100644 index 00000000000..607cea7b755 --- /dev/null +++ b/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/compiler_depend.ts @@ -0,0 +1,2 @@ +# CMAKE generated file: DO NOT EDIT! +# Timestamp file for compiler generated dependencies management for CuJavaRuntime. diff --git a/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.o b/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.o new file mode 100644 index 0000000000000000000000000000000000000000..436496ae31a5a69b4f5c2407e692aee591ae51e5 GIT binary patch literal 32832 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 pW4oIjJA}O1jrf=D*YvwGI +#include bool init(JNIEnv* env, jclass& cls, const char* name); bool initGlobal(JNIEnv* env, jclass& globalCls, const char* className); diff --git a/src/main/cpp/lib/libCuJavaCommonJNI.a b/src/main/cpp/lib/libCuJavaCommonJNI.a index 4cfe401d18ce99a3e8637b8adb88be36d730e9dc..d09427ba6d0e0cc27777beec36d527f49293f740 100644 GIT binary patch delta 3710 zcmcgue@s(H9KXKuqrmoB7|?b@+c-c32dx6aAB#L_;Z@6M1k`}oRcNscT2m^Di#|5M z?FGFO zyZe0aKHpz=mz#~MXD+HEWkRu~++rs3W-!5O zUOp$|$hQ7((gc@;&Cw~ehVX)G z{F0qL-cXPjas(Dy19eF`aBo~7GE zA4|`D1_g>zpy$PN$TG?dFW!~1#+6U(TZu3mO;{hwB%Xz4*9&Cs4^Ht{r+Am7vqFuu zL+V=bzD>MkokT1I?!$>BymJwAA^-z1?V%WUUP>Uhm2;14O?@cKB;Rsk39hKN)>J_% zE(at$lZZwY5iK^LQ4)}VGxcmD+Q>C>4X7wXiD=uRohKDUJ0RecJY5uVVlcMPCpcSY z_@NSXIfTc7X~^tK!eQUt>fI6c2LteQb!IBQ zOZd< z!5Mi0opUS~@COBOfI)7Js4Ll3=HWQx=l*!)Z+`+ah?2~)W*hO@&T6VsswHGT3N8iS zN;gLLm^xMH9L9rgxb|emD+yo}Gb_YL`U&6yj9t$thzBDI9qxuuO9Qk}sLx{%Nd(rV z>5V5)4{Kcn1K?x&pTydA-%;%hMeFHbi|EKIN-N{9Q~V^whw1!HD(Fhf6uJiFlE_&7hCkmK7zE0$5On zv7C{9z)x|IAOSLdnBvzcPO6NiTxM{5%nb(ib?8;n;2!xwW?7TI&{<_&4e+;^d`rl; zG}^puP$fL|68V2$D#F6A4%hmB{!&3NsQU1lKrp;L6x@Xd0Z-S4_4VO$inzm|%iD!s zOCZVJ)aG&Zpd`YZuP!&@EA-)htI$%aXXrtBhB2CU20tMss)^gkls^Vvnlbj7MW zXcJ(`M=c9#b83u6)RQ^OPzABzji86Y9K9+XzL!&@GQz7ln12o-dZ^EJqyDbkY=LeV zyh?|fOtV3Orz-F!isPS2fj>~pSMo4)<6(X!Pcp@ceI=0&Jrc0s=yFh#9m=9Owv(&C ztqOd(0(U9!JO%y^#j!(a02Iy}cweD-NwFZJATq&&xq6iWewKSlkgottgqwUO$$(-Q zmye_i50J?7sIKJrf5vZ;Mz$a7n|Iso?kdr5U;x mCG8Zwt?)1%78MjEPvb3u5X?&~6f9O;a~(+ubEX#R`HRJQze!X*CLpUc7iwD@5@k z;=%YSC`jlrf|knOB*cHC)I$rNtP~1*j~BfZbar?AI|;P|vv1z}e%|A4=dJkF5pR^L zVty8?5&N{8> zNzrMAF33T1n_Wudi){#vm~%#55|PRFLeCrzu%ATmB6AB5v%2#!`-b9uTtO$k)wwq~ zPLpv$U50n|@OTcF6DjpJ%UpCHuioYHv5Rh;=V*sl_w)FTU^d^^zlpiJ;yLbqox?j= zE@3gAP!F(|OuX?tEX)}v&@+@$Yg{jhetC+cPq2L`g)N1{Sh+IbGz%vw3i=?GQPxvb z!fD-5Wky~7?w`+G=C(=Tk!~>NiuaX^2IKE6rl^8L#of50cjG~^TTT3-J}>xkSIvgz ztelbit4D~B==V5g9A!P889DTibm0_p%_kM?9cf_Z{wV6BE&2+zB@La|O7v=%@4q0R zK4uHS09#BSD(!qE%=Z#Tt-Tq$OzBtUEEX3uTr}06l$$8eYiOEEBp&qbiXLUvRD_8j zca$)0DUk_INHbRrbBO>hS-sH;uQn*^mK{B~!FPE|ux#1MaL7+*_%3=_Dq-r=aI_Ke Wk!6Y_wjEJoetHe%w&pZ#bM^-v()i2( diff --git a/src/main/cpp/lib/libcujava_runtime.so b/src/main/cpp/lib/libcujava_runtime.so index ecbad36f6e9e0f06efa3e272971dbc1318bd92c1..f4b66694a90c4e70f1b5ad1fdcf0a48666f35f1e 100755 GIT binary patch literal 73784 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 DrO?%S literal 43064 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 Date: Sat, 23 Aug 2025 22:33:17 +0200 Subject: [PATCH 35/57] delete build folder for now --- src/main/cpp/jni/build/CMakeCache.txt | 652 --------------- .../CMakeFiles/3.22.1/CMakeCXXCompiler.cmake | 83 -- .../3.22.1/CMakeDetermineCompilerABI_CXX.bin | Bin 15992 -> 0 bytes .../build/CMakeFiles/3.22.1/CMakeSystem.cmake | 15 - .../CompilerIdCXX/CMakeCXXCompilerId.cpp | 791 ------------------ .../CMakeFiles/3.22.1/CompilerIdCXX/a.out | Bin 16096 -> 0 bytes .../CMakeDirectoryInformation.cmake | 16 - .../cpp/jni/build/CMakeFiles/CMakeOutput.log | 278 ------ .../cpp/jni/build/CMakeFiles/Makefile.cmake | 58 -- src/main/cpp/jni/build/CMakeFiles/Makefile2 | 171 ---- .../build/CMakeFiles/TargetDirectories.txt | 8 - .../jni/build/CMakeFiles/cmake.check_cache | 1 - .../cpp/jni/build/CMakeFiles/progress.marks | 1 - src/main/cpp/jni/build/Makefile | 168 ---- src/main/cpp/jni/build/cmake_install.cmake | 64 -- .../CMakeDirectoryInformation.cmake | 16 - .../CuJavaCommonJNI.dir/DependInfo.cmake | 21 - .../CMakeFiles/CuJavaCommonJNI.dir/build.make | 143 ---- .../CuJavaCommonJNI.dir/cmake_clean.cmake | 15 - .../cmake_clean_target.cmake | 3 - .../compiler_depend.internal | 127 --- .../CuJavaCommonJNI.dir/compiler_depend.make | 218 ----- .../CuJavaCommonJNI.dir/compiler_depend.ts | 2 - .../cujava_jni_utils.cpp.o | Bin 7544 -> 0 bytes .../cujava_jni_utils.cpp.o.d | 38 - .../CuJavaCommonJNI.dir/cujava_logger.cpp.o | Bin 2056 -> 0 bytes .../CuJavaCommonJNI.dir/cujava_logger.cpp.o.d | 34 - .../cujava_pointer_utils.cpp.o | Bin 44536 -> 0 bytes .../cujava_pointer_utils.cpp.o.d | 43 - .../CuJavaCommonJNI.dir/depend.make | 2 - .../CMakeFiles/CuJavaCommonJNI.dir/flags.make | 10 - .../CMakeFiles/CuJavaCommonJNI.dir/link.txt | 2 - .../CuJavaCommonJNI.dir/progress.make | 5 - .../build/common/CMakeFiles/progress.marks | 1 - src/main/cpp/jni/build/common/Makefile | 236 ------ .../cpp/jni/build/common/cmake_install.cmake | 44 - .../CMakeDirectoryInformation.cmake | 16 - .../CuJavaRuntime.dir/DependInfo.cmake | 20 - .../CMakeFiles/CuJavaRuntime.dir/build.make | 114 --- .../CuJavaRuntime.dir/cmake_clean.cmake | 11 - .../CuJavaRuntime.dir/compiler_depend.make | 2 - .../CuJavaRuntime.dir/compiler_depend.ts | 2 - .../CuJavaRuntime.dir/cujava_runtime.cpp.o | Bin 32832 -> 0 bytes .../CuJavaRuntime.dir/cujava_runtime.cpp.o.d | 96 --- .../CMakeFiles/CuJavaRuntime.dir/depend.make | 2 - .../CMakeFiles/CuJavaRuntime.dir/flags.make | 10 - .../CMakeFiles/CuJavaRuntime.dir/link.txt | 1 - .../CuJavaRuntime.dir/progress.make | 3 - .../build/runtime/CMakeFiles/progress.marks | 1 - src/main/cpp/jni/build/runtime/Makefile | 182 ---- .../cpp/jni/build/runtime/cmake_install.cmake | 44 - 51 files changed, 3770 deletions(-) delete mode 100644 src/main/cpp/jni/build/CMakeCache.txt delete mode 100644 src/main/cpp/jni/build/CMakeFiles/3.22.1/CMakeCXXCompiler.cmake delete mode 100755 src/main/cpp/jni/build/CMakeFiles/3.22.1/CMakeDetermineCompilerABI_CXX.bin delete mode 100644 src/main/cpp/jni/build/CMakeFiles/3.22.1/CMakeSystem.cmake delete mode 100644 src/main/cpp/jni/build/CMakeFiles/3.22.1/CompilerIdCXX/CMakeCXXCompilerId.cpp delete mode 100755 src/main/cpp/jni/build/CMakeFiles/3.22.1/CompilerIdCXX/a.out delete mode 100644 src/main/cpp/jni/build/CMakeFiles/CMakeDirectoryInformation.cmake delete mode 100644 src/main/cpp/jni/build/CMakeFiles/CMakeOutput.log delete mode 100644 src/main/cpp/jni/build/CMakeFiles/Makefile.cmake delete mode 100644 src/main/cpp/jni/build/CMakeFiles/Makefile2 delete mode 100644 src/main/cpp/jni/build/CMakeFiles/TargetDirectories.txt delete mode 100644 src/main/cpp/jni/build/CMakeFiles/cmake.check_cache delete mode 100644 src/main/cpp/jni/build/CMakeFiles/progress.marks delete mode 100644 src/main/cpp/jni/build/Makefile delete mode 100644 src/main/cpp/jni/build/cmake_install.cmake delete mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CMakeDirectoryInformation.cmake delete mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/DependInfo.cmake delete mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/build.make delete mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cmake_clean.cmake delete mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cmake_clean_target.cmake delete mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.internal delete mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.make delete mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.ts delete mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o delete mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o.d delete mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o delete mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o.d delete mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o delete mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o.d delete mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/depend.make delete mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/flags.make delete mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/link.txt delete mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/progress.make delete mode 100644 src/main/cpp/jni/build/common/CMakeFiles/progress.marks delete mode 100644 src/main/cpp/jni/build/common/Makefile delete mode 100644 src/main/cpp/jni/build/common/cmake_install.cmake delete mode 100644 src/main/cpp/jni/build/runtime/CMakeFiles/CMakeDirectoryInformation.cmake delete mode 100644 src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/DependInfo.cmake delete mode 100644 src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/build.make delete mode 100644 src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/cmake_clean.cmake delete mode 100644 src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/compiler_depend.make delete mode 100644 src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/compiler_depend.ts delete mode 100644 src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.o delete mode 100644 src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.o.d delete mode 100644 src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/depend.make delete mode 100644 src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/flags.make delete mode 100644 src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/link.txt delete mode 100644 src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/progress.make delete mode 100644 src/main/cpp/jni/build/runtime/CMakeFiles/progress.marks delete mode 100644 src/main/cpp/jni/build/runtime/Makefile delete mode 100644 src/main/cpp/jni/build/runtime/cmake_install.cmake diff --git a/src/main/cpp/jni/build/CMakeCache.txt b/src/main/cpp/jni/build/CMakeCache.txt deleted file mode 100644 index 2ec4e700ae3..00000000000 --- a/src/main/cpp/jni/build/CMakeCache.txt +++ /dev/null @@ -1,652 +0,0 @@ -# This is the CMakeCache file. -# For build in directory: /home/rene/projects/systemds/src/main/cpp/jni/build -# It was generated by CMake: /usr/bin/cmake -# You can edit this file to change values found and used by cmake. -# If you do not want to change any of the values, simply exit the editor. -# If you do want to change a value, simply edit, save, and exit the editor. -# The syntax for the file is as follows: -# KEY:TYPE=VALUE -# KEY is the name of a variable in the cache. -# TYPE is a hint to GUIs for the type of VALUE, DO NOT EDIT TYPE!. -# VALUE is the current value for the KEY. - -######################## -# EXTERNAL cache entries -######################## - -//Path to a program. -CMAKE_ADDR2LINE:FILEPATH=/usr/bin/addr2line - -//Path to a program. -CMAKE_AR:FILEPATH=/usr/bin/ar - -//Choose the type of build, options are: None Debug Release RelWithDebInfo -// MinSizeRel ... -CMAKE_BUILD_TYPE:STRING=Release - -//Enable/Disable color output during build. -CMAKE_COLOR_MAKEFILE:BOOL=ON - -//CXX compiler -CMAKE_CXX_COMPILER:FILEPATH=/usr/bin/c++ - -//A wrapper around 'ar' adding the appropriate '--plugin' option -// for the GCC compiler -CMAKE_CXX_COMPILER_AR:FILEPATH=/usr/bin/gcc-ar-12 - -//A wrapper around 'ranlib' adding the appropriate '--plugin' option -// for the GCC compiler -CMAKE_CXX_COMPILER_RANLIB:FILEPATH=/usr/bin/gcc-ranlib-12 - -//Flags used by the CXX compiler during all build types. -CMAKE_CXX_FLAGS:STRING= - -//Flags used by the CXX compiler during DEBUG builds. -CMAKE_CXX_FLAGS_DEBUG:STRING=-g - -//Flags used by the CXX compiler during MINSIZEREL builds. -CMAKE_CXX_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG - -//Flags used by the CXX compiler during RELEASE builds. -CMAKE_CXX_FLAGS_RELEASE:STRING=-O3 -DNDEBUG - -//Flags used by the CXX compiler during RELWITHDEBINFO builds. -CMAKE_CXX_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG - -//Path to a program. -CMAKE_DLLTOOL:FILEPATH=CMAKE_DLLTOOL-NOTFOUND - -//Flags used by the linker during all build types. -CMAKE_EXE_LINKER_FLAGS:STRING= - -//Flags used by the linker during DEBUG builds. -CMAKE_EXE_LINKER_FLAGS_DEBUG:STRING= - -//Flags used by the linker during MINSIZEREL builds. -CMAKE_EXE_LINKER_FLAGS_MINSIZEREL:STRING= - -//Flags used by the linker during RELEASE builds. -CMAKE_EXE_LINKER_FLAGS_RELEASE:STRING= - -//Flags used by the linker during RELWITHDEBINFO builds. -CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO:STRING= - -//Enable/Disable output of compile commands during generation. -CMAKE_EXPORT_COMPILE_COMMANDS:BOOL= - -//Install path prefix, prepended onto install directories. -CMAKE_INSTALL_PREFIX:PATH=/usr/local - -//Path to a program. -CMAKE_LINKER:FILEPATH=/usr/bin/ld - -//Path to a program. -CMAKE_MAKE_PROGRAM:FILEPATH=/usr/bin/gmake - -//Flags used by the linker during the creation of modules during -// all build types. -CMAKE_MODULE_LINKER_FLAGS:STRING= - -//Flags used by the linker during the creation of modules during -// DEBUG builds. -CMAKE_MODULE_LINKER_FLAGS_DEBUG:STRING= - -//Flags used by the linker during the creation of modules during -// MINSIZEREL builds. -CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL:STRING= - -//Flags used by the linker during the creation of modules during -// RELEASE builds. -CMAKE_MODULE_LINKER_FLAGS_RELEASE:STRING= - -//Flags used by the linker during the creation of modules during -// RELWITHDEBINFO builds. -CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO:STRING= - -//Path to a program. -CMAKE_NM:FILEPATH=/usr/bin/nm - -//Path to a program. -CMAKE_OBJCOPY:FILEPATH=/usr/bin/objcopy - -//Path to a program. -CMAKE_OBJDUMP:FILEPATH=/usr/bin/objdump - -//Value Computed by CMake -CMAKE_PROJECT_DESCRIPTION:STATIC= - -//Value Computed by CMake -CMAKE_PROJECT_HOMEPAGE_URL:STATIC= - -//Value Computed by CMake -CMAKE_PROJECT_NAME:STATIC=cujava_jni - -//Path to a program. -CMAKE_RANLIB:FILEPATH=/usr/bin/ranlib - -//Path to a program. -CMAKE_READELF:FILEPATH=/usr/bin/readelf - -//Flags used by the linker during the creation of shared libraries -// during all build types. -CMAKE_SHARED_LINKER_FLAGS:STRING= - -//Flags used by the linker during the creation of shared libraries -// during DEBUG builds. -CMAKE_SHARED_LINKER_FLAGS_DEBUG:STRING= - -//Flags used by the linker during the creation of shared libraries -// during MINSIZEREL builds. -CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL:STRING= - -//Flags used by the linker during the creation of shared libraries -// during RELEASE builds. -CMAKE_SHARED_LINKER_FLAGS_RELEASE:STRING= - -//Flags used by the linker during the creation of shared libraries -// during RELWITHDEBINFO builds. -CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO:STRING= - -//If set, runtime paths are not added when installing shared libraries, -// but are added when building. -CMAKE_SKIP_INSTALL_RPATH:BOOL=NO - -//If set, runtime paths are not added when using shared libraries. -CMAKE_SKIP_RPATH:BOOL=NO - -//Flags used by the linker during the creation of static libraries -// during all build types. -CMAKE_STATIC_LINKER_FLAGS:STRING= - -//Flags used by the linker during the creation of static libraries -// during DEBUG builds. -CMAKE_STATIC_LINKER_FLAGS_DEBUG:STRING= - -//Flags used by the linker during the creation of static libraries -// during MINSIZEREL builds. -CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL:STRING= - -//Flags used by the linker during the creation of static libraries -// during RELEASE builds. -CMAKE_STATIC_LINKER_FLAGS_RELEASE:STRING= - -//Flags used by the linker during the creation of static libraries -// during RELWITHDEBINFO builds. -CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO:STRING= - -//Path to a program. -CMAKE_STRIP:FILEPATH=/usr/bin/strip - -//If this value is on, makefiles will be generated without the -// .SILENT directive, and all commands will be echoed to the console -// during the make. This is useful for debugging only. With Visual -// Studio IDE projects all commands are done without /nologo. -CMAKE_VERBOSE_MAKEFILE:BOOL=FALSE - -CUDAToolkit_BIN_DIR:PATH=/usr/local/cuda-12.6/bin - -//Path to a program. -CUDAToolkit_NVCC_EXECUTABLE:FILEPATH=/usr/local/cuda-12.6/bin/nvcc - -//Path to a library. -CUDAToolkit_rt_LIBRARY:FILEPATH=/usr/lib/x86_64-linux-gnu/librt.a - -//Path to a library. -CUDA_CUDART:FILEPATH=/usr/local/cuda-12.6/lib64/libcudart.so - -//Path to a library. -CUDA_OpenCL_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libOpenCL.so - -//Path to a library. -CUDA_cublasLt_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcublasLt.so - -//Path to a library. -CUDA_cublasLt_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcublasLt_static.a - -//Path to a library. -CUDA_cublas_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcublas.so - -//Path to a library. -CUDA_cublas_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcublas_static.a - -//Path to a library. -CUDA_cuda_driver_LIBRARY:FILEPATH=/usr/lib/x86_64-linux-gnu/libcuda.so - -//Path to a library. -CUDA_cudart_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcudart.so - -//Path to a library. -CUDA_cudart_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcudart_static.a - -//Path to a library. -CUDA_cufft_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcufft.so - -//Path to a library. -CUDA_cufft_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcufft_static.a - -//Path to a library. -CUDA_cufftw_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcufftw.so - -//Path to a library. -CUDA_culibos_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libculibos.a - -//Path to a library. -CUDA_cupti_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcupti.so - -//Path to a library. -CUDA_cupti_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcupti_static.a - -//Path to a library. -CUDA_curand_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcurand.so - -//Path to a library. -CUDA_curand_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcurand_static.a - -//Path to a library. -CUDA_cusolver_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcusolver.so - -//Path to a library. -CUDA_cusolver_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcusolver_static.a - -//Path to a library. -CUDA_cusparse_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcusparse.so - -//Path to a library. -CUDA_cusparse_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcusparse_static.a - -//Path to a library. -CUDA_nppc_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppc.so - -//Path to a library. -CUDA_nppc_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppc_static.a - -//Path to a library. -CUDA_nppial_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppial.so - -//Path to a library. -CUDA_nppial_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppial_static.a - -//Path to a library. -CUDA_nppicc_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppicc.so - -//Path to a library. -CUDA_nppicc_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppicc_static.a - -//Path to a library. -CUDA_nppicom_LIBRARY:FILEPATH=CUDA_nppicom_LIBRARY-NOTFOUND - -//Path to a library. -CUDA_nppicom_static_LIBRARY:FILEPATH=CUDA_nppicom_static_LIBRARY-NOTFOUND - -//Path to a library. -CUDA_nppidei_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppidei.so - -//Path to a library. -CUDA_nppidei_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppidei_static.a - -//Path to a library. -CUDA_nppif_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppif.so - -//Path to a library. -CUDA_nppif_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppif_static.a - -//Path to a library. -CUDA_nppig_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppig.so - -//Path to a library. -CUDA_nppig_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppig_static.a - -//Path to a library. -CUDA_nppim_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppim.so - -//Path to a library. -CUDA_nppim_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppim_static.a - -//Path to a library. -CUDA_nppist_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppist.so - -//Path to a library. -CUDA_nppist_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppist_static.a - -//Path to a library. -CUDA_nppisu_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppisu.so - -//Path to a library. -CUDA_nppisu_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppisu_static.a - -//Path to a library. -CUDA_nppitc_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppitc.so - -//Path to a library. -CUDA_nppitc_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppitc_static.a - -//Path to a library. -CUDA_npps_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnpps.so - -//Path to a library. -CUDA_npps_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnpps_static.a - -//Path to a library. -CUDA_nvToolsExt_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnvToolsExt.so - -//Path to a library. -CUDA_nvgraph_LIBRARY:FILEPATH=CUDA_nvgraph_LIBRARY-NOTFOUND - -//Path to a library. -CUDA_nvgraph_static_LIBRARY:FILEPATH=CUDA_nvgraph_static_LIBRARY-NOTFOUND - -//Path to a library. -CUDA_nvjpeg_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnvjpeg.so - -//Path to a library. -CUDA_nvjpeg_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnvjpeg_static.a - -//Path to a library. -CUDA_nvml_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/stubs/libnvidia-ml.so - -//Path to a library. -CUDA_nvrtc_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnvrtc.so - -//Value Computed by CMake -CuJavaCommonJNI_BINARY_DIR:STATIC=/home/rene/projects/systemds/src/main/cpp/jni/build/common - -//Value Computed by CMake -CuJavaCommonJNI_IS_TOP_LEVEL:STATIC=OFF - -//Value Computed by CMake -CuJavaCommonJNI_SOURCE_DIR:STATIC=/home/rene/projects/systemds/src/main/cpp/jni/common - -//Value Computed by CMake -CuJavaRuntime_BINARY_DIR:STATIC=/home/rene/projects/systemds/src/main/cpp/jni/build/runtime - -//Value Computed by CMake -CuJavaRuntime_IS_TOP_LEVEL:STATIC=OFF - -//Value Computed by CMake -CuJavaRuntime_SOURCE_DIR:STATIC=/home/rene/projects/systemds/src/main/cpp/jni/runtime - -//Path to a file. -JAVA_AWT_INCLUDE_PATH:PATH=/usr/lib/jvm/java-11-openjdk-amd64/include - -//Path to a library. -JAVA_AWT_LIBRARY:FILEPATH=/usr/lib/jvm/java-11-openjdk-amd64/lib/libjawt.so - -//Path to a file. -JAVA_INCLUDE_PATH:PATH=/usr/lib/jvm/java-11-openjdk-amd64/include - -//Path to a file. -JAVA_INCLUDE_PATH2:PATH=/usr/lib/jvm/java-11-openjdk-amd64/include/linux - -//Path to a library. -JAVA_JVM_LIBRARY:FILEPATH=/usr/lib/jvm/java-11-openjdk-amd64/lib/server/libjvm.so - -//Value Computed by CMake -cujava_jni_BINARY_DIR:STATIC=/home/rene/projects/systemds/src/main/cpp/jni/build - -//Value Computed by CMake -cujava_jni_IS_TOP_LEVEL:STATIC=ON - -//Value Computed by CMake -cujava_jni_SOURCE_DIR:STATIC=/home/rene/projects/systemds/src/main/cpp/jni - - -######################## -# INTERNAL cache entries -######################## - -//ADVANCED property for variable: CMAKE_ADDR2LINE -CMAKE_ADDR2LINE-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_AR -CMAKE_AR-ADVANCED:INTERNAL=1 -//This is the directory where this CMakeCache.txt was created -CMAKE_CACHEFILE_DIR:INTERNAL=/home/rene/projects/systemds/src/main/cpp/jni/build -//Major version of cmake used to create the current loaded cache -CMAKE_CACHE_MAJOR_VERSION:INTERNAL=3 -//Minor version of cmake used to create the current loaded cache -CMAKE_CACHE_MINOR_VERSION:INTERNAL=22 -//Patch version of cmake used to create the current loaded cache -CMAKE_CACHE_PATCH_VERSION:INTERNAL=1 -//ADVANCED property for variable: CMAKE_COLOR_MAKEFILE -CMAKE_COLOR_MAKEFILE-ADVANCED:INTERNAL=1 -//Path to CMake executable. -CMAKE_COMMAND:INTERNAL=/usr/bin/cmake -//Path to cpack program executable. -CMAKE_CPACK_COMMAND:INTERNAL=/usr/bin/cpack -//Path to ctest program executable. -CMAKE_CTEST_COMMAND:INTERNAL=/usr/bin/ctest -//ADVANCED property for variable: CMAKE_CXX_COMPILER -CMAKE_CXX_COMPILER-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_CXX_COMPILER_AR -CMAKE_CXX_COMPILER_AR-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_CXX_COMPILER_RANLIB -CMAKE_CXX_COMPILER_RANLIB-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_CXX_FLAGS -CMAKE_CXX_FLAGS-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_CXX_FLAGS_DEBUG -CMAKE_CXX_FLAGS_DEBUG-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_CXX_FLAGS_MINSIZEREL -CMAKE_CXX_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELEASE -CMAKE_CXX_FLAGS_RELEASE-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELWITHDEBINFO -CMAKE_CXX_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_DLLTOOL -CMAKE_DLLTOOL-ADVANCED:INTERNAL=1 -//Executable file format -CMAKE_EXECUTABLE_FORMAT:INTERNAL=ELF -//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS -CMAKE_EXE_LINKER_FLAGS-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_DEBUG -CMAKE_EXE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_MINSIZEREL -CMAKE_EXE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELEASE -CMAKE_EXE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO -CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_EXPORT_COMPILE_COMMANDS -CMAKE_EXPORT_COMPILE_COMMANDS-ADVANCED:INTERNAL=1 -//Name of external makefile project generator. -CMAKE_EXTRA_GENERATOR:INTERNAL= -//Name of generator. -CMAKE_GENERATOR:INTERNAL=Unix Makefiles -//Generator instance identifier. -CMAKE_GENERATOR_INSTANCE:INTERNAL= -//Name of generator platform. -CMAKE_GENERATOR_PLATFORM:INTERNAL= -//Name of generator toolset. -CMAKE_GENERATOR_TOOLSET:INTERNAL= -//Test CMAKE_HAVE_LIBC_PTHREAD -CMAKE_HAVE_LIBC_PTHREAD:INTERNAL=1 -//Have include pthread.h -CMAKE_HAVE_PTHREAD_H:INTERNAL=1 -//Source directory with the top level CMakeLists.txt file for this -// project -CMAKE_HOME_DIRECTORY:INTERNAL=/home/rene/projects/systemds/src/main/cpp/jni -//Install .so files without execute permission. -CMAKE_INSTALL_SO_NO_EXE:INTERNAL=1 -//ADVANCED property for variable: CMAKE_LINKER -CMAKE_LINKER-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_MAKE_PROGRAM -CMAKE_MAKE_PROGRAM-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS -CMAKE_MODULE_LINKER_FLAGS-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_DEBUG -CMAKE_MODULE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL -CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELEASE -CMAKE_MODULE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO -CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_NM -CMAKE_NM-ADVANCED:INTERNAL=1 -//number of local generators -CMAKE_NUMBER_OF_MAKEFILES:INTERNAL=3 -//ADVANCED property for variable: CMAKE_OBJCOPY -CMAKE_OBJCOPY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_OBJDUMP -CMAKE_OBJDUMP-ADVANCED:INTERNAL=1 -//Platform information initialized -CMAKE_PLATFORM_INFO_INITIALIZED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_RANLIB -CMAKE_RANLIB-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_READELF -CMAKE_READELF-ADVANCED:INTERNAL=1 -//Path to CMake installation. -CMAKE_ROOT:INTERNAL=/usr/share/cmake-3.22 -//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS -CMAKE_SHARED_LINKER_FLAGS-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_DEBUG -CMAKE_SHARED_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL -CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELEASE -CMAKE_SHARED_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO -CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_SKIP_INSTALL_RPATH -CMAKE_SKIP_INSTALL_RPATH-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_SKIP_RPATH -CMAKE_SKIP_RPATH-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS -CMAKE_STATIC_LINKER_FLAGS-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_DEBUG -CMAKE_STATIC_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL -CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELEASE -CMAKE_STATIC_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO -CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_STRIP -CMAKE_STRIP-ADVANCED:INTERNAL=1 -//uname command -CMAKE_UNAME:INTERNAL=/usr/bin/uname -//ADVANCED property for variable: CMAKE_VERBOSE_MAKEFILE -CMAKE_VERBOSE_MAKEFILE-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDAToolkit_NVCC_EXECUTABLE -CUDAToolkit_NVCC_EXECUTABLE-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDAToolkit_rt_LIBRARY -CUDAToolkit_rt_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_CUDART -CUDA_CUDART-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_OpenCL_LIBRARY -CUDA_OpenCL_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_cublasLt_LIBRARY -CUDA_cublasLt_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_cublasLt_static_LIBRARY -CUDA_cublasLt_static_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_cublas_LIBRARY -CUDA_cublas_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_cublas_static_LIBRARY -CUDA_cublas_static_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_cuda_driver_LIBRARY -CUDA_cuda_driver_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_cudart_LIBRARY -CUDA_cudart_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_cudart_static_LIBRARY -CUDA_cudart_static_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_cufft_LIBRARY -CUDA_cufft_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_cufft_static_LIBRARY -CUDA_cufft_static_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_cufftw_LIBRARY -CUDA_cufftw_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_culibos_LIBRARY -CUDA_culibos_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_cupti_LIBRARY -CUDA_cupti_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_cupti_static_LIBRARY -CUDA_cupti_static_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_curand_LIBRARY -CUDA_curand_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_curand_static_LIBRARY -CUDA_curand_static_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_cusolver_LIBRARY -CUDA_cusolver_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_cusolver_static_LIBRARY -CUDA_cusolver_static_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_cusparse_LIBRARY -CUDA_cusparse_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_cusparse_static_LIBRARY -CUDA_cusparse_static_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nppc_LIBRARY -CUDA_nppc_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nppc_static_LIBRARY -CUDA_nppc_static_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nppial_LIBRARY -CUDA_nppial_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nppial_static_LIBRARY -CUDA_nppial_static_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nppicc_LIBRARY -CUDA_nppicc_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nppicc_static_LIBRARY -CUDA_nppicc_static_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nppicom_LIBRARY -CUDA_nppicom_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nppicom_static_LIBRARY -CUDA_nppicom_static_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nppidei_LIBRARY -CUDA_nppidei_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nppidei_static_LIBRARY -CUDA_nppidei_static_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nppif_LIBRARY -CUDA_nppif_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nppif_static_LIBRARY -CUDA_nppif_static_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nppig_LIBRARY -CUDA_nppig_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nppig_static_LIBRARY -CUDA_nppig_static_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nppim_LIBRARY -CUDA_nppim_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nppim_static_LIBRARY -CUDA_nppim_static_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nppist_LIBRARY -CUDA_nppist_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nppist_static_LIBRARY -CUDA_nppist_static_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nppisu_LIBRARY -CUDA_nppisu_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nppisu_static_LIBRARY -CUDA_nppisu_static_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nppitc_LIBRARY -CUDA_nppitc_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nppitc_static_LIBRARY -CUDA_nppitc_static_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_npps_LIBRARY -CUDA_npps_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_npps_static_LIBRARY -CUDA_npps_static_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nvToolsExt_LIBRARY -CUDA_nvToolsExt_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nvgraph_LIBRARY -CUDA_nvgraph_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nvgraph_static_LIBRARY -CUDA_nvgraph_static_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nvjpeg_LIBRARY -CUDA_nvjpeg_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nvjpeg_static_LIBRARY -CUDA_nvjpeg_static_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nvml_LIBRARY -CUDA_nvml_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nvrtc_LIBRARY -CUDA_nvrtc_LIBRARY-ADVANCED:INTERNAL=1 -//Details about finding CUDAToolkit -FIND_PACKAGE_MESSAGE_DETAILS_CUDAToolkit:INTERNAL=[/usr/local/cuda-12.6/include][/usr/local/cuda-12.6/lib64/libcudart.so][/usr/local/cuda-12.6/bin][v12.6.85()] -//Details about finding JNI -FIND_PACKAGE_MESSAGE_DETAILS_JNI:INTERNAL=[/usr/lib/jvm/java-11-openjdk-amd64/lib/libjawt.so][/usr/lib/jvm/java-11-openjdk-amd64/lib/server/libjvm.so][/usr/lib/jvm/java-11-openjdk-amd64/include][/usr/lib/jvm/java-11-openjdk-amd64/include/linux][/usr/lib/jvm/java-11-openjdk-amd64/include][v()] -//Details about finding Threads -FIND_PACKAGE_MESSAGE_DETAILS_Threads:INTERNAL=[TRUE][v()] -//ADVANCED property for variable: JAVA_AWT_INCLUDE_PATH -JAVA_AWT_INCLUDE_PATH-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: JAVA_AWT_LIBRARY -JAVA_AWT_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: JAVA_INCLUDE_PATH -JAVA_INCLUDE_PATH-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: JAVA_INCLUDE_PATH2 -JAVA_INCLUDE_PATH2-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: JAVA_JVM_LIBRARY -JAVA_JVM_LIBRARY-ADVANCED:INTERNAL=1 - diff --git a/src/main/cpp/jni/build/CMakeFiles/3.22.1/CMakeCXXCompiler.cmake b/src/main/cpp/jni/build/CMakeFiles/3.22.1/CMakeCXXCompiler.cmake deleted file mode 100644 index 08880e71e24..00000000000 --- a/src/main/cpp/jni/build/CMakeFiles/3.22.1/CMakeCXXCompiler.cmake +++ /dev/null @@ -1,83 +0,0 @@ -set(CMAKE_CXX_COMPILER "/usr/bin/c++") -set(CMAKE_CXX_COMPILER_ARG1 "") -set(CMAKE_CXX_COMPILER_ID "GNU") -set(CMAKE_CXX_COMPILER_VERSION "12.3.0") -set(CMAKE_CXX_COMPILER_VERSION_INTERNAL "") -set(CMAKE_CXX_COMPILER_WRAPPER "") -set(CMAKE_CXX_STANDARD_COMPUTED_DEFAULT "17") -set(CMAKE_CXX_EXTENSIONS_COMPUTED_DEFAULT "ON") -set(CMAKE_CXX_COMPILE_FEATURES "cxx_std_98;cxx_template_template_parameters;cxx_std_11;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates;cxx_std_14;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates;cxx_std_17;cxx_std_20;cxx_std_23") -set(CMAKE_CXX98_COMPILE_FEATURES "cxx_std_98;cxx_template_template_parameters") -set(CMAKE_CXX11_COMPILE_FEATURES "cxx_std_11;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates") -set(CMAKE_CXX14_COMPILE_FEATURES "cxx_std_14;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates") -set(CMAKE_CXX17_COMPILE_FEATURES "cxx_std_17") -set(CMAKE_CXX20_COMPILE_FEATURES "cxx_std_20") -set(CMAKE_CXX23_COMPILE_FEATURES "cxx_std_23") - -set(CMAKE_CXX_PLATFORM_ID "Linux") -set(CMAKE_CXX_SIMULATE_ID "") -set(CMAKE_CXX_COMPILER_FRONTEND_VARIANT "") -set(CMAKE_CXX_SIMULATE_VERSION "") - - - - -set(CMAKE_AR "/usr/bin/ar") -set(CMAKE_CXX_COMPILER_AR "/usr/bin/gcc-ar-12") -set(CMAKE_RANLIB "/usr/bin/ranlib") -set(CMAKE_CXX_COMPILER_RANLIB "/usr/bin/gcc-ranlib-12") -set(CMAKE_LINKER "/usr/bin/ld") -set(CMAKE_MT "") -set(CMAKE_COMPILER_IS_GNUCXX 1) -set(CMAKE_CXX_COMPILER_LOADED 1) -set(CMAKE_CXX_COMPILER_WORKS TRUE) -set(CMAKE_CXX_ABI_COMPILED TRUE) - -set(CMAKE_CXX_COMPILER_ENV_VAR "CXX") - -set(CMAKE_CXX_COMPILER_ID_RUN 1) -set(CMAKE_CXX_SOURCE_FILE_EXTENSIONS C;M;c++;cc;cpp;cxx;m;mm;mpp;CPP;ixx;cppm) -set(CMAKE_CXX_IGNORE_EXTENSIONS inl;h;hpp;HPP;H;o;O;obj;OBJ;def;DEF;rc;RC) - -foreach (lang C OBJC OBJCXX) - if (CMAKE_${lang}_COMPILER_ID_RUN) - foreach(extension IN LISTS CMAKE_${lang}_SOURCE_FILE_EXTENSIONS) - list(REMOVE_ITEM CMAKE_CXX_SOURCE_FILE_EXTENSIONS ${extension}) - endforeach() - endif() -endforeach() - -set(CMAKE_CXX_LINKER_PREFERENCE 30) -set(CMAKE_CXX_LINKER_PREFERENCE_PROPAGATES 1) - -# Save compiler ABI information. -set(CMAKE_CXX_SIZEOF_DATA_PTR "8") -set(CMAKE_CXX_COMPILER_ABI "ELF") -set(CMAKE_CXX_BYTE_ORDER "LITTLE_ENDIAN") -set(CMAKE_CXX_LIBRARY_ARCHITECTURE "x86_64-linux-gnu") - -if(CMAKE_CXX_SIZEOF_DATA_PTR) - set(CMAKE_SIZEOF_VOID_P "${CMAKE_CXX_SIZEOF_DATA_PTR}") -endif() - -if(CMAKE_CXX_COMPILER_ABI) - set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_CXX_COMPILER_ABI}") -endif() - -if(CMAKE_CXX_LIBRARY_ARCHITECTURE) - set(CMAKE_LIBRARY_ARCHITECTURE "x86_64-linux-gnu") -endif() - -set(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX "") -if(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX) - set(CMAKE_CL_SHOWINCLUDES_PREFIX "${CMAKE_CXX_CL_SHOWINCLUDES_PREFIX}") -endif() - - - - - -set(CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES "/usr/include/c++/12;/usr/include/x86_64-linux-gnu/c++/12;/usr/include/c++/12/backward;/usr/lib/gcc/x86_64-linux-gnu/12/include;/usr/local/include;/usr/include/x86_64-linux-gnu;/usr/include") -set(CMAKE_CXX_IMPLICIT_LINK_LIBRARIES "stdc++;m;gcc_s;gcc;c;gcc_s;gcc") -set(CMAKE_CXX_IMPLICIT_LINK_DIRECTORIES "/usr/lib/gcc/x86_64-linux-gnu/12;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib") -set(CMAKE_CXX_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "") diff --git a/src/main/cpp/jni/build/CMakeFiles/3.22.1/CMakeDetermineCompilerABI_CXX.bin b/src/main/cpp/jni/build/CMakeFiles/3.22.1/CMakeDetermineCompilerABI_CXX.bin deleted file mode 100755 index be4688452097ca7d724b10c7ea18ff3d8978dbbc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15992 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 diff --git a/src/main/cpp/jni/build/CMakeFiles/3.22.1/CMakeSystem.cmake b/src/main/cpp/jni/build/CMakeFiles/3.22.1/CMakeSystem.cmake deleted file mode 100644 index c1d7ea84b21..00000000000 --- a/src/main/cpp/jni/build/CMakeFiles/3.22.1/CMakeSystem.cmake +++ /dev/null @@ -1,15 +0,0 @@ -set(CMAKE_HOST_SYSTEM "Linux-6.8.0-65-generic") -set(CMAKE_HOST_SYSTEM_NAME "Linux") -set(CMAKE_HOST_SYSTEM_VERSION "6.8.0-65-generic") -set(CMAKE_HOST_SYSTEM_PROCESSOR "x86_64") - - - -set(CMAKE_SYSTEM "Linux-6.8.0-65-generic") -set(CMAKE_SYSTEM_NAME "Linux") -set(CMAKE_SYSTEM_VERSION "6.8.0-65-generic") -set(CMAKE_SYSTEM_PROCESSOR "x86_64") - -set(CMAKE_CROSSCOMPILING "FALSE") - -set(CMAKE_SYSTEM_LOADED 1) diff --git a/src/main/cpp/jni/build/CMakeFiles/3.22.1/CompilerIdCXX/CMakeCXXCompilerId.cpp b/src/main/cpp/jni/build/CMakeFiles/3.22.1/CompilerIdCXX/CMakeCXXCompilerId.cpp deleted file mode 100644 index 25c62a8c3cb..00000000000 --- a/src/main/cpp/jni/build/CMakeFiles/3.22.1/CompilerIdCXX/CMakeCXXCompilerId.cpp +++ /dev/null @@ -1,791 +0,0 @@ -/* This source file must have a .cpp extension so that all C++ compilers - recognize the extension without flags. Borland does not know .cxx for - example. */ -#ifndef __cplusplus -# error "A C compiler has been selected for C++." -#endif - -#if !defined(__has_include) -/* If the compiler does not have __has_include, pretend the answer is - always no. */ -# define __has_include(x) 0 -#endif - - -/* Version number components: V=Version, R=Revision, P=Patch - Version date components: YYYY=Year, MM=Month, DD=Day */ - -#if defined(__COMO__) -# define COMPILER_ID "Comeau" - /* __COMO_VERSION__ = VRR */ -# define COMPILER_VERSION_MAJOR DEC(__COMO_VERSION__ / 100) -# define COMPILER_VERSION_MINOR DEC(__COMO_VERSION__ % 100) - -#elif defined(__INTEL_COMPILER) || defined(__ICC) -# define COMPILER_ID "Intel" -# if defined(_MSC_VER) -# define SIMULATE_ID "MSVC" -# endif -# if defined(__GNUC__) -# define SIMULATE_ID "GNU" -# endif - /* __INTEL_COMPILER = VRP prior to 2021, and then VVVV for 2021 and later, - except that a few beta releases use the old format with V=2021. */ -# if __INTEL_COMPILER < 2021 || __INTEL_COMPILER == 202110 || __INTEL_COMPILER == 202111 -# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER/100) -# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER/10 % 10) -# if defined(__INTEL_COMPILER_UPDATE) -# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER_UPDATE) -# else -# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER % 10) -# endif -# else -# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER) -# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER_UPDATE) - /* The third version component from --version is an update index, - but no macro is provided for it. */ -# define COMPILER_VERSION_PATCH DEC(0) -# endif -# if defined(__INTEL_COMPILER_BUILD_DATE) - /* __INTEL_COMPILER_BUILD_DATE = YYYYMMDD */ -# define COMPILER_VERSION_TWEAK DEC(__INTEL_COMPILER_BUILD_DATE) -# endif -# if defined(_MSC_VER) - /* _MSC_VER = VVRR */ -# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) -# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) -# endif -# if defined(__GNUC__) -# define SIMULATE_VERSION_MAJOR DEC(__GNUC__) -# elif defined(__GNUG__) -# define SIMULATE_VERSION_MAJOR DEC(__GNUG__) -# endif -# if defined(__GNUC_MINOR__) -# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__) -# endif -# if defined(__GNUC_PATCHLEVEL__) -# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) -# endif - -#elif (defined(__clang__) && defined(__INTEL_CLANG_COMPILER)) || defined(__INTEL_LLVM_COMPILER) -# define COMPILER_ID "IntelLLVM" -#if defined(_MSC_VER) -# define SIMULATE_ID "MSVC" -#endif -#if defined(__GNUC__) -# define SIMULATE_ID "GNU" -#endif -/* __INTEL_LLVM_COMPILER = VVVVRP prior to 2021.2.0, VVVVRRPP for 2021.2.0 and - * later. Look for 6 digit vs. 8 digit version number to decide encoding. - * VVVV is no smaller than the current year when a version is released. - */ -#if __INTEL_LLVM_COMPILER < 1000000L -# define COMPILER_VERSION_MAJOR DEC(__INTEL_LLVM_COMPILER/100) -# define COMPILER_VERSION_MINOR DEC(__INTEL_LLVM_COMPILER/10 % 10) -# define COMPILER_VERSION_PATCH DEC(__INTEL_LLVM_COMPILER % 10) -#else -# define COMPILER_VERSION_MAJOR DEC(__INTEL_LLVM_COMPILER/10000) -# define COMPILER_VERSION_MINOR DEC(__INTEL_LLVM_COMPILER/100 % 100) -# define COMPILER_VERSION_PATCH DEC(__INTEL_LLVM_COMPILER % 100) -#endif -#if defined(_MSC_VER) - /* _MSC_VER = VVRR */ -# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) -# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) -#endif -#if defined(__GNUC__) -# define SIMULATE_VERSION_MAJOR DEC(__GNUC__) -#elif defined(__GNUG__) -# define SIMULATE_VERSION_MAJOR DEC(__GNUG__) -#endif -#if defined(__GNUC_MINOR__) -# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__) -#endif -#if defined(__GNUC_PATCHLEVEL__) -# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) -#endif - -#elif defined(__PATHCC__) -# define COMPILER_ID "PathScale" -# define COMPILER_VERSION_MAJOR DEC(__PATHCC__) -# define COMPILER_VERSION_MINOR DEC(__PATHCC_MINOR__) -# if defined(__PATHCC_PATCHLEVEL__) -# define COMPILER_VERSION_PATCH DEC(__PATHCC_PATCHLEVEL__) -# endif - -#elif defined(__BORLANDC__) && defined(__CODEGEARC_VERSION__) -# define COMPILER_ID "Embarcadero" -# define COMPILER_VERSION_MAJOR HEX(__CODEGEARC_VERSION__>>24 & 0x00FF) -# define COMPILER_VERSION_MINOR HEX(__CODEGEARC_VERSION__>>16 & 0x00FF) -# define COMPILER_VERSION_PATCH DEC(__CODEGEARC_VERSION__ & 0xFFFF) - -#elif defined(__BORLANDC__) -# define COMPILER_ID "Borland" - /* __BORLANDC__ = 0xVRR */ -# define COMPILER_VERSION_MAJOR HEX(__BORLANDC__>>8) -# define COMPILER_VERSION_MINOR HEX(__BORLANDC__ & 0xFF) - -#elif defined(__WATCOMC__) && __WATCOMC__ < 1200 -# define COMPILER_ID "Watcom" - /* __WATCOMC__ = VVRR */ -# define COMPILER_VERSION_MAJOR DEC(__WATCOMC__ / 100) -# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10) -# if (__WATCOMC__ % 10) > 0 -# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10) -# endif - -#elif defined(__WATCOMC__) -# define COMPILER_ID "OpenWatcom" - /* __WATCOMC__ = VVRP + 1100 */ -# define COMPILER_VERSION_MAJOR DEC((__WATCOMC__ - 1100) / 100) -# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10) -# if (__WATCOMC__ % 10) > 0 -# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10) -# endif - -#elif defined(__SUNPRO_CC) -# define COMPILER_ID "SunPro" -# if __SUNPRO_CC >= 0x5100 - /* __SUNPRO_CC = 0xVRRP */ -# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>12) -# define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xFF) -# define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC & 0xF) -# else - /* __SUNPRO_CC = 0xVRP */ -# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>8) -# define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xF) -# define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC & 0xF) -# endif - -#elif defined(__HP_aCC) -# define COMPILER_ID "HP" - /* __HP_aCC = VVRRPP */ -# define COMPILER_VERSION_MAJOR DEC(__HP_aCC/10000) -# define COMPILER_VERSION_MINOR DEC(__HP_aCC/100 % 100) -# define COMPILER_VERSION_PATCH DEC(__HP_aCC % 100) - -#elif defined(__DECCXX) -# define COMPILER_ID "Compaq" - /* __DECCXX_VER = VVRRTPPPP */ -# define COMPILER_VERSION_MAJOR DEC(__DECCXX_VER/10000000) -# define COMPILER_VERSION_MINOR DEC(__DECCXX_VER/100000 % 100) -# define COMPILER_VERSION_PATCH DEC(__DECCXX_VER % 10000) - -#elif defined(__IBMCPP__) && defined(__COMPILER_VER__) -# define COMPILER_ID "zOS" - /* __IBMCPP__ = VRP */ -# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100) -# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10) -# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10) - -#elif defined(__ibmxl__) && defined(__clang__) -# define COMPILER_ID "XLClang" -# define COMPILER_VERSION_MAJOR DEC(__ibmxl_version__) -# define COMPILER_VERSION_MINOR DEC(__ibmxl_release__) -# define COMPILER_VERSION_PATCH DEC(__ibmxl_modification__) -# define COMPILER_VERSION_TWEAK DEC(__ibmxl_ptf_fix_level__) - - -#elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ >= 800 -# define COMPILER_ID "XL" - /* __IBMCPP__ = VRP */ -# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100) -# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10) -# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10) - -#elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ < 800 -# define COMPILER_ID "VisualAge" - /* __IBMCPP__ = VRP */ -# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100) -# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10) -# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10) - -#elif defined(__NVCOMPILER) -# define COMPILER_ID "NVHPC" -# define COMPILER_VERSION_MAJOR DEC(__NVCOMPILER_MAJOR__) -# define COMPILER_VERSION_MINOR DEC(__NVCOMPILER_MINOR__) -# if defined(__NVCOMPILER_PATCHLEVEL__) -# define COMPILER_VERSION_PATCH DEC(__NVCOMPILER_PATCHLEVEL__) -# endif - -#elif defined(__PGI) -# define COMPILER_ID "PGI" -# define COMPILER_VERSION_MAJOR DEC(__PGIC__) -# define COMPILER_VERSION_MINOR DEC(__PGIC_MINOR__) -# if defined(__PGIC_PATCHLEVEL__) -# define COMPILER_VERSION_PATCH DEC(__PGIC_PATCHLEVEL__) -# endif - -#elif defined(_CRAYC) -# define COMPILER_ID "Cray" -# define COMPILER_VERSION_MAJOR DEC(_RELEASE_MAJOR) -# define COMPILER_VERSION_MINOR DEC(_RELEASE_MINOR) - -#elif defined(__TI_COMPILER_VERSION__) -# define COMPILER_ID "TI" - /* __TI_COMPILER_VERSION__ = VVVRRRPPP */ -# define COMPILER_VERSION_MAJOR DEC(__TI_COMPILER_VERSION__/1000000) -# define COMPILER_VERSION_MINOR DEC(__TI_COMPILER_VERSION__/1000 % 1000) -# define COMPILER_VERSION_PATCH DEC(__TI_COMPILER_VERSION__ % 1000) - -#elif defined(__CLANG_FUJITSU) -# define COMPILER_ID "FujitsuClang" -# define COMPILER_VERSION_MAJOR DEC(__FCC_major__) -# define COMPILER_VERSION_MINOR DEC(__FCC_minor__) -# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__) -# define COMPILER_VERSION_INTERNAL_STR __clang_version__ - - -#elif defined(__FUJITSU) -# define COMPILER_ID "Fujitsu" -# if defined(__FCC_version__) -# define COMPILER_VERSION __FCC_version__ -# elif defined(__FCC_major__) -# define COMPILER_VERSION_MAJOR DEC(__FCC_major__) -# define COMPILER_VERSION_MINOR DEC(__FCC_minor__) -# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__) -# endif -# if defined(__fcc_version) -# define COMPILER_VERSION_INTERNAL DEC(__fcc_version) -# elif defined(__FCC_VERSION) -# define COMPILER_VERSION_INTERNAL DEC(__FCC_VERSION) -# endif - - -#elif defined(__ghs__) -# define COMPILER_ID "GHS" -/* __GHS_VERSION_NUMBER = VVVVRP */ -# ifdef __GHS_VERSION_NUMBER -# define COMPILER_VERSION_MAJOR DEC(__GHS_VERSION_NUMBER / 100) -# define COMPILER_VERSION_MINOR DEC(__GHS_VERSION_NUMBER / 10 % 10) -# define COMPILER_VERSION_PATCH DEC(__GHS_VERSION_NUMBER % 10) -# endif - -#elif defined(__SCO_VERSION__) -# define COMPILER_ID "SCO" - -#elif defined(__ARMCC_VERSION) && !defined(__clang__) -# define COMPILER_ID "ARMCC" -#if __ARMCC_VERSION >= 1000000 - /* __ARMCC_VERSION = VRRPPPP */ - # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/1000000) - # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 100) - # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000) -#else - /* __ARMCC_VERSION = VRPPPP */ - # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/100000) - # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 10) - # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000) -#endif - - -#elif defined(__clang__) && defined(__apple_build_version__) -# define COMPILER_ID "AppleClang" -# if defined(_MSC_VER) -# define SIMULATE_ID "MSVC" -# endif -# define COMPILER_VERSION_MAJOR DEC(__clang_major__) -# define COMPILER_VERSION_MINOR DEC(__clang_minor__) -# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__) -# if defined(_MSC_VER) - /* _MSC_VER = VVRR */ -# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) -# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) -# endif -# define COMPILER_VERSION_TWEAK DEC(__apple_build_version__) - -#elif defined(__clang__) && defined(__ARMCOMPILER_VERSION) -# define COMPILER_ID "ARMClang" - # define COMPILER_VERSION_MAJOR DEC(__ARMCOMPILER_VERSION/1000000) - # define COMPILER_VERSION_MINOR DEC(__ARMCOMPILER_VERSION/10000 % 100) - # define COMPILER_VERSION_PATCH DEC(__ARMCOMPILER_VERSION % 10000) -# define COMPILER_VERSION_INTERNAL DEC(__ARMCOMPILER_VERSION) - -#elif defined(__clang__) -# define COMPILER_ID "Clang" -# if defined(_MSC_VER) -# define SIMULATE_ID "MSVC" -# endif -# define COMPILER_VERSION_MAJOR DEC(__clang_major__) -# define COMPILER_VERSION_MINOR DEC(__clang_minor__) -# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__) -# if defined(_MSC_VER) - /* _MSC_VER = VVRR */ -# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) -# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) -# endif - -#elif defined(__GNUC__) || defined(__GNUG__) -# define COMPILER_ID "GNU" -# if defined(__GNUC__) -# define COMPILER_VERSION_MAJOR DEC(__GNUC__) -# else -# define COMPILER_VERSION_MAJOR DEC(__GNUG__) -# endif -# if defined(__GNUC_MINOR__) -# define COMPILER_VERSION_MINOR DEC(__GNUC_MINOR__) -# endif -# if defined(__GNUC_PATCHLEVEL__) -# define COMPILER_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) -# endif - -#elif defined(_MSC_VER) -# define COMPILER_ID "MSVC" - /* _MSC_VER = VVRR */ -# define COMPILER_VERSION_MAJOR DEC(_MSC_VER / 100) -# define COMPILER_VERSION_MINOR DEC(_MSC_VER % 100) -# if defined(_MSC_FULL_VER) -# if _MSC_VER >= 1400 - /* _MSC_FULL_VER = VVRRPPPPP */ -# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 100000) -# else - /* _MSC_FULL_VER = VVRRPPPP */ -# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 10000) -# endif -# endif -# if defined(_MSC_BUILD) -# define COMPILER_VERSION_TWEAK DEC(_MSC_BUILD) -# endif - -#elif defined(__VISUALDSPVERSION__) || defined(__ADSPBLACKFIN__) || defined(__ADSPTS__) || defined(__ADSP21000__) -# define COMPILER_ID "ADSP" -#if defined(__VISUALDSPVERSION__) - /* __VISUALDSPVERSION__ = 0xVVRRPP00 */ -# define COMPILER_VERSION_MAJOR HEX(__VISUALDSPVERSION__>>24) -# define COMPILER_VERSION_MINOR HEX(__VISUALDSPVERSION__>>16 & 0xFF) -# define COMPILER_VERSION_PATCH HEX(__VISUALDSPVERSION__>>8 & 0xFF) -#endif - -#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC) -# define COMPILER_ID "IAR" -# if defined(__VER__) && defined(__ICCARM__) -# define COMPILER_VERSION_MAJOR DEC((__VER__) / 1000000) -# define COMPILER_VERSION_MINOR DEC(((__VER__) / 1000) % 1000) -# define COMPILER_VERSION_PATCH DEC((__VER__) % 1000) -# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__) -# elif defined(__VER__) && (defined(__ICCAVR__) || defined(__ICCRX__) || defined(__ICCRH850__) || defined(__ICCRL78__) || defined(__ICC430__) || defined(__ICCRISCV__) || defined(__ICCV850__) || defined(__ICC8051__) || defined(__ICCSTM8__)) -# define COMPILER_VERSION_MAJOR DEC((__VER__) / 100) -# define COMPILER_VERSION_MINOR DEC((__VER__) - (((__VER__) / 100)*100)) -# define COMPILER_VERSION_PATCH DEC(__SUBVERSION__) -# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__) -# endif - - -/* These compilers are either not known or too old to define an - identification macro. Try to identify the platform and guess that - it is the native compiler. */ -#elif defined(__hpux) || defined(__hpua) -# define COMPILER_ID "HP" - -#else /* unknown compiler */ -# define COMPILER_ID "" -#endif - -/* Construct the string literal in pieces to prevent the source from - getting matched. Store it in a pointer rather than an array - because some compilers will just produce instructions to fill the - array rather than assigning a pointer to a static array. */ -char const* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]"; -#ifdef SIMULATE_ID -char const* info_simulate = "INFO" ":" "simulate[" SIMULATE_ID "]"; -#endif - -#ifdef __QNXNTO__ -char const* qnxnto = "INFO" ":" "qnxnto[]"; -#endif - -#if defined(__CRAYXT_COMPUTE_LINUX_TARGET) -char const *info_cray = "INFO" ":" "compiler_wrapper[CrayPrgEnv]"; -#endif - -#define STRINGIFY_HELPER(X) #X -#define STRINGIFY(X) STRINGIFY_HELPER(X) - -/* Identify known platforms by name. */ -#if defined(__linux) || defined(__linux__) || defined(linux) -# define PLATFORM_ID "Linux" - -#elif defined(__MSYS__) -# define PLATFORM_ID "MSYS" - -#elif defined(__CYGWIN__) -# define PLATFORM_ID "Cygwin" - -#elif defined(__MINGW32__) -# define PLATFORM_ID "MinGW" - -#elif defined(__APPLE__) -# define PLATFORM_ID "Darwin" - -#elif defined(_WIN32) || defined(__WIN32__) || defined(WIN32) -# define PLATFORM_ID "Windows" - -#elif defined(__FreeBSD__) || defined(__FreeBSD) -# define PLATFORM_ID "FreeBSD" - -#elif defined(__NetBSD__) || defined(__NetBSD) -# define PLATFORM_ID "NetBSD" - -#elif defined(__OpenBSD__) || defined(__OPENBSD) -# define PLATFORM_ID "OpenBSD" - -#elif defined(__sun) || defined(sun) -# define PLATFORM_ID "SunOS" - -#elif defined(_AIX) || defined(__AIX) || defined(__AIX__) || defined(__aix) || defined(__aix__) -# define PLATFORM_ID "AIX" - -#elif defined(__hpux) || defined(__hpux__) -# define PLATFORM_ID "HP-UX" - -#elif defined(__HAIKU__) -# define PLATFORM_ID "Haiku" - -#elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS) -# define PLATFORM_ID "BeOS" - -#elif defined(__QNX__) || defined(__QNXNTO__) -# define PLATFORM_ID "QNX" - -#elif defined(__tru64) || defined(_tru64) || defined(__TRU64__) -# define PLATFORM_ID "Tru64" - -#elif defined(__riscos) || defined(__riscos__) -# define PLATFORM_ID "RISCos" - -#elif defined(__sinix) || defined(__sinix__) || defined(__SINIX__) -# define PLATFORM_ID "SINIX" - -#elif defined(__UNIX_SV__) -# define PLATFORM_ID "UNIX_SV" - -#elif defined(__bsdos__) -# define PLATFORM_ID "BSDOS" - -#elif defined(_MPRAS) || defined(MPRAS) -# define PLATFORM_ID "MP-RAS" - -#elif defined(__osf) || defined(__osf__) -# define PLATFORM_ID "OSF1" - -#elif defined(_SCO_SV) || defined(SCO_SV) || defined(sco_sv) -# define PLATFORM_ID "SCO_SV" - -#elif defined(__ultrix) || defined(__ultrix__) || defined(_ULTRIX) -# define PLATFORM_ID "ULTRIX" - -#elif defined(__XENIX__) || defined(_XENIX) || defined(XENIX) -# define PLATFORM_ID "Xenix" - -#elif defined(__WATCOMC__) -# if defined(__LINUX__) -# define PLATFORM_ID "Linux" - -# elif defined(__DOS__) -# define PLATFORM_ID "DOS" - -# elif defined(__OS2__) -# define PLATFORM_ID "OS2" - -# elif defined(__WINDOWS__) -# define PLATFORM_ID "Windows3x" - -# elif defined(__VXWORKS__) -# define PLATFORM_ID "VxWorks" - -# else /* unknown platform */ -# define PLATFORM_ID -# endif - -#elif defined(__INTEGRITY) -# if defined(INT_178B) -# define PLATFORM_ID "Integrity178" - -# else /* regular Integrity */ -# define PLATFORM_ID "Integrity" -# endif - -#else /* unknown platform */ -# define PLATFORM_ID - -#endif - -/* For windows compilers MSVC and Intel we can determine - the architecture of the compiler being used. This is because - the compilers do not have flags that can change the architecture, - but rather depend on which compiler is being used -*/ -#if defined(_WIN32) && defined(_MSC_VER) -# if defined(_M_IA64) -# define ARCHITECTURE_ID "IA64" - -# elif defined(_M_ARM64EC) -# define ARCHITECTURE_ID "ARM64EC" - -# elif defined(_M_X64) || defined(_M_AMD64) -# define ARCHITECTURE_ID "x64" - -# elif defined(_M_IX86) -# define ARCHITECTURE_ID "X86" - -# elif defined(_M_ARM64) -# define ARCHITECTURE_ID "ARM64" - -# elif defined(_M_ARM) -# if _M_ARM == 4 -# define ARCHITECTURE_ID "ARMV4I" -# elif _M_ARM == 5 -# define ARCHITECTURE_ID "ARMV5I" -# else -# define ARCHITECTURE_ID "ARMV" STRINGIFY(_M_ARM) -# endif - -# elif defined(_M_MIPS) -# define ARCHITECTURE_ID "MIPS" - -# elif defined(_M_SH) -# define ARCHITECTURE_ID "SHx" - -# else /* unknown architecture */ -# define ARCHITECTURE_ID "" -# endif - -#elif defined(__WATCOMC__) -# if defined(_M_I86) -# define ARCHITECTURE_ID "I86" - -# elif defined(_M_IX86) -# define ARCHITECTURE_ID "X86" - -# else /* unknown architecture */ -# define ARCHITECTURE_ID "" -# endif - -#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC) -# if defined(__ICCARM__) -# define ARCHITECTURE_ID "ARM" - -# elif defined(__ICCRX__) -# define ARCHITECTURE_ID "RX" - -# elif defined(__ICCRH850__) -# define ARCHITECTURE_ID "RH850" - -# elif defined(__ICCRL78__) -# define ARCHITECTURE_ID "RL78" - -# elif defined(__ICCRISCV__) -# define ARCHITECTURE_ID "RISCV" - -# elif defined(__ICCAVR__) -# define ARCHITECTURE_ID "AVR" - -# elif defined(__ICC430__) -# define ARCHITECTURE_ID "MSP430" - -# elif defined(__ICCV850__) -# define ARCHITECTURE_ID "V850" - -# elif defined(__ICC8051__) -# define ARCHITECTURE_ID "8051" - -# elif defined(__ICCSTM8__) -# define ARCHITECTURE_ID "STM8" - -# else /* unknown architecture */ -# define ARCHITECTURE_ID "" -# endif - -#elif defined(__ghs__) -# if defined(__PPC64__) -# define ARCHITECTURE_ID "PPC64" - -# elif defined(__ppc__) -# define ARCHITECTURE_ID "PPC" - -# elif defined(__ARM__) -# define ARCHITECTURE_ID "ARM" - -# elif defined(__x86_64__) -# define ARCHITECTURE_ID "x64" - -# elif defined(__i386__) -# define ARCHITECTURE_ID "X86" - -# else /* unknown architecture */ -# define ARCHITECTURE_ID "" -# endif - -#elif defined(__TI_COMPILER_VERSION__) -# if defined(__TI_ARM__) -# define ARCHITECTURE_ID "ARM" - -# elif defined(__MSP430__) -# define ARCHITECTURE_ID "MSP430" - -# elif defined(__TMS320C28XX__) -# define ARCHITECTURE_ID "TMS320C28x" - -# elif defined(__TMS320C6X__) || defined(_TMS320C6X) -# define ARCHITECTURE_ID "TMS320C6x" - -# else /* unknown architecture */ -# define ARCHITECTURE_ID "" -# endif - -#else -# define ARCHITECTURE_ID -#endif - -/* Convert integer to decimal digit literals. */ -#define DEC(n) \ - ('0' + (((n) / 10000000)%10)), \ - ('0' + (((n) / 1000000)%10)), \ - ('0' + (((n) / 100000)%10)), \ - ('0' + (((n) / 10000)%10)), \ - ('0' + (((n) / 1000)%10)), \ - ('0' + (((n) / 100)%10)), \ - ('0' + (((n) / 10)%10)), \ - ('0' + ((n) % 10)) - -/* Convert integer to hex digit literals. */ -#define HEX(n) \ - ('0' + ((n)>>28 & 0xF)), \ - ('0' + ((n)>>24 & 0xF)), \ - ('0' + ((n)>>20 & 0xF)), \ - ('0' + ((n)>>16 & 0xF)), \ - ('0' + ((n)>>12 & 0xF)), \ - ('0' + ((n)>>8 & 0xF)), \ - ('0' + ((n)>>4 & 0xF)), \ - ('0' + ((n) & 0xF)) - -/* Construct a string literal encoding the version number. */ -#ifdef COMPILER_VERSION -char const* info_version = "INFO" ":" "compiler_version[" COMPILER_VERSION "]"; - -/* Construct a string literal encoding the version number components. */ -#elif defined(COMPILER_VERSION_MAJOR) -char const info_version[] = { - 'I', 'N', 'F', 'O', ':', - 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','[', - COMPILER_VERSION_MAJOR, -# ifdef COMPILER_VERSION_MINOR - '.', COMPILER_VERSION_MINOR, -# ifdef COMPILER_VERSION_PATCH - '.', COMPILER_VERSION_PATCH, -# ifdef COMPILER_VERSION_TWEAK - '.', COMPILER_VERSION_TWEAK, -# endif -# endif -# endif - ']','\0'}; -#endif - -/* Construct a string literal encoding the internal version number. */ -#ifdef COMPILER_VERSION_INTERNAL -char const info_version_internal[] = { - 'I', 'N', 'F', 'O', ':', - 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','_', - 'i','n','t','e','r','n','a','l','[', - COMPILER_VERSION_INTERNAL,']','\0'}; -#elif defined(COMPILER_VERSION_INTERNAL_STR) -char const* info_version_internal = "INFO" ":" "compiler_version_internal[" COMPILER_VERSION_INTERNAL_STR "]"; -#endif - -/* Construct a string literal encoding the version number components. */ -#ifdef SIMULATE_VERSION_MAJOR -char const info_simulate_version[] = { - 'I', 'N', 'F', 'O', ':', - 's','i','m','u','l','a','t','e','_','v','e','r','s','i','o','n','[', - SIMULATE_VERSION_MAJOR, -# ifdef SIMULATE_VERSION_MINOR - '.', SIMULATE_VERSION_MINOR, -# ifdef SIMULATE_VERSION_PATCH - '.', SIMULATE_VERSION_PATCH, -# ifdef SIMULATE_VERSION_TWEAK - '.', SIMULATE_VERSION_TWEAK, -# endif -# endif -# endif - ']','\0'}; -#endif - -/* Construct the string literal in pieces to prevent the source from - getting matched. Store it in a pointer rather than an array - because some compilers will just produce instructions to fill the - array rather than assigning a pointer to a static array. */ -char const* info_platform = "INFO" ":" "platform[" PLATFORM_ID "]"; -char const* info_arch = "INFO" ":" "arch[" ARCHITECTURE_ID "]"; - - - -#if defined(__INTEL_COMPILER) && defined(_MSVC_LANG) && _MSVC_LANG < 201403L -# if defined(__INTEL_CXX11_MODE__) -# if defined(__cpp_aggregate_nsdmi) -# define CXX_STD 201402L -# else -# define CXX_STD 201103L -# endif -# else -# define CXX_STD 199711L -# endif -#elif defined(_MSC_VER) && defined(_MSVC_LANG) -# define CXX_STD _MSVC_LANG -#else -# define CXX_STD __cplusplus -#endif - -const char* info_language_standard_default = "INFO" ":" "standard_default[" -#if CXX_STD > 202002L - "23" -#elif CXX_STD > 201703L - "20" -#elif CXX_STD >= 201703L - "17" -#elif CXX_STD >= 201402L - "14" -#elif CXX_STD >= 201103L - "11" -#else - "98" -#endif -"]"; - -const char* info_language_extensions_default = "INFO" ":" "extensions_default[" -/* !defined(_MSC_VER) to exclude Clang's MSVC compatibility mode. */ -#if (defined(__clang__) || defined(__GNUC__) || \ - defined(__TI_COMPILER_VERSION__)) && \ - !defined(__STRICT_ANSI__) && !defined(_MSC_VER) - "ON" -#else - "OFF" -#endif -"]"; - -/*--------------------------------------------------------------------------*/ - -int main(int argc, char* argv[]) -{ - int require = 0; - require += info_compiler[argc]; - require += info_platform[argc]; -#ifdef COMPILER_VERSION_MAJOR - require += info_version[argc]; -#endif -#ifdef COMPILER_VERSION_INTERNAL - require += info_version_internal[argc]; -#endif -#ifdef SIMULATE_ID - require += info_simulate[argc]; -#endif -#ifdef SIMULATE_VERSION_MAJOR - require += info_simulate_version[argc]; -#endif -#if defined(__CRAYXT_COMPUTE_LINUX_TARGET) - require += info_cray[argc]; -#endif - require += info_language_standard_default[argc]; - require += info_language_extensions_default[argc]; - (void)argv; - return require; -} diff --git a/src/main/cpp/jni/build/CMakeFiles/3.22.1/CompilerIdCXX/a.out b/src/main/cpp/jni/build/CMakeFiles/3.22.1/CompilerIdCXX/a.out deleted file mode 100755 index 9fe81eee4abb75ec64309c98d682c547d65f12bc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16096 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 diff --git a/src/main/cpp/jni/build/CMakeFiles/CMakeDirectoryInformation.cmake b/src/main/cpp/jni/build/CMakeFiles/CMakeDirectoryInformation.cmake deleted file mode 100644 index b9b869f5a2e..00000000000 --- a/src/main/cpp/jni/build/CMakeFiles/CMakeDirectoryInformation.cmake +++ /dev/null @@ -1,16 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 3.22 - -# Relative path conversion top directories. -set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/home/rene/projects/systemds/src/main/cpp/jni") -set(CMAKE_RELATIVE_PATH_TOP_BINARY "/home/rene/projects/systemds/src/main/cpp/jni/build") - -# Force unix paths in dependencies. -set(CMAKE_FORCE_UNIX_PATHS 1) - - -# The C and CXX include file regular expressions for this directory. -set(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$") -set(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$") -set(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN}) -set(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN}) diff --git a/src/main/cpp/jni/build/CMakeFiles/CMakeOutput.log b/src/main/cpp/jni/build/CMakeFiles/CMakeOutput.log deleted file mode 100644 index 9b8a4662856..00000000000 --- a/src/main/cpp/jni/build/CMakeFiles/CMakeOutput.log +++ /dev/null @@ -1,278 +0,0 @@ -The system is: Linux - 6.8.0-65-generic - x86_64 -Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" succeeded. -Compiler: /usr/bin/c++ -Build flags: -Id flags: - -The output was: -0 - - -Compilation of the CXX compiler identification source "CMakeCXXCompilerId.cpp" produced "a.out" - -The CXX compiler identification is GNU, found in "/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/3.22.1/CompilerIdCXX/a.out" - -Detecting CXX compiler ABI info compiled with the following output: -Change Dir: /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/CMakeTmp - -Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_da38c/fast && /usr/bin/gmake -f CMakeFiles/cmTC_da38c.dir/build.make CMakeFiles/cmTC_da38c.dir/build -gmake[1]: Entering directory '/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/CMakeTmp' -Building CXX object CMakeFiles/cmTC_da38c.dir/CMakeCXXCompilerABI.cpp.o -/usr/bin/c++ -v -o CMakeFiles/cmTC_da38c.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake-3.22/Modules/CMakeCXXCompilerABI.cpp -Using built-in specs. -COLLECT_GCC=/usr/bin/c++ -OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa -OFFLOAD_TARGET_DEFAULT=1 -Target: x86_64-linux-gnu -Configured with: ../src/configure -v --with-pkgversion='Ubuntu 12.3.0-1ubuntu1~22.04.2' --with-bugurl=file:///usr/share/doc/gcc-12/README.Bugs --enable-languages=c,ada,c++,go,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-12 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-12-dNWB6h/gcc-12-12.3.0/debian/tmp-nvptx/usr,amdgcn-amdhsa=/build/gcc-12-dNWB6h/gcc-12-12.3.0/debian/tmp-gcn/usr --enable-offload-defaulted --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu -Thread model: posix -Supported LTO compression algorithms: zlib zstd -gcc version 12.3.0 (Ubuntu 12.3.0-1ubuntu1~22.04.2) -COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_da38c.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_da38c.dir/' - /usr/lib/gcc/x86_64-linux-gnu/12/cc1plus -quiet -v -imultiarch x86_64-linux-gnu -D_GNU_SOURCE /usr/share/cmake-3.22/Modules/CMakeCXXCompilerABI.cpp -quiet -dumpdir CMakeFiles/cmTC_da38c.dir/ -dumpbase CMakeCXXCompilerABI.cpp.cpp -dumpbase-ext .cpp -mtune=generic -march=x86-64 -version -fasynchronous-unwind-tables -fstack-protector-strong -Wformat -Wformat-security -fstack-clash-protection -fcf-protection -o /tmp/ccjQGxGf.s -GNU C++17 (Ubuntu 12.3.0-1ubuntu1~22.04.2) version 12.3.0 (x86_64-linux-gnu) - compiled by GNU C version 12.3.0, GMP version 6.2.1, MPFR version 4.1.0, MPC version 1.2.1, isl version isl-0.24-GMP - -GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 -ignoring duplicate directory "/usr/include/x86_64-linux-gnu/c++/12" -ignoring nonexistent directory "/usr/local/include/x86_64-linux-gnu" -ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/12/include-fixed" -ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/12/../../../../x86_64-linux-gnu/include" -#include "..." search starts here: -#include <...> search starts here: - /usr/include/c++/12 - /usr/include/x86_64-linux-gnu/c++/12 - /usr/include/c++/12/backward - /usr/lib/gcc/x86_64-linux-gnu/12/include - /usr/local/include - /usr/include/x86_64-linux-gnu - /usr/include -End of search list. -GNU C++17 (Ubuntu 12.3.0-1ubuntu1~22.04.2) version 12.3.0 (x86_64-linux-gnu) - compiled by GNU C version 12.3.0, GMP version 6.2.1, MPFR version 4.1.0, MPC version 1.2.1, isl version isl-0.24-GMP - -GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 -Compiler executable checksum: 0d370165627a7e26039599c56dc32a7a -COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_da38c.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_da38c.dir/' - as -v --64 -o CMakeFiles/cmTC_da38c.dir/CMakeCXXCompilerABI.cpp.o /tmp/ccjQGxGf.s -GNU assembler version 2.38 (x86_64-linux-gnu) using BFD version (GNU Binutils for Ubuntu) 2.38 -COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/ -LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../:/lib/:/usr/lib/ -COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_da38c.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_da38c.dir/CMakeCXXCompilerABI.cpp.' -Linking CXX executable cmTC_da38c -/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_da38c.dir/link.txt --verbose=1 -/usr/bin/c++ -v CMakeFiles/cmTC_da38c.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_da38c -Using built-in specs. -COLLECT_GCC=/usr/bin/c++ -COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/12/lto-wrapper -OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa -OFFLOAD_TARGET_DEFAULT=1 -Target: x86_64-linux-gnu -Configured with: ../src/configure -v --with-pkgversion='Ubuntu 12.3.0-1ubuntu1~22.04.2' --with-bugurl=file:///usr/share/doc/gcc-12/README.Bugs --enable-languages=c,ada,c++,go,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-12 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-12-dNWB6h/gcc-12-12.3.0/debian/tmp-nvptx/usr,amdgcn-amdhsa=/build/gcc-12-dNWB6h/gcc-12-12.3.0/debian/tmp-gcn/usr --enable-offload-defaulted --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu -Thread model: posix -Supported LTO compression algorithms: zlib zstd -gcc version 12.3.0 (Ubuntu 12.3.0-1ubuntu1~22.04.2) -COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/ -LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../:/lib/:/usr/lib/ -COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_da38c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_da38c.' - /usr/lib/gcc/x86_64-linux-gnu/12/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/12/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/12/lto-wrapper -plugin-opt=-fresolution=/tmp/cc1ZUDVx.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -z now -z relro -o cmTC_da38c /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/12/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/12 -L/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/12/../../.. CMakeFiles/cmTC_da38c.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-linux-gnu/12/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crtn.o -COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_da38c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_da38c.' -gmake[1]: Leaving directory '/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/CMakeTmp' - - - -Parsed CXX implicit include dir info from above output: rv=done - found start of include info - found start of implicit include info - add: [/usr/include/c++/12] - add: [/usr/include/x86_64-linux-gnu/c++/12] - add: [/usr/include/c++/12/backward] - add: [/usr/lib/gcc/x86_64-linux-gnu/12/include] - add: [/usr/local/include] - add: [/usr/include/x86_64-linux-gnu] - add: [/usr/include] - end of search list found - collapse include dir [/usr/include/c++/12] ==> [/usr/include/c++/12] - collapse include dir [/usr/include/x86_64-linux-gnu/c++/12] ==> [/usr/include/x86_64-linux-gnu/c++/12] - collapse include dir [/usr/include/c++/12/backward] ==> [/usr/include/c++/12/backward] - collapse include dir [/usr/lib/gcc/x86_64-linux-gnu/12/include] ==> [/usr/lib/gcc/x86_64-linux-gnu/12/include] - collapse include dir [/usr/local/include] ==> [/usr/local/include] - collapse include dir [/usr/include/x86_64-linux-gnu] ==> [/usr/include/x86_64-linux-gnu] - collapse include dir [/usr/include] ==> [/usr/include] - implicit include dirs: [/usr/include/c++/12;/usr/include/x86_64-linux-gnu/c++/12;/usr/include/c++/12/backward;/usr/lib/gcc/x86_64-linux-gnu/12/include;/usr/local/include;/usr/include/x86_64-linux-gnu;/usr/include] - - -Parsed CXX implicit link information from above output: - link line regex: [^( *|.*[/\])(ld|CMAKE_LINK_STARTFILE-NOTFOUND|([^/\]+-)?ld|collect2)[^/\]*( |$)] - ignore line: [Change Dir: /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/CMakeTmp] - ignore line: [] - ignore line: [Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_da38c/fast && /usr/bin/gmake -f CMakeFiles/cmTC_da38c.dir/build.make CMakeFiles/cmTC_da38c.dir/build] - ignore line: [gmake[1]: Entering directory '/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/CMakeTmp'] - ignore line: [Building CXX object CMakeFiles/cmTC_da38c.dir/CMakeCXXCompilerABI.cpp.o] - ignore line: [/usr/bin/c++ -v -o CMakeFiles/cmTC_da38c.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake-3.22/Modules/CMakeCXXCompilerABI.cpp] - ignore line: [Using built-in specs.] - ignore line: [COLLECT_GCC=/usr/bin/c++] - ignore line: [OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa] - ignore line: [OFFLOAD_TARGET_DEFAULT=1] - ignore line: [Target: x86_64-linux-gnu] - ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 12.3.0-1ubuntu1~22.04.2' --with-bugurl=file:///usr/share/doc/gcc-12/README.Bugs --enable-languages=c ada c++ go d fortran objc obj-c++ m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-12 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32 m64 mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-12-dNWB6h/gcc-12-12.3.0/debian/tmp-nvptx/usr amdgcn-amdhsa=/build/gcc-12-dNWB6h/gcc-12-12.3.0/debian/tmp-gcn/usr --enable-offload-defaulted --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu] - ignore line: [Thread model: posix] - ignore line: [Supported LTO compression algorithms: zlib zstd] - ignore line: [gcc version 12.3.0 (Ubuntu 12.3.0-1ubuntu1~22.04.2) ] - ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_da38c.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_da38c.dir/'] - ignore line: [ /usr/lib/gcc/x86_64-linux-gnu/12/cc1plus -quiet -v -imultiarch x86_64-linux-gnu -D_GNU_SOURCE /usr/share/cmake-3.22/Modules/CMakeCXXCompilerABI.cpp -quiet -dumpdir CMakeFiles/cmTC_da38c.dir/ -dumpbase CMakeCXXCompilerABI.cpp.cpp -dumpbase-ext .cpp -mtune=generic -march=x86-64 -version -fasynchronous-unwind-tables -fstack-protector-strong -Wformat -Wformat-security -fstack-clash-protection -fcf-protection -o /tmp/ccjQGxGf.s] - ignore line: [GNU C++17 (Ubuntu 12.3.0-1ubuntu1~22.04.2) version 12.3.0 (x86_64-linux-gnu)] - ignore line: [ compiled by GNU C version 12.3.0 GMP version 6.2.1 MPFR version 4.1.0 MPC version 1.2.1 isl version isl-0.24-GMP] - ignore line: [] - ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072] - ignore line: [ignoring duplicate directory "/usr/include/x86_64-linux-gnu/c++/12"] - ignore line: [ignoring nonexistent directory "/usr/local/include/x86_64-linux-gnu"] - ignore line: [ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/12/include-fixed"] - ignore line: [ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/12/../../../../x86_64-linux-gnu/include"] - ignore line: [#include "..." search starts here:] - ignore line: [#include <...> search starts here:] - ignore line: [ /usr/include/c++/12] - ignore line: [ /usr/include/x86_64-linux-gnu/c++/12] - ignore line: [ /usr/include/c++/12/backward] - ignore line: [ /usr/lib/gcc/x86_64-linux-gnu/12/include] - ignore line: [ /usr/local/include] - ignore line: [ /usr/include/x86_64-linux-gnu] - ignore line: [ /usr/include] - ignore line: [End of search list.] - ignore line: [GNU C++17 (Ubuntu 12.3.0-1ubuntu1~22.04.2) version 12.3.0 (x86_64-linux-gnu)] - ignore line: [ compiled by GNU C version 12.3.0 GMP version 6.2.1 MPFR version 4.1.0 MPC version 1.2.1 isl version isl-0.24-GMP] - ignore line: [] - ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072] - ignore line: [Compiler executable checksum: 0d370165627a7e26039599c56dc32a7a] - ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_da38c.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_da38c.dir/'] - ignore line: [ as -v --64 -o CMakeFiles/cmTC_da38c.dir/CMakeCXXCompilerABI.cpp.o /tmp/ccjQGxGf.s] - ignore line: [GNU assembler version 2.38 (x86_64-linux-gnu) using BFD version (GNU Binutils for Ubuntu) 2.38] - ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/] - ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../:/lib/:/usr/lib/] - ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_da38c.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_da38c.dir/CMakeCXXCompilerABI.cpp.'] - ignore line: [Linking CXX executable cmTC_da38c] - ignore line: [/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_da38c.dir/link.txt --verbose=1] - ignore line: [/usr/bin/c++ -v CMakeFiles/cmTC_da38c.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_da38c ] - ignore line: [Using built-in specs.] - ignore line: [COLLECT_GCC=/usr/bin/c++] - ignore line: [COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/12/lto-wrapper] - ignore line: [OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa] - ignore line: [OFFLOAD_TARGET_DEFAULT=1] - ignore line: [Target: x86_64-linux-gnu] - ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 12.3.0-1ubuntu1~22.04.2' --with-bugurl=file:///usr/share/doc/gcc-12/README.Bugs --enable-languages=c ada c++ go d fortran objc obj-c++ m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-12 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32 m64 mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-12-dNWB6h/gcc-12-12.3.0/debian/tmp-nvptx/usr amdgcn-amdhsa=/build/gcc-12-dNWB6h/gcc-12-12.3.0/debian/tmp-gcn/usr --enable-offload-defaulted --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu] - ignore line: [Thread model: posix] - ignore line: [Supported LTO compression algorithms: zlib zstd] - ignore line: [gcc version 12.3.0 (Ubuntu 12.3.0-1ubuntu1~22.04.2) ] - ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/] - ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../:/lib/:/usr/lib/] - ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_da38c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_da38c.'] - link line: [ /usr/lib/gcc/x86_64-linux-gnu/12/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/12/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/12/lto-wrapper -plugin-opt=-fresolution=/tmp/cc1ZUDVx.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -z now -z relro -o cmTC_da38c /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/12/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/12 -L/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/12/../../.. CMakeFiles/cmTC_da38c.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-linux-gnu/12/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crtn.o] - arg [/usr/lib/gcc/x86_64-linux-gnu/12/collect2] ==> ignore - arg [-plugin] ==> ignore - arg [/usr/lib/gcc/x86_64-linux-gnu/12/liblto_plugin.so] ==> ignore - arg [-plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/12/lto-wrapper] ==> ignore - arg [-plugin-opt=-fresolution=/tmp/cc1ZUDVx.res] ==> ignore - arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore - arg [-plugin-opt=-pass-through=-lgcc] ==> ignore - arg [-plugin-opt=-pass-through=-lc] ==> ignore - arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore - arg [-plugin-opt=-pass-through=-lgcc] ==> ignore - arg [--build-id] ==> ignore - arg [--eh-frame-hdr] ==> ignore - arg [-m] ==> ignore - arg [elf_x86_64] ==> ignore - arg [--hash-style=gnu] ==> ignore - arg [--as-needed] ==> ignore - arg [-dynamic-linker] ==> ignore - arg [/lib64/ld-linux-x86-64.so.2] ==> ignore - arg [-pie] ==> ignore - arg [-znow] ==> ignore - arg [-zrelro] ==> ignore - arg [-o] ==> ignore - arg [cmTC_da38c] ==> ignore - arg [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/Scrt1.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/Scrt1.o] - arg [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crti.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crti.o] - arg [/usr/lib/gcc/x86_64-linux-gnu/12/crtbeginS.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/12/crtbeginS.o] - arg [-L/usr/lib/gcc/x86_64-linux-gnu/12] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/12] - arg [-L/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu] - arg [-L/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib] - arg [-L/lib/x86_64-linux-gnu] ==> dir [/lib/x86_64-linux-gnu] - arg [-L/lib/../lib] ==> dir [/lib/../lib] - arg [-L/usr/lib/x86_64-linux-gnu] ==> dir [/usr/lib/x86_64-linux-gnu] - arg [-L/usr/lib/../lib] ==> dir [/usr/lib/../lib] - arg [-L/usr/lib/gcc/x86_64-linux-gnu/12/../../..] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/12/../../..] - arg [CMakeFiles/cmTC_da38c.dir/CMakeCXXCompilerABI.cpp.o] ==> ignore - arg [-lstdc++] ==> lib [stdc++] - arg [-lm] ==> lib [m] - arg [-lgcc_s] ==> lib [gcc_s] - arg [-lgcc] ==> lib [gcc] - arg [-lc] ==> lib [c] - arg [-lgcc_s] ==> lib [gcc_s] - arg [-lgcc] ==> lib [gcc] - arg [/usr/lib/gcc/x86_64-linux-gnu/12/crtendS.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/12/crtendS.o] - arg [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crtn.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crtn.o] - collapse obj [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/Scrt1.o] ==> [/usr/lib/x86_64-linux-gnu/Scrt1.o] - collapse obj [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crti.o] ==> [/usr/lib/x86_64-linux-gnu/crti.o] - collapse obj [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crtn.o] ==> [/usr/lib/x86_64-linux-gnu/crtn.o] - collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/12] ==> [/usr/lib/gcc/x86_64-linux-gnu/12] - collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu] - collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib] ==> [/usr/lib] - collapse library dir [/lib/x86_64-linux-gnu] ==> [/lib/x86_64-linux-gnu] - collapse library dir [/lib/../lib] ==> [/lib] - collapse library dir [/usr/lib/x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu] - collapse library dir [/usr/lib/../lib] ==> [/usr/lib] - collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/12/../../..] ==> [/usr/lib] - implicit libs: [stdc++;m;gcc_s;gcc;c;gcc_s;gcc] - implicit objs: [/usr/lib/x86_64-linux-gnu/Scrt1.o;/usr/lib/x86_64-linux-gnu/crti.o;/usr/lib/gcc/x86_64-linux-gnu/12/crtbeginS.o;/usr/lib/gcc/x86_64-linux-gnu/12/crtendS.o;/usr/lib/x86_64-linux-gnu/crtn.o] - implicit dirs: [/usr/lib/gcc/x86_64-linux-gnu/12;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib] - implicit fwks: [] - - -Determining if the include file pthread.h exists passed with the following output: -Change Dir: /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/CMakeTmp - -Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_9cfd3/fast && /usr/bin/gmake -f CMakeFiles/cmTC_9cfd3.dir/build.make CMakeFiles/cmTC_9cfd3.dir/build -gmake[1]: Entering directory '/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/CMakeTmp' -Building CXX object CMakeFiles/cmTC_9cfd3.dir/CheckIncludeFile.cxx.o -/usr/bin/c++ -o CMakeFiles/cmTC_9cfd3.dir/CheckIncludeFile.cxx.o -c /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/CMakeTmp/CheckIncludeFile.cxx -Linking CXX executable cmTC_9cfd3 -/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_9cfd3.dir/link.txt --verbose=1 -/usr/bin/c++ CMakeFiles/cmTC_9cfd3.dir/CheckIncludeFile.cxx.o -o cmTC_9cfd3 -gmake[1]: Leaving directory '/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/CMakeTmp' - - - -Performing C++ SOURCE FILE Test CMAKE_HAVE_LIBC_PTHREAD succeeded with the following output: -Change Dir: /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/CMakeTmp - -Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_991e3/fast && /usr/bin/gmake -f CMakeFiles/cmTC_991e3.dir/build.make CMakeFiles/cmTC_991e3.dir/build -gmake[1]: Entering directory '/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/CMakeTmp' -Building CXX object CMakeFiles/cmTC_991e3.dir/src.cxx.o -/usr/bin/c++ -DCMAKE_HAVE_LIBC_PTHREAD -o CMakeFiles/cmTC_991e3.dir/src.cxx.o -c /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/CMakeTmp/src.cxx -Linking CXX executable cmTC_991e3 -/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_991e3.dir/link.txt --verbose=1 -/usr/bin/c++ CMakeFiles/cmTC_991e3.dir/src.cxx.o -o cmTC_991e3 -gmake[1]: Leaving directory '/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/CMakeTmp' - - -Source file was: -#include - -static void* test_func(void* data) -{ - return data; -} - -int main(void) -{ - pthread_t thread; - pthread_create(&thread, NULL, test_func, NULL); - pthread_detach(thread); - pthread_cancel(thread); - pthread_join(thread, NULL); - pthread_atfork(NULL, NULL, NULL); - pthread_exit(NULL); - - return 0; -} - diff --git a/src/main/cpp/jni/build/CMakeFiles/Makefile.cmake b/src/main/cpp/jni/build/CMakeFiles/Makefile.cmake deleted file mode 100644 index 3cdca206cfc..00000000000 --- a/src/main/cpp/jni/build/CMakeFiles/Makefile.cmake +++ /dev/null @@ -1,58 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 3.22 - -# The generator used is: -set(CMAKE_DEPENDS_GENERATOR "Unix Makefiles") - -# The top level Makefile was generated from the following files: -set(CMAKE_MAKEFILE_DEPENDS - "CMakeCache.txt" - "../CMakeLists.txt" - "CMakeFiles/3.22.1/CMakeCXXCompiler.cmake" - "CMakeFiles/3.22.1/CMakeSystem.cmake" - "../common/CMakeLists.txt" - "../runtime/CMakeLists.txt" - "/usr/share/cmake-3.22/Modules/CMakeCXXInformation.cmake" - "/usr/share/cmake-3.22/Modules/CMakeCommonLanguageInclude.cmake" - "/usr/share/cmake-3.22/Modules/CMakeFindJavaCommon.cmake" - "/usr/share/cmake-3.22/Modules/CMakeGenericSystem.cmake" - "/usr/share/cmake-3.22/Modules/CMakeInitializeConfigs.cmake" - "/usr/share/cmake-3.22/Modules/CMakeLanguageInformation.cmake" - "/usr/share/cmake-3.22/Modules/CMakeSystemSpecificInformation.cmake" - "/usr/share/cmake-3.22/Modules/CMakeSystemSpecificInitialize.cmake" - "/usr/share/cmake-3.22/Modules/CheckCXXSourceCompiles.cmake" - "/usr/share/cmake-3.22/Modules/CheckIncludeFileCXX.cmake" - "/usr/share/cmake-3.22/Modules/CheckLibraryExists.cmake" - "/usr/share/cmake-3.22/Modules/Compiler/CMakeCommonCompilerMacros.cmake" - "/usr/share/cmake-3.22/Modules/Compiler/GNU-CXX.cmake" - "/usr/share/cmake-3.22/Modules/Compiler/GNU.cmake" - "/usr/share/cmake-3.22/Modules/FindCUDAToolkit.cmake" - "/usr/share/cmake-3.22/Modules/FindJNI.cmake" - "/usr/share/cmake-3.22/Modules/FindPackageHandleStandardArgs.cmake" - "/usr/share/cmake-3.22/Modules/FindPackageMessage.cmake" - "/usr/share/cmake-3.22/Modules/FindThreads.cmake" - "/usr/share/cmake-3.22/Modules/Internal/CheckSourceCompiles.cmake" - "/usr/share/cmake-3.22/Modules/Platform/Linux-GNU-CXX.cmake" - "/usr/share/cmake-3.22/Modules/Platform/Linux-GNU.cmake" - "/usr/share/cmake-3.22/Modules/Platform/Linux.cmake" - "/usr/share/cmake-3.22/Modules/Platform/UnixPaths.cmake" - ) - -# The corresponding makefile is: -set(CMAKE_MAKEFILE_OUTPUTS - "Makefile" - "CMakeFiles/cmake.check_cache" - ) - -# Byproducts of CMake generate step: -set(CMAKE_MAKEFILE_PRODUCTS - "CMakeFiles/CMakeDirectoryInformation.cmake" - "common/CMakeFiles/CMakeDirectoryInformation.cmake" - "runtime/CMakeFiles/CMakeDirectoryInformation.cmake" - ) - -# Dependency information for all targets: -set(CMAKE_DEPEND_INFO_FILES - "common/CMakeFiles/CuJavaCommonJNI.dir/DependInfo.cmake" - "runtime/CMakeFiles/CuJavaRuntime.dir/DependInfo.cmake" - ) diff --git a/src/main/cpp/jni/build/CMakeFiles/Makefile2 b/src/main/cpp/jni/build/CMakeFiles/Makefile2 deleted file mode 100644 index 17a479e4850..00000000000 --- a/src/main/cpp/jni/build/CMakeFiles/Makefile2 +++ /dev/null @@ -1,171 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 3.22 - -# Default target executed when no arguments are given to make. -default_target: all -.PHONY : default_target - -#============================================================================= -# Special targets provided by cmake. - -# Disable implicit rules so canonical targets will work. -.SUFFIXES: - -# Disable VCS-based implicit rules. -% : %,v - -# Disable VCS-based implicit rules. -% : RCS/% - -# Disable VCS-based implicit rules. -% : RCS/%,v - -# Disable VCS-based implicit rules. -% : SCCS/s.% - -# Disable VCS-based implicit rules. -% : s.% - -.SUFFIXES: .hpux_make_needs_suffix_list - -# Command-line flag to silence nested $(MAKE). -$(VERBOSE)MAKESILENT = -s - -#Suppress display of executed commands. -$(VERBOSE).SILENT: - -# A target that is always out of date. -cmake_force: -.PHONY : cmake_force - -#============================================================================= -# Set environment variables for the build. - -# The shell in which to execute make rules. -SHELL = /bin/sh - -# The CMake executable. -CMAKE_COMMAND = /usr/bin/cmake - -# The command to remove a file. -RM = /usr/bin/cmake -E rm -f - -# Escaping for special characters. -EQUALS = = - -# The top-level source directory on which CMake was run. -CMAKE_SOURCE_DIR = /home/rene/projects/systemds/src/main/cpp/jni - -# The top-level build directory on which CMake was run. -CMAKE_BINARY_DIR = /home/rene/projects/systemds/src/main/cpp/jni/build - -#============================================================================= -# Directory level rules for the build root directory - -# The main recursive "all" target. -all: common/all -all: runtime/all -.PHONY : all - -# The main recursive "preinstall" target. -preinstall: common/preinstall -preinstall: runtime/preinstall -.PHONY : preinstall - -# The main recursive "clean" target. -clean: common/clean -clean: runtime/clean -.PHONY : clean - -#============================================================================= -# Directory level rules for directory common - -# Recursive "all" directory target. -common/all: common/CMakeFiles/CuJavaCommonJNI.dir/all -.PHONY : common/all - -# Recursive "preinstall" directory target. -common/preinstall: -.PHONY : common/preinstall - -# Recursive "clean" directory target. -common/clean: common/CMakeFiles/CuJavaCommonJNI.dir/clean -.PHONY : common/clean - -#============================================================================= -# Directory level rules for directory runtime - -# Recursive "all" directory target. -runtime/all: runtime/CMakeFiles/CuJavaRuntime.dir/all -.PHONY : runtime/all - -# Recursive "preinstall" directory target. -runtime/preinstall: -.PHONY : runtime/preinstall - -# Recursive "clean" directory target. -runtime/clean: runtime/CMakeFiles/CuJavaRuntime.dir/clean -.PHONY : runtime/clean - -#============================================================================= -# Target rules for target common/CMakeFiles/CuJavaCommonJNI.dir - -# All Build rule for target. -common/CMakeFiles/CuJavaCommonJNI.dir/all: - $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/depend - $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/build - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles --progress-num=1,2,3,4 "Built target CuJavaCommonJNI" -.PHONY : common/CMakeFiles/CuJavaCommonJNI.dir/all - -# Build rule for subdir invocation for target. -common/CMakeFiles/CuJavaCommonJNI.dir/rule: cmake_check_build_system - $(CMAKE_COMMAND) -E cmake_progress_start /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles 4 - $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 common/CMakeFiles/CuJavaCommonJNI.dir/all - $(CMAKE_COMMAND) -E cmake_progress_start /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles 0 -.PHONY : common/CMakeFiles/CuJavaCommonJNI.dir/rule - -# Convenience name for target. -CuJavaCommonJNI: common/CMakeFiles/CuJavaCommonJNI.dir/rule -.PHONY : CuJavaCommonJNI - -# clean rule for target. -common/CMakeFiles/CuJavaCommonJNI.dir/clean: - $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/clean -.PHONY : common/CMakeFiles/CuJavaCommonJNI.dir/clean - -#============================================================================= -# Target rules for target runtime/CMakeFiles/CuJavaRuntime.dir - -# All Build rule for target. -runtime/CMakeFiles/CuJavaRuntime.dir/all: common/CMakeFiles/CuJavaCommonJNI.dir/all - $(MAKE) $(MAKESILENT) -f runtime/CMakeFiles/CuJavaRuntime.dir/build.make runtime/CMakeFiles/CuJavaRuntime.dir/depend - $(MAKE) $(MAKESILENT) -f runtime/CMakeFiles/CuJavaRuntime.dir/build.make runtime/CMakeFiles/CuJavaRuntime.dir/build - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles --progress-num=5,6 "Built target CuJavaRuntime" -.PHONY : runtime/CMakeFiles/CuJavaRuntime.dir/all - -# Build rule for subdir invocation for target. -runtime/CMakeFiles/CuJavaRuntime.dir/rule: cmake_check_build_system - $(CMAKE_COMMAND) -E cmake_progress_start /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles 6 - $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 runtime/CMakeFiles/CuJavaRuntime.dir/all - $(CMAKE_COMMAND) -E cmake_progress_start /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles 0 -.PHONY : runtime/CMakeFiles/CuJavaRuntime.dir/rule - -# Convenience name for target. -CuJavaRuntime: runtime/CMakeFiles/CuJavaRuntime.dir/rule -.PHONY : CuJavaRuntime - -# clean rule for target. -runtime/CMakeFiles/CuJavaRuntime.dir/clean: - $(MAKE) $(MAKESILENT) -f runtime/CMakeFiles/CuJavaRuntime.dir/build.make runtime/CMakeFiles/CuJavaRuntime.dir/clean -.PHONY : runtime/CMakeFiles/CuJavaRuntime.dir/clean - -#============================================================================= -# Special targets to cleanup operation of make. - -# Special rule to run CMake to check the build system integrity. -# No rule that depends on this can have commands that come from listfiles -# because they might be regenerated. -cmake_check_build_system: - $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 -.PHONY : cmake_check_build_system - diff --git a/src/main/cpp/jni/build/CMakeFiles/TargetDirectories.txt b/src/main/cpp/jni/build/CMakeFiles/TargetDirectories.txt deleted file mode 100644 index 6185453e56e..00000000000 --- a/src/main/cpp/jni/build/CMakeFiles/TargetDirectories.txt +++ /dev/null @@ -1,8 +0,0 @@ -/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/edit_cache.dir -/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/rebuild_cache.dir -/home/rene/projects/systemds/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir -/home/rene/projects/systemds/src/main/cpp/jni/build/common/CMakeFiles/edit_cache.dir -/home/rene/projects/systemds/src/main/cpp/jni/build/common/CMakeFiles/rebuild_cache.dir -/home/rene/projects/systemds/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir -/home/rene/projects/systemds/src/main/cpp/jni/build/runtime/CMakeFiles/edit_cache.dir -/home/rene/projects/systemds/src/main/cpp/jni/build/runtime/CMakeFiles/rebuild_cache.dir diff --git a/src/main/cpp/jni/build/CMakeFiles/cmake.check_cache b/src/main/cpp/jni/build/CMakeFiles/cmake.check_cache deleted file mode 100644 index 3dccd731726..00000000000 --- a/src/main/cpp/jni/build/CMakeFiles/cmake.check_cache +++ /dev/null @@ -1 +0,0 @@ -# This file is generated by cmake for dependency checking of the CMakeCache.txt file diff --git a/src/main/cpp/jni/build/CMakeFiles/progress.marks b/src/main/cpp/jni/build/CMakeFiles/progress.marks deleted file mode 100644 index 1e8b3149621..00000000000 --- a/src/main/cpp/jni/build/CMakeFiles/progress.marks +++ /dev/null @@ -1 +0,0 @@ -6 diff --git a/src/main/cpp/jni/build/Makefile b/src/main/cpp/jni/build/Makefile deleted file mode 100644 index e66405c1138..00000000000 --- a/src/main/cpp/jni/build/Makefile +++ /dev/null @@ -1,168 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 3.22 - -# Default target executed when no arguments are given to make. -default_target: all -.PHONY : default_target - -# Allow only one "make -f Makefile2" at a time, but pass parallelism. -.NOTPARALLEL: - -#============================================================================= -# Special targets provided by cmake. - -# Disable implicit rules so canonical targets will work. -.SUFFIXES: - -# Disable VCS-based implicit rules. -% : %,v - -# Disable VCS-based implicit rules. -% : RCS/% - -# Disable VCS-based implicit rules. -% : RCS/%,v - -# Disable VCS-based implicit rules. -% : SCCS/s.% - -# Disable VCS-based implicit rules. -% : s.% - -.SUFFIXES: .hpux_make_needs_suffix_list - -# Command-line flag to silence nested $(MAKE). -$(VERBOSE)MAKESILENT = -s - -#Suppress display of executed commands. -$(VERBOSE).SILENT: - -# A target that is always out of date. -cmake_force: -.PHONY : cmake_force - -#============================================================================= -# Set environment variables for the build. - -# The shell in which to execute make rules. -SHELL = /bin/sh - -# The CMake executable. -CMAKE_COMMAND = /usr/bin/cmake - -# The command to remove a file. -RM = /usr/bin/cmake -E rm -f - -# Escaping for special characters. -EQUALS = = - -# The top-level source directory on which CMake was run. -CMAKE_SOURCE_DIR = /home/rene/projects/systemds/src/main/cpp/jni - -# The top-level build directory on which CMake was run. -CMAKE_BINARY_DIR = /home/rene/projects/systemds/src/main/cpp/jni/build - -#============================================================================= -# Targets provided globally by CMake. - -# Special rule for the target edit_cache -edit_cache: - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "No interactive CMake dialog available..." - /usr/bin/cmake -E echo No\ interactive\ CMake\ dialog\ available. -.PHONY : edit_cache - -# Special rule for the target edit_cache -edit_cache/fast: edit_cache -.PHONY : edit_cache/fast - -# Special rule for the target rebuild_cache -rebuild_cache: - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..." - /usr/bin/cmake --regenerate-during-build -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) -.PHONY : rebuild_cache - -# Special rule for the target rebuild_cache -rebuild_cache/fast: rebuild_cache -.PHONY : rebuild_cache/fast - -# The main all target -all: cmake_check_build_system - $(CMAKE_COMMAND) -E cmake_progress_start /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles /home/rene/projects/systemds/src/main/cpp/jni/build//CMakeFiles/progress.marks - $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 all - $(CMAKE_COMMAND) -E cmake_progress_start /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles 0 -.PHONY : all - -# The main clean target -clean: - $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 clean -.PHONY : clean - -# The main clean target -clean/fast: clean -.PHONY : clean/fast - -# Prepare targets for installation. -preinstall: all - $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 preinstall -.PHONY : preinstall - -# Prepare targets for installation. -preinstall/fast: - $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 preinstall -.PHONY : preinstall/fast - -# clear depends -depend: - $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1 -.PHONY : depend - -#============================================================================= -# Target rules for targets named CuJavaCommonJNI - -# Build rule for target. -CuJavaCommonJNI: cmake_check_build_system - $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 CuJavaCommonJNI -.PHONY : CuJavaCommonJNI - -# fast build rule for target. -CuJavaCommonJNI/fast: - $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/build -.PHONY : CuJavaCommonJNI/fast - -#============================================================================= -# Target rules for targets named CuJavaRuntime - -# Build rule for target. -CuJavaRuntime: cmake_check_build_system - $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 CuJavaRuntime -.PHONY : CuJavaRuntime - -# fast build rule for target. -CuJavaRuntime/fast: - $(MAKE) $(MAKESILENT) -f runtime/CMakeFiles/CuJavaRuntime.dir/build.make runtime/CMakeFiles/CuJavaRuntime.dir/build -.PHONY : CuJavaRuntime/fast - -# Help Target -help: - @echo "The following are some of the valid targets for this Makefile:" - @echo "... all (the default if no target is provided)" - @echo "... clean" - @echo "... depend" - @echo "... edit_cache" - @echo "... rebuild_cache" - @echo "... CuJavaCommonJNI" - @echo "... CuJavaRuntime" -.PHONY : help - - - -#============================================================================= -# Special targets to cleanup operation of make. - -# Special rule to run CMake to check the build system integrity. -# No rule that depends on this can have commands that come from listfiles -# because they might be regenerated. -cmake_check_build_system: - $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 -.PHONY : cmake_check_build_system - diff --git a/src/main/cpp/jni/build/cmake_install.cmake b/src/main/cpp/jni/build/cmake_install.cmake deleted file mode 100644 index 97744b2b547..00000000000 --- a/src/main/cpp/jni/build/cmake_install.cmake +++ /dev/null @@ -1,64 +0,0 @@ -# Install script for directory: /home/rene/projects/systemds/src/main/cpp/jni - -# Set the install prefix -if(NOT DEFINED CMAKE_INSTALL_PREFIX) - set(CMAKE_INSTALL_PREFIX "/usr/local") -endif() -string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}") - -# Set the install configuration name. -if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME) - if(BUILD_TYPE) - string(REGEX REPLACE "^[^A-Za-z0-9_]+" "" - CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}") - else() - set(CMAKE_INSTALL_CONFIG_NAME "Release") - endif() - message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"") -endif() - -# Set the component getting installed. -if(NOT CMAKE_INSTALL_COMPONENT) - if(COMPONENT) - message(STATUS "Install component: \"${COMPONENT}\"") - set(CMAKE_INSTALL_COMPONENT "${COMPONENT}") - else() - set(CMAKE_INSTALL_COMPONENT) - endif() -endif() - -# Install shared libraries without execute permission? -if(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE) - set(CMAKE_INSTALL_SO_NO_EXE "1") -endif() - -# Is this installation the result of a crosscompile? -if(NOT DEFINED CMAKE_CROSSCOMPILING) - set(CMAKE_CROSSCOMPILING "FALSE") -endif() - -# Set default install directory permissions. -if(NOT DEFINED CMAKE_OBJDUMP) - set(CMAKE_OBJDUMP "/usr/bin/objdump") -endif() - -if(NOT CMAKE_INSTALL_LOCAL_ONLY) - # Include the install script for the subdirectory. - include("/home/rene/projects/systemds/src/main/cpp/jni/build/common/cmake_install.cmake") -endif() - -if(NOT CMAKE_INSTALL_LOCAL_ONLY) - # Include the install script for the subdirectory. - include("/home/rene/projects/systemds/src/main/cpp/jni/build/runtime/cmake_install.cmake") -endif() - -if(CMAKE_INSTALL_COMPONENT) - set(CMAKE_INSTALL_MANIFEST "install_manifest_${CMAKE_INSTALL_COMPONENT}.txt") -else() - set(CMAKE_INSTALL_MANIFEST "install_manifest.txt") -endif() - -string(REPLACE ";" "\n" CMAKE_INSTALL_MANIFEST_CONTENT - "${CMAKE_INSTALL_MANIFEST_FILES}") -file(WRITE "/home/rene/projects/systemds/src/main/cpp/jni/build/${CMAKE_INSTALL_MANIFEST}" - "${CMAKE_INSTALL_MANIFEST_CONTENT}") diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CMakeDirectoryInformation.cmake b/src/main/cpp/jni/build/common/CMakeFiles/CMakeDirectoryInformation.cmake deleted file mode 100644 index b9b869f5a2e..00000000000 --- a/src/main/cpp/jni/build/common/CMakeFiles/CMakeDirectoryInformation.cmake +++ /dev/null @@ -1,16 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 3.22 - -# Relative path conversion top directories. -set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/home/rene/projects/systemds/src/main/cpp/jni") -set(CMAKE_RELATIVE_PATH_TOP_BINARY "/home/rene/projects/systemds/src/main/cpp/jni/build") - -# Force unix paths in dependencies. -set(CMAKE_FORCE_UNIX_PATHS 1) - - -# The C and CXX include file regular expressions for this directory. -set(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$") -set(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$") -set(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN}) -set(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN}) diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/DependInfo.cmake b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/DependInfo.cmake deleted file mode 100644 index 16ff2a011d6..00000000000 --- a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/DependInfo.cmake +++ /dev/null @@ -1,21 +0,0 @@ - -# Consider dependencies only in project. -set(CMAKE_DEPENDS_IN_PROJECT_ONLY OFF) - -# The set of languages for which implicit dependencies are needed: -set(CMAKE_DEPENDS_LANGUAGES - ) - -# The set of dependency files which are needed: -set(CMAKE_DEPENDS_DEPENDENCY_FILES - "/home/rene/projects/systemds/src/main/cpp/jni/common/cujava_jni_utils.cpp" "common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o" "gcc" "common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o.d" - "/home/rene/projects/systemds/src/main/cpp/jni/common/cujava_logger.cpp" "common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o" "gcc" "common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o.d" - "/home/rene/projects/systemds/src/main/cpp/jni/common/cujava_pointer_utils.cpp" "common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o" "gcc" "common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o.d" - ) - -# Targets to which this target links. -set(CMAKE_TARGET_LINKED_INFO_FILES - ) - -# Fortran module output directory. -set(CMAKE_Fortran_TARGET_MODULE_DIR "") diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/build.make b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/build.make deleted file mode 100644 index 9999564f42a..00000000000 --- a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/build.make +++ /dev/null @@ -1,143 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 3.22 - -# Delete rule output on recipe failure. -.DELETE_ON_ERROR: - -#============================================================================= -# Special targets provided by cmake. - -# Disable implicit rules so canonical targets will work. -.SUFFIXES: - -# Disable VCS-based implicit rules. -% : %,v - -# Disable VCS-based implicit rules. -% : RCS/% - -# Disable VCS-based implicit rules. -% : RCS/%,v - -# Disable VCS-based implicit rules. -% : SCCS/s.% - -# Disable VCS-based implicit rules. -% : s.% - -.SUFFIXES: .hpux_make_needs_suffix_list - -# Command-line flag to silence nested $(MAKE). -$(VERBOSE)MAKESILENT = -s - -#Suppress display of executed commands. -$(VERBOSE).SILENT: - -# A target that is always out of date. -cmake_force: -.PHONY : cmake_force - -#============================================================================= -# Set environment variables for the build. - -# The shell in which to execute make rules. -SHELL = /bin/sh - -# The CMake executable. -CMAKE_COMMAND = /usr/bin/cmake - -# The command to remove a file. -RM = /usr/bin/cmake -E rm -f - -# Escaping for special characters. -EQUALS = = - -# The top-level source directory on which CMake was run. -CMAKE_SOURCE_DIR = /home/rene/projects/systemds/src/main/cpp/jni - -# The top-level build directory on which CMake was run. -CMAKE_BINARY_DIR = /home/rene/projects/systemds/src/main/cpp/jni/build - -# Include any dependencies generated for this target. -include common/CMakeFiles/CuJavaCommonJNI.dir/depend.make -# Include any dependencies generated by the compiler for this target. -include common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.make - -# Include the progress variables for this target. -include common/CMakeFiles/CuJavaCommonJNI.dir/progress.make - -# Include the compile flags for this target's objects. -include common/CMakeFiles/CuJavaCommonJNI.dir/flags.make - -common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o: common/CMakeFiles/CuJavaCommonJNI.dir/flags.make -common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o: ../common/cujava_logger.cpp -common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o: common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.ts - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building CXX object common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o" - cd /home/rene/projects/systemds/src/main/cpp/jni/build/common && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o -MF CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o.d -o CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o -c /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_logger.cpp - -common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.i" - cd /home/rene/projects/systemds/src/main/cpp/jni/build/common && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_logger.cpp > CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.i - -common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.s" - cd /home/rene/projects/systemds/src/main/cpp/jni/build/common && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_logger.cpp -o CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.s - -common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o: common/CMakeFiles/CuJavaCommonJNI.dir/flags.make -common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o: ../common/cujava_jni_utils.cpp -common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o: common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.ts - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Building CXX object common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o" - cd /home/rene/projects/systemds/src/main/cpp/jni/build/common && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o -MF CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o.d -o CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o -c /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_jni_utils.cpp - -common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.i" - cd /home/rene/projects/systemds/src/main/cpp/jni/build/common && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_jni_utils.cpp > CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.i - -common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.s" - cd /home/rene/projects/systemds/src/main/cpp/jni/build/common && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_jni_utils.cpp -o CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.s - -common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o: common/CMakeFiles/CuJavaCommonJNI.dir/flags.make -common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o: ../common/cujava_pointer_utils.cpp -common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o: common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.ts - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_3) "Building CXX object common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o" - cd /home/rene/projects/systemds/src/main/cpp/jni/build/common && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o -MF CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o.d -o CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o -c /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_pointer_utils.cpp - -common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.i" - cd /home/rene/projects/systemds/src/main/cpp/jni/build/common && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_pointer_utils.cpp > CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.i - -common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.s" - cd /home/rene/projects/systemds/src/main/cpp/jni/build/common && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_pointer_utils.cpp -o CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.s - -# Object files for target CuJavaCommonJNI -CuJavaCommonJNI_OBJECTS = \ -"CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o" \ -"CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o" \ -"CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o" - -# External object files for target CuJavaCommonJNI -CuJavaCommonJNI_EXTERNAL_OBJECTS = - -/home/rene/projects/systemds/src/main/cpp/lib/libCuJavaCommonJNI.a: common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o -/home/rene/projects/systemds/src/main/cpp/lib/libCuJavaCommonJNI.a: common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o -/home/rene/projects/systemds/src/main/cpp/lib/libCuJavaCommonJNI.a: common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o -/home/rene/projects/systemds/src/main/cpp/lib/libCuJavaCommonJNI.a: common/CMakeFiles/CuJavaCommonJNI.dir/build.make -/home/rene/projects/systemds/src/main/cpp/lib/libCuJavaCommonJNI.a: common/CMakeFiles/CuJavaCommonJNI.dir/link.txt - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_4) "Linking CXX static library /home/rene/projects/systemds/src/main/cpp/lib/libCuJavaCommonJNI.a" - cd /home/rene/projects/systemds/src/main/cpp/jni/build/common && $(CMAKE_COMMAND) -P CMakeFiles/CuJavaCommonJNI.dir/cmake_clean_target.cmake - cd /home/rene/projects/systemds/src/main/cpp/jni/build/common && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/CuJavaCommonJNI.dir/link.txt --verbose=$(VERBOSE) - -# Rule to build all files generated by this target. -common/CMakeFiles/CuJavaCommonJNI.dir/build: /home/rene/projects/systemds/src/main/cpp/lib/libCuJavaCommonJNI.a -.PHONY : common/CMakeFiles/CuJavaCommonJNI.dir/build - -common/CMakeFiles/CuJavaCommonJNI.dir/clean: - cd /home/rene/projects/systemds/src/main/cpp/jni/build/common && $(CMAKE_COMMAND) -P CMakeFiles/CuJavaCommonJNI.dir/cmake_clean.cmake -.PHONY : common/CMakeFiles/CuJavaCommonJNI.dir/clean - -common/CMakeFiles/CuJavaCommonJNI.dir/depend: - cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/rene/projects/systemds/src/main/cpp/jni /home/rene/projects/systemds/src/main/cpp/jni/common /home/rene/projects/systemds/src/main/cpp/jni/build /home/rene/projects/systemds/src/main/cpp/jni/build/common /home/rene/projects/systemds/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/DependInfo.cmake --color=$(COLOR) -.PHONY : common/CMakeFiles/CuJavaCommonJNI.dir/depend - diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cmake_clean.cmake b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cmake_clean.cmake deleted file mode 100644 index 57aa3559e0f..00000000000 --- a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cmake_clean.cmake +++ /dev/null @@ -1,15 +0,0 @@ -file(REMOVE_RECURSE - "/home/rene/projects/systemds/src/main/cpp/lib/libCuJavaCommonJNI.a" - "/home/rene/projects/systemds/src/main/cpp/lib/libCuJavaCommonJNI.pdb" - "CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o" - "CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o.d" - "CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o" - "CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o.d" - "CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o" - "CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o.d" -) - -# Per-language clean rules from dependency scanning. -foreach(lang CXX) - include(CMakeFiles/CuJavaCommonJNI.dir/cmake_clean_${lang}.cmake OPTIONAL) -endforeach() diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cmake_clean_target.cmake b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cmake_clean_target.cmake deleted file mode 100644 index 70103b5824a..00000000000 --- a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cmake_clean_target.cmake +++ /dev/null @@ -1,3 +0,0 @@ -file(REMOVE_RECURSE - "/home/rene/projects/systemds/src/main/cpp/lib/libCuJavaCommonJNI.a" -) diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.internal b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.internal deleted file mode 100644 index c0369a66a34..00000000000 --- a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.internal +++ /dev/null @@ -1,127 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 3.22 - -common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o - /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_jni_utils.cpp - /usr/include/stdc-predef.h - /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_jni_utils.hpp - /usr/lib/jvm/java-11-openjdk-amd64/include/jni.h - /usr/include/stdio.h - /usr/include/x86_64-linux-gnu/bits/libc-header-start.h - /usr/include/features.h - /usr/include/features-time64.h - /usr/include/x86_64-linux-gnu/bits/wordsize.h - /usr/include/x86_64-linux-gnu/bits/timesize.h - /usr/include/x86_64-linux-gnu/sys/cdefs.h - /usr/include/x86_64-linux-gnu/bits/long-double.h - /usr/include/x86_64-linux-gnu/gnu/stubs.h - /usr/include/x86_64-linux-gnu/gnu/stubs-64.h - /usr/lib/gcc/x86_64-linux-gnu/12/include/stddef.h - /usr/lib/gcc/x86_64-linux-gnu/12/include/stdarg.h - /usr/include/x86_64-linux-gnu/bits/types.h - /usr/include/x86_64-linux-gnu/bits/typesizes.h - /usr/include/x86_64-linux-gnu/bits/time64.h - /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h - /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h - /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h - /usr/include/x86_64-linux-gnu/bits/types/__FILE.h - /usr/include/x86_64-linux-gnu/bits/types/FILE.h - /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h - /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h - /usr/include/x86_64-linux-gnu/bits/stdio_lim.h - /usr/include/x86_64-linux-gnu/bits/floatn.h - /usr/include/x86_64-linux-gnu/bits/floatn-common.h - /usr/include/x86_64-linux-gnu/bits/stdio.h - /usr/include/x86_64-linux-gnu/bits/stdio2.h - /usr/lib/jvm/java-11-openjdk-amd64/include/linux/jni_md.h - /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_logger.hpp - /usr/include/c++/12/cstdarg - /usr/include/x86_64-linux-gnu/c++/12/bits/c++config.h - /usr/include/x86_64-linux-gnu/c++/12/bits/os_defines.h - /usr/include/x86_64-linux-gnu/c++/12/bits/cpu_defines.h - /usr/include/c++/12/cstdio - -common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o - /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_logger.cpp - /usr/include/stdc-predef.h - /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_logger.hpp - /usr/include/c++/12/cstdarg - /usr/include/x86_64-linux-gnu/c++/12/bits/c++config.h - /usr/include/x86_64-linux-gnu/c++/12/bits/os_defines.h - /usr/include/features.h - /usr/include/features-time64.h - /usr/include/x86_64-linux-gnu/bits/wordsize.h - /usr/include/x86_64-linux-gnu/bits/timesize.h - /usr/include/x86_64-linux-gnu/sys/cdefs.h - /usr/include/x86_64-linux-gnu/bits/long-double.h - /usr/include/x86_64-linux-gnu/gnu/stubs.h - /usr/include/x86_64-linux-gnu/gnu/stubs-64.h - /usr/include/x86_64-linux-gnu/c++/12/bits/cpu_defines.h - /usr/lib/gcc/x86_64-linux-gnu/12/include/stdarg.h - /usr/include/c++/12/cstdio - /usr/include/stdio.h - /usr/include/x86_64-linux-gnu/bits/libc-header-start.h - /usr/lib/gcc/x86_64-linux-gnu/12/include/stddef.h - /usr/include/x86_64-linux-gnu/bits/types.h - /usr/include/x86_64-linux-gnu/bits/typesizes.h - /usr/include/x86_64-linux-gnu/bits/time64.h - /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h - /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h - /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h - /usr/include/x86_64-linux-gnu/bits/types/__FILE.h - /usr/include/x86_64-linux-gnu/bits/types/FILE.h - /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h - /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h - /usr/include/x86_64-linux-gnu/bits/stdio_lim.h - /usr/include/x86_64-linux-gnu/bits/floatn.h - /usr/include/x86_64-linux-gnu/bits/floatn-common.h - /usr/include/x86_64-linux-gnu/bits/stdio.h - /usr/include/x86_64-linux-gnu/bits/stdio2.h - -common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o - /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_pointer_utils.cpp - /usr/include/stdc-predef.h - /usr/lib/jvm/java-11-openjdk-amd64/include/jni.h - /usr/include/stdio.h - /usr/include/x86_64-linux-gnu/bits/libc-header-start.h - /usr/include/features.h - /usr/include/features-time64.h - /usr/include/x86_64-linux-gnu/bits/wordsize.h - /usr/include/x86_64-linux-gnu/bits/timesize.h - /usr/include/x86_64-linux-gnu/sys/cdefs.h - /usr/include/x86_64-linux-gnu/bits/long-double.h - /usr/include/x86_64-linux-gnu/gnu/stubs.h - /usr/include/x86_64-linux-gnu/gnu/stubs-64.h - /usr/lib/gcc/x86_64-linux-gnu/12/include/stddef.h - /usr/lib/gcc/x86_64-linux-gnu/12/include/stdarg.h - /usr/include/x86_64-linux-gnu/bits/types.h - /usr/include/x86_64-linux-gnu/bits/typesizes.h - /usr/include/x86_64-linux-gnu/bits/time64.h - /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h - /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h - /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h - /usr/include/x86_64-linux-gnu/bits/types/__FILE.h - /usr/include/x86_64-linux-gnu/bits/types/FILE.h - /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h - /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h - /usr/include/x86_64-linux-gnu/bits/stdio_lim.h - /usr/include/x86_64-linux-gnu/bits/floatn.h - /usr/include/x86_64-linux-gnu/bits/floatn-common.h - /usr/include/x86_64-linux-gnu/bits/stdio.h - /usr/include/x86_64-linux-gnu/bits/stdio2.h - /usr/lib/jvm/java-11-openjdk-amd64/include/linux/jni_md.h - /usr/include/c++/12/cstdint - /usr/include/x86_64-linux-gnu/c++/12/bits/c++config.h - /usr/include/x86_64-linux-gnu/c++/12/bits/os_defines.h - /usr/include/x86_64-linux-gnu/c++/12/bits/cpu_defines.h - /usr/lib/gcc/x86_64-linux-gnu/12/include/stdint.h - /usr/include/stdint.h - /usr/include/x86_64-linux-gnu/bits/wchar.h - /usr/include/x86_64-linux-gnu/bits/stdint-intn.h - /usr/include/x86_64-linux-gnu/bits/stdint-uintn.h - /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_logger.hpp - /usr/include/c++/12/cstdarg - /usr/include/c++/12/cstdio - /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_jni_utils.hpp - /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_pointer_utils.hpp - diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.make b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.make deleted file mode 100644 index d9a06fa900e..00000000000 --- a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.make +++ /dev/null @@ -1,218 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 3.22 - -common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o: ../common/cujava_jni_utils.cpp \ - /usr/include/stdc-predef.h \ - ../common/cujava_jni_utils.hpp \ - /usr/lib/jvm/java-11-openjdk-amd64/include/jni.h \ - /usr/include/stdio.h \ - /usr/include/x86_64-linux-gnu/bits/libc-header-start.h \ - /usr/include/features.h \ - /usr/include/features-time64.h \ - /usr/include/x86_64-linux-gnu/bits/wordsize.h \ - /usr/include/x86_64-linux-gnu/bits/timesize.h \ - /usr/include/x86_64-linux-gnu/sys/cdefs.h \ - /usr/include/x86_64-linux-gnu/bits/long-double.h \ - /usr/include/x86_64-linux-gnu/gnu/stubs.h \ - /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ - /usr/lib/gcc/x86_64-linux-gnu/12/include/stddef.h \ - /usr/lib/gcc/x86_64-linux-gnu/12/include/stdarg.h \ - /usr/include/x86_64-linux-gnu/bits/types.h \ - /usr/include/x86_64-linux-gnu/bits/typesizes.h \ - /usr/include/x86_64-linux-gnu/bits/time64.h \ - /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h \ - /usr/include/x86_64-linux-gnu/bits/stdio_lim.h \ - /usr/include/x86_64-linux-gnu/bits/floatn.h \ - /usr/include/x86_64-linux-gnu/bits/floatn-common.h \ - /usr/include/x86_64-linux-gnu/bits/stdio.h \ - /usr/include/x86_64-linux-gnu/bits/stdio2.h \ - /usr/lib/jvm/java-11-openjdk-amd64/include/linux/jni_md.h \ - ../common/cujava_logger.hpp \ - /usr/include/c++/12/cstdarg \ - /usr/include/x86_64-linux-gnu/c++/12/bits/c++config.h \ - /usr/include/x86_64-linux-gnu/c++/12/bits/os_defines.h \ - /usr/include/x86_64-linux-gnu/c++/12/bits/cpu_defines.h \ - /usr/include/c++/12/cstdio - -common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o: ../common/cujava_logger.cpp \ - /usr/include/stdc-predef.h \ - ../common/cujava_logger.hpp \ - /usr/include/c++/12/cstdarg \ - /usr/include/x86_64-linux-gnu/c++/12/bits/c++config.h \ - /usr/include/x86_64-linux-gnu/c++/12/bits/os_defines.h \ - /usr/include/features.h \ - /usr/include/features-time64.h \ - /usr/include/x86_64-linux-gnu/bits/wordsize.h \ - /usr/include/x86_64-linux-gnu/bits/timesize.h \ - /usr/include/x86_64-linux-gnu/sys/cdefs.h \ - /usr/include/x86_64-linux-gnu/bits/long-double.h \ - /usr/include/x86_64-linux-gnu/gnu/stubs.h \ - /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ - /usr/include/x86_64-linux-gnu/c++/12/bits/cpu_defines.h \ - /usr/lib/gcc/x86_64-linux-gnu/12/include/stdarg.h \ - /usr/include/c++/12/cstdio \ - /usr/include/stdio.h \ - /usr/include/x86_64-linux-gnu/bits/libc-header-start.h \ - /usr/lib/gcc/x86_64-linux-gnu/12/include/stddef.h \ - /usr/include/x86_64-linux-gnu/bits/types.h \ - /usr/include/x86_64-linux-gnu/bits/typesizes.h \ - /usr/include/x86_64-linux-gnu/bits/time64.h \ - /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h \ - /usr/include/x86_64-linux-gnu/bits/stdio_lim.h \ - /usr/include/x86_64-linux-gnu/bits/floatn.h \ - /usr/include/x86_64-linux-gnu/bits/floatn-common.h \ - /usr/include/x86_64-linux-gnu/bits/stdio.h \ - /usr/include/x86_64-linux-gnu/bits/stdio2.h - -common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o: ../common/cujava_pointer_utils.cpp \ - /usr/include/stdc-predef.h \ - /usr/lib/jvm/java-11-openjdk-amd64/include/jni.h \ - /usr/include/stdio.h \ - /usr/include/x86_64-linux-gnu/bits/libc-header-start.h \ - /usr/include/features.h \ - /usr/include/features-time64.h \ - /usr/include/x86_64-linux-gnu/bits/wordsize.h \ - /usr/include/x86_64-linux-gnu/bits/timesize.h \ - /usr/include/x86_64-linux-gnu/sys/cdefs.h \ - /usr/include/x86_64-linux-gnu/bits/long-double.h \ - /usr/include/x86_64-linux-gnu/gnu/stubs.h \ - /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ - /usr/lib/gcc/x86_64-linux-gnu/12/include/stddef.h \ - /usr/lib/gcc/x86_64-linux-gnu/12/include/stdarg.h \ - /usr/include/x86_64-linux-gnu/bits/types.h \ - /usr/include/x86_64-linux-gnu/bits/typesizes.h \ - /usr/include/x86_64-linux-gnu/bits/time64.h \ - /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h \ - /usr/include/x86_64-linux-gnu/bits/stdio_lim.h \ - /usr/include/x86_64-linux-gnu/bits/floatn.h \ - /usr/include/x86_64-linux-gnu/bits/floatn-common.h \ - /usr/include/x86_64-linux-gnu/bits/stdio.h \ - /usr/include/x86_64-linux-gnu/bits/stdio2.h \ - /usr/lib/jvm/java-11-openjdk-amd64/include/linux/jni_md.h \ - /usr/include/c++/12/cstdint \ - /usr/include/x86_64-linux-gnu/c++/12/bits/c++config.h \ - /usr/include/x86_64-linux-gnu/c++/12/bits/os_defines.h \ - /usr/include/x86_64-linux-gnu/c++/12/bits/cpu_defines.h \ - /usr/lib/gcc/x86_64-linux-gnu/12/include/stdint.h \ - /usr/include/stdint.h \ - /usr/include/x86_64-linux-gnu/bits/wchar.h \ - /usr/include/x86_64-linux-gnu/bits/stdint-intn.h \ - /usr/include/x86_64-linux-gnu/bits/stdint-uintn.h \ - ../common/cujava_logger.hpp \ - /usr/include/c++/12/cstdarg \ - /usr/include/c++/12/cstdio \ - ../common/cujava_jni_utils.hpp \ - ../common/cujava_pointer_utils.hpp - - -/usr/include/x86_64-linux-gnu/bits/stdint-intn.h: - -/usr/lib/gcc/x86_64-linux-gnu/12/include/stdint.h: - -/usr/include/c++/12/cstdint: - -../common/cujava_pointer_utils.cpp: - -/usr/include/c++/12/cstdio: - -/usr/include/x86_64-linux-gnu/c++/12/bits/cpu_defines.h: - -/usr/include/x86_64-linux-gnu/c++/12/bits/os_defines.h: - -/usr/include/x86_64-linux-gnu/bits/stdio.h: - -/usr/include/stdint.h: - -/usr/include/x86_64-linux-gnu/bits/timesize.h: - -/usr/lib/gcc/x86_64-linux-gnu/12/include/stddef.h: - -/usr/lib/jvm/java-11-openjdk-amd64/include/jni.h: - -/usr/include/x86_64-linux-gnu/bits/libc-header-start.h: - -/usr/include/stdc-predef.h: - -/usr/include/x86_64-linux-gnu/bits/stdio2.h: - -/usr/include/x86_64-linux-gnu/sys/cdefs.h: - -/usr/include/stdio.h: - -/usr/include/x86_64-linux-gnu/bits/floatn-common.h: - -../common/cujava_logger.hpp: - -/usr/include/x86_64-linux-gnu/bits/long-double.h: - -../common/cujava_jni_utils.hpp: - -/usr/include/x86_64-linux-gnu/bits/wordsize.h: - -../common/cujava_jni_utils.cpp: - -/usr/include/x86_64-linux-gnu/bits/stdint-uintn.h: - -/usr/include/x86_64-linux-gnu/bits/wchar.h: - -/usr/include/x86_64-linux-gnu/gnu/stubs-64.h: - -/usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h: - -../common/cujava_pointer_utils.hpp: - -/usr/lib/gcc/x86_64-linux-gnu/12/include/stdarg.h: - -/usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h: - -/usr/include/x86_64-linux-gnu/bits/typesizes.h: - -/usr/include/x86_64-linux-gnu/bits/time64.h: - -/usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h: - -../common/cujava_logger.cpp: - -/usr/lib/jvm/java-11-openjdk-amd64/include/linux/jni_md.h: - -/usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h: - -/usr/include/x86_64-linux-gnu/bits/types/__FILE.h: - -/usr/include/x86_64-linux-gnu/c++/12/bits/c++config.h: - -/usr/include/features.h: - -/usr/include/x86_64-linux-gnu/bits/types/FILE.h: - -/usr/include/features-time64.h: - -/usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h: - -/usr/include/c++/12/cstdarg: - -/usr/include/x86_64-linux-gnu/bits/types.h: - -/usr/include/x86_64-linux-gnu/gnu/stubs.h: - -/usr/include/x86_64-linux-gnu/bits/stdio_lim.h: - -/usr/include/x86_64-linux-gnu/bits/floatn.h: diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.ts b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.ts deleted file mode 100644 index 17eeca5619f..00000000000 --- a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.ts +++ /dev/null @@ -1,2 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Timestamp file for compiler generated dependencies management for CuJavaCommonJNI. diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o deleted file mode 100644 index ad1f68a520fe44179d163389f5355eed4336e46e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7544 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 QUyg?_v=^*b{%Pm`AK@IC+W-In diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o.d b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o.d deleted file mode 100644 index 7ded0e0ccf0..00000000000 --- a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o.d +++ /dev/null @@ -1,38 +0,0 @@ -common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o: \ - /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_jni_utils.cpp \ - /usr/include/stdc-predef.h \ - /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_jni_utils.hpp \ - /usr/lib/jvm/java-11-openjdk-amd64/include/jni.h /usr/include/stdio.h \ - /usr/include/x86_64-linux-gnu/bits/libc-header-start.h \ - /usr/include/features.h /usr/include/features-time64.h \ - /usr/include/x86_64-linux-gnu/bits/wordsize.h \ - /usr/include/x86_64-linux-gnu/bits/timesize.h \ - /usr/include/x86_64-linux-gnu/sys/cdefs.h \ - /usr/include/x86_64-linux-gnu/bits/long-double.h \ - /usr/include/x86_64-linux-gnu/gnu/stubs.h \ - /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ - /usr/lib/gcc/x86_64-linux-gnu/12/include/stddef.h \ - /usr/lib/gcc/x86_64-linux-gnu/12/include/stdarg.h \ - /usr/include/x86_64-linux-gnu/bits/types.h \ - /usr/include/x86_64-linux-gnu/bits/typesizes.h \ - /usr/include/x86_64-linux-gnu/bits/time64.h \ - /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h \ - /usr/include/x86_64-linux-gnu/bits/stdio_lim.h \ - /usr/include/x86_64-linux-gnu/bits/floatn.h \ - /usr/include/x86_64-linux-gnu/bits/floatn-common.h \ - /usr/include/x86_64-linux-gnu/bits/stdio.h \ - /usr/include/x86_64-linux-gnu/bits/stdio2.h \ - /usr/lib/jvm/java-11-openjdk-amd64/include/linux/jni_md.h \ - /usr/include/c++/12/new \ - /usr/include/x86_64-linux-gnu/c++/12/bits/c++config.h \ - /usr/include/x86_64-linux-gnu/c++/12/bits/os_defines.h \ - /usr/include/x86_64-linux-gnu/c++/12/bits/cpu_defines.h \ - /usr/include/c++/12/bits/exception.h \ - /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_logger.hpp \ - /usr/include/c++/12/cstdarg /usr/include/c++/12/cstdio diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o deleted file mode 100644 index 7229186d77db2f497a8b1c00c72b445c79b65508..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2056 zcmbu9O-vI(6vwAfr2@7^J&=If!)mC?rUg_2i7C*+MmIpD7^5-kwrnX-+Ge{;fCC?q zgH1z%@nVbz4<0?3=+PJwOz_~rg9j52){`b06ZK|H@V(ucGTF2zU$Xtb`OUmHGjC?P z8k2|XTrR@QMJ|#37Ndl`aqs&P%Z-r3q?!Eoo%k~$t$%+9Oe)5OkW`d~Ubz?*A~JZ= z#mTrXqD`1Lf_-3KTWbDdMcm})UbO-BRZjjW3_QYdYYo7# zYB;ach5@uxc4hAy$0XsaHh#7SU#h{^YVdo&ah+vQv`QV4=B&D)Dw*8$w5E&6e4Z#b zMlZ-#vm0ov7kpV;&@$s!lFLLHk;euHWMyo4cp?^8;sb+nOyNSp=aZ(cYgvOu#Yn-J z%9#dHl!a7YpUE02C7GThsZ_=+q=6O;H93b!NvSg#K2^A&?Wd_M!(M;J7IFp@@66vl z+wODxAjjWQj(4hoM>qsJz`;L-cS=nEEu}2 zY3Au#MimWh(IDcKYN$j^6beL4=H}<2u0+h{3{8YL(rHzWwx_eEnAdZ8O*fW^Xl2mS zN=jGfH8$gaX#k?}ZD37#i_pdo9)j<@%Wc50_7V7adq5xf7KM$VI1io$TB|MOG$?ZR ze?Tz_Aq2zRygA$Fpc8XC<9ld4AB(;dhbap=2C{h3!C5@hzA8B}B*6yMh-dgRICyXQ zyM=ve8Xv$0XRLkWseyyxRG7&_c7i;Q3)Ji)ZIoZEl?E1D)SP pwFwxWkux6Op!4hikuu%Tb8K)%(^W_dc-7*s)Ah6e6Bgi%{|B2y0nY#c diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o.d b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o.d deleted file mode 100644 index cb81af50e50..00000000000 --- a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o.d +++ /dev/null @@ -1,34 +0,0 @@ -common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o: \ - /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_logger.cpp \ - /usr/include/stdc-predef.h \ - /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_logger.hpp \ - /usr/include/c++/12/cstdarg \ - /usr/include/x86_64-linux-gnu/c++/12/bits/c++config.h \ - /usr/include/x86_64-linux-gnu/c++/12/bits/os_defines.h \ - /usr/include/features.h /usr/include/features-time64.h \ - /usr/include/x86_64-linux-gnu/bits/wordsize.h \ - /usr/include/x86_64-linux-gnu/bits/timesize.h \ - /usr/include/x86_64-linux-gnu/sys/cdefs.h \ - /usr/include/x86_64-linux-gnu/bits/long-double.h \ - /usr/include/x86_64-linux-gnu/gnu/stubs.h \ - /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ - /usr/include/x86_64-linux-gnu/c++/12/bits/cpu_defines.h \ - /usr/lib/gcc/x86_64-linux-gnu/12/include/stdarg.h \ - /usr/include/c++/12/cstdio /usr/include/stdio.h \ - /usr/include/x86_64-linux-gnu/bits/libc-header-start.h \ - /usr/lib/gcc/x86_64-linux-gnu/12/include/stddef.h \ - /usr/include/x86_64-linux-gnu/bits/types.h \ - /usr/include/x86_64-linux-gnu/bits/typesizes.h \ - /usr/include/x86_64-linux-gnu/bits/time64.h \ - /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h \ - /usr/include/x86_64-linux-gnu/bits/stdio_lim.h \ - /usr/include/x86_64-linux-gnu/bits/floatn.h \ - /usr/include/x86_64-linux-gnu/bits/floatn-common.h \ - /usr/include/x86_64-linux-gnu/bits/stdio.h \ - /usr/include/x86_64-linux-gnu/bits/stdio2.h diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o deleted file mode 100644 index b5ad40f221ec6c959501145b58689fa2518cdd63..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 44536 zcmeHwe|%k4mG5b9X#>S1K-H)Smy&8KkmjZ-O({asB<)F?rh%qEq%BFB+%##^Bqlfg z0ki~@6t1BVkO5TGGV(BksP)Gi(Lo6mO5Y5h_wdIcI{4@yGqx15Dj+&Aowe3p>)dtE zJv%uO=ks}gy#499d!O%FzxLWc&))l_H&)dwojPTTBVmejg_F7y)Nx7&Qt2{EmN{Q_ z9wORH;l3HJ7PydiA;+a0FXH$zh_}Jj!S{uyEy$xhD>@t$LZ@KzJb#>LHsFB4?(<-(>HT`3&crI zf12ZAh;QZeevWU0_;yZ@aC`^EcXIkO9Nz`;-*EbFj_-l^UQT}&;?HsV^AO+1=`TS1 zMNWSS;scz%AL74-ONT$?ocHH7?*8{8w%Sephdc0UUW+?CZB79IZn82zD>mjP|IK}R zT0WAv$=8lyJUEs!*fbUHhl$f2F3ES3FV^fojfnQY2P2QL6bX$A;0HSI$$4Q#yfG!D zu4j-iP}jG@ib#efYz#}d&}!6&!-{wv92%UjU*MDB2p7Srkx{xg#gd%r4nawMS3%>J z6xPfTMVe?2LsS`t==?{fK_BG~*XL)oxEIZ$YS(v`JMd)QhE0cZ&UYR;1>uCLF*)a# zIapuI*SX2x$HvOnmanN!zTxg)09HHY^=q*HJ~kb*0F{{P*vg^bbIu<`)0~=Na;oR|>f!fECZ8e$E}|}iN)OdR z0S@P~_u;-A9S%h)`rZKQ^8UA{)w zviGq9u#{3@-h?Hc7g*9!%&lY%@&RRMjMLe1eRi4t5&Vo9@YjyVbq-%dv$$Rt-~%j+ z%KT_rHvbRQVpEv@93CG9>#%)g<{hgj<=vWbuSUC2*SVJajlG;YIw{6rV@<1+qMU6t z7JG-9sj) zzSidVZJCHVPnAsHB1@^94V@n}l}fCWrbjmg2c=6z(mGO;{57SjVlN+m`9Dvc;{3

#I&0L(+nvobB;^A5T>s5p*y0+%pA^>w793Z{06 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 Y`lW;4f4IyY#6Q|&xb{Q-bnx^47xETh1ONa4 diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o.d b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o.d deleted file mode 100644 index e4c67f047cc..00000000000 --- a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o.d +++ /dev/null @@ -1,43 +0,0 @@ -common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o: \ - /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_pointer_utils.cpp \ - /usr/include/stdc-predef.h \ - /usr/lib/jvm/java-11-openjdk-amd64/include/jni.h /usr/include/stdio.h \ - /usr/include/x86_64-linux-gnu/bits/libc-header-start.h \ - /usr/include/features.h /usr/include/features-time64.h \ - /usr/include/x86_64-linux-gnu/bits/wordsize.h \ - /usr/include/x86_64-linux-gnu/bits/timesize.h \ - /usr/include/x86_64-linux-gnu/sys/cdefs.h \ - /usr/include/x86_64-linux-gnu/bits/long-double.h \ - /usr/include/x86_64-linux-gnu/gnu/stubs.h \ - /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ - /usr/lib/gcc/x86_64-linux-gnu/12/include/stddef.h \ - /usr/lib/gcc/x86_64-linux-gnu/12/include/stdarg.h \ - /usr/include/x86_64-linux-gnu/bits/types.h \ - /usr/include/x86_64-linux-gnu/bits/typesizes.h \ - /usr/include/x86_64-linux-gnu/bits/time64.h \ - /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h \ - /usr/include/x86_64-linux-gnu/bits/stdio_lim.h \ - /usr/include/x86_64-linux-gnu/bits/floatn.h \ - /usr/include/x86_64-linux-gnu/bits/floatn-common.h \ - /usr/include/x86_64-linux-gnu/bits/stdio.h \ - /usr/include/x86_64-linux-gnu/bits/stdio2.h \ - /usr/lib/jvm/java-11-openjdk-amd64/include/linux/jni_md.h \ - /usr/include/c++/12/cstdint \ - /usr/include/x86_64-linux-gnu/c++/12/bits/c++config.h \ - /usr/include/x86_64-linux-gnu/c++/12/bits/os_defines.h \ - /usr/include/x86_64-linux-gnu/c++/12/bits/cpu_defines.h \ - /usr/lib/gcc/x86_64-linux-gnu/12/include/stdint.h /usr/include/stdint.h \ - /usr/include/x86_64-linux-gnu/bits/wchar.h \ - /usr/include/x86_64-linux-gnu/bits/stdint-intn.h \ - /usr/include/x86_64-linux-gnu/bits/stdint-uintn.h \ - /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_logger.hpp \ - /usr/include/c++/12/cstdarg /usr/include/c++/12/cstdio \ - /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_jni_utils.hpp \ - /usr/include/c++/12/new /usr/include/c++/12/bits/exception.h \ - /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_pointer_utils.hpp diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/depend.make b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/depend.make deleted file mode 100644 index 4918cb226bc..00000000000 --- a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/depend.make +++ /dev/null @@ -1,2 +0,0 @@ -# Empty dependencies file for CuJavaCommonJNI. -# This may be replaced when dependencies are built. diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/flags.make b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/flags.make deleted file mode 100644 index ce0eb24447c..00000000000 --- a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/flags.make +++ /dev/null @@ -1,10 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 3.22 - -# compile CXX with /usr/bin/c++ -CXX_DEFINES = - -CXX_INCLUDES = -I/usr/lib/jvm/java-11-openjdk-amd64/include -I/usr/lib/jvm/java-11-openjdk-amd64/include/linux -I/home/rene/projects/systemds/src/main/cpp/jni/common - -CXX_FLAGS = -O3 -DNDEBUG -fPIC -std=gnu++11 - diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/link.txt b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/link.txt deleted file mode 100644 index abb08b36493..00000000000 --- a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/link.txt +++ /dev/null @@ -1,2 +0,0 @@ -/usr/bin/ar qc /home/rene/projects/systemds/src/main/cpp/lib/libCuJavaCommonJNI.a CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o -/usr/bin/ranlib /home/rene/projects/systemds/src/main/cpp/lib/libCuJavaCommonJNI.a diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/progress.make b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/progress.make deleted file mode 100644 index a69a57e8e4f..00000000000 --- a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/progress.make +++ /dev/null @@ -1,5 +0,0 @@ -CMAKE_PROGRESS_1 = 1 -CMAKE_PROGRESS_2 = 2 -CMAKE_PROGRESS_3 = 3 -CMAKE_PROGRESS_4 = 4 - diff --git a/src/main/cpp/jni/build/common/CMakeFiles/progress.marks b/src/main/cpp/jni/build/common/CMakeFiles/progress.marks deleted file mode 100644 index b8626c4cff2..00000000000 --- a/src/main/cpp/jni/build/common/CMakeFiles/progress.marks +++ /dev/null @@ -1 +0,0 @@ -4 diff --git a/src/main/cpp/jni/build/common/Makefile b/src/main/cpp/jni/build/common/Makefile deleted file mode 100644 index 28447921416..00000000000 --- a/src/main/cpp/jni/build/common/Makefile +++ /dev/null @@ -1,236 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 3.22 - -# Default target executed when no arguments are given to make. -default_target: all -.PHONY : default_target - -# Allow only one "make -f Makefile2" at a time, but pass parallelism. -.NOTPARALLEL: - -#============================================================================= -# Special targets provided by cmake. - -# Disable implicit rules so canonical targets will work. -.SUFFIXES: - -# Disable VCS-based implicit rules. -% : %,v - -# Disable VCS-based implicit rules. -% : RCS/% - -# Disable VCS-based implicit rules. -% : RCS/%,v - -# Disable VCS-based implicit rules. -% : SCCS/s.% - -# Disable VCS-based implicit rules. -% : s.% - -.SUFFIXES: .hpux_make_needs_suffix_list - -# Command-line flag to silence nested $(MAKE). -$(VERBOSE)MAKESILENT = -s - -#Suppress display of executed commands. -$(VERBOSE).SILENT: - -# A target that is always out of date. -cmake_force: -.PHONY : cmake_force - -#============================================================================= -# Set environment variables for the build. - -# The shell in which to execute make rules. -SHELL = /bin/sh - -# The CMake executable. -CMAKE_COMMAND = /usr/bin/cmake - -# The command to remove a file. -RM = /usr/bin/cmake -E rm -f - -# Escaping for special characters. -EQUALS = = - -# The top-level source directory on which CMake was run. -CMAKE_SOURCE_DIR = /home/rene/projects/systemds/src/main/cpp/jni - -# The top-level build directory on which CMake was run. -CMAKE_BINARY_DIR = /home/rene/projects/systemds/src/main/cpp/jni/build - -#============================================================================= -# Targets provided globally by CMake. - -# Special rule for the target edit_cache -edit_cache: - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "No interactive CMake dialog available..." - /usr/bin/cmake -E echo No\ interactive\ CMake\ dialog\ available. -.PHONY : edit_cache - -# Special rule for the target edit_cache -edit_cache/fast: edit_cache -.PHONY : edit_cache/fast - -# Special rule for the target rebuild_cache -rebuild_cache: - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..." - /usr/bin/cmake --regenerate-during-build -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) -.PHONY : rebuild_cache - -# Special rule for the target rebuild_cache -rebuild_cache/fast: rebuild_cache -.PHONY : rebuild_cache/fast - -# The main all target -all: cmake_check_build_system - cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(CMAKE_COMMAND) -E cmake_progress_start /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles /home/rene/projects/systemds/src/main/cpp/jni/build/common//CMakeFiles/progress.marks - cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 common/all - $(CMAKE_COMMAND) -E cmake_progress_start /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles 0 -.PHONY : all - -# The main clean target -clean: - cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 common/clean -.PHONY : clean - -# The main clean target -clean/fast: clean -.PHONY : clean/fast - -# Prepare targets for installation. -preinstall: all - cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 common/preinstall -.PHONY : preinstall - -# Prepare targets for installation. -preinstall/fast: - cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 common/preinstall -.PHONY : preinstall/fast - -# clear depends -depend: - cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1 -.PHONY : depend - -# Convenience name for target. -common/CMakeFiles/CuJavaCommonJNI.dir/rule: - cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 common/CMakeFiles/CuJavaCommonJNI.dir/rule -.PHONY : common/CMakeFiles/CuJavaCommonJNI.dir/rule - -# Convenience name for target. -CuJavaCommonJNI: common/CMakeFiles/CuJavaCommonJNI.dir/rule -.PHONY : CuJavaCommonJNI - -# fast build rule for target. -CuJavaCommonJNI/fast: - cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/build -.PHONY : CuJavaCommonJNI/fast - -cujava_jni_utils.o: cujava_jni_utils.cpp.o -.PHONY : cujava_jni_utils.o - -# target to build an object file -cujava_jni_utils.cpp.o: - cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o -.PHONY : cujava_jni_utils.cpp.o - -cujava_jni_utils.i: cujava_jni_utils.cpp.i -.PHONY : cujava_jni_utils.i - -# target to preprocess a source file -cujava_jni_utils.cpp.i: - cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.i -.PHONY : cujava_jni_utils.cpp.i - -cujava_jni_utils.s: cujava_jni_utils.cpp.s -.PHONY : cujava_jni_utils.s - -# target to generate assembly for a file -cujava_jni_utils.cpp.s: - cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.s -.PHONY : cujava_jni_utils.cpp.s - -cujava_logger.o: cujava_logger.cpp.o -.PHONY : cujava_logger.o - -# target to build an object file -cujava_logger.cpp.o: - cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o -.PHONY : cujava_logger.cpp.o - -cujava_logger.i: cujava_logger.cpp.i -.PHONY : cujava_logger.i - -# target to preprocess a source file -cujava_logger.cpp.i: - cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.i -.PHONY : cujava_logger.cpp.i - -cujava_logger.s: cujava_logger.cpp.s -.PHONY : cujava_logger.s - -# target to generate assembly for a file -cujava_logger.cpp.s: - cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.s -.PHONY : cujava_logger.cpp.s - -cujava_pointer_utils.o: cujava_pointer_utils.cpp.o -.PHONY : cujava_pointer_utils.o - -# target to build an object file -cujava_pointer_utils.cpp.o: - cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o -.PHONY : cujava_pointer_utils.cpp.o - -cujava_pointer_utils.i: cujava_pointer_utils.cpp.i -.PHONY : cujava_pointer_utils.i - -# target to preprocess a source file -cujava_pointer_utils.cpp.i: - cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.i -.PHONY : cujava_pointer_utils.cpp.i - -cujava_pointer_utils.s: cujava_pointer_utils.cpp.s -.PHONY : cujava_pointer_utils.s - -# target to generate assembly for a file -cujava_pointer_utils.cpp.s: - cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.s -.PHONY : cujava_pointer_utils.cpp.s - -# Help Target -help: - @echo "The following are some of the valid targets for this Makefile:" - @echo "... all (the default if no target is provided)" - @echo "... clean" - @echo "... depend" - @echo "... edit_cache" - @echo "... rebuild_cache" - @echo "... CuJavaCommonJNI" - @echo "... cujava_jni_utils.o" - @echo "... cujava_jni_utils.i" - @echo "... cujava_jni_utils.s" - @echo "... cujava_logger.o" - @echo "... cujava_logger.i" - @echo "... cujava_logger.s" - @echo "... cujava_pointer_utils.o" - @echo "... cujava_pointer_utils.i" - @echo "... cujava_pointer_utils.s" -.PHONY : help - - - -#============================================================================= -# Special targets to cleanup operation of make. - -# Special rule to run CMake to check the build system integrity. -# No rule that depends on this can have commands that come from listfiles -# because they might be regenerated. -cmake_check_build_system: - cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 -.PHONY : cmake_check_build_system - diff --git a/src/main/cpp/jni/build/common/cmake_install.cmake b/src/main/cpp/jni/build/common/cmake_install.cmake deleted file mode 100644 index bad033eb317..00000000000 --- a/src/main/cpp/jni/build/common/cmake_install.cmake +++ /dev/null @@ -1,44 +0,0 @@ -# Install script for directory: /home/rene/projects/systemds/src/main/cpp/jni/common - -# Set the install prefix -if(NOT DEFINED CMAKE_INSTALL_PREFIX) - set(CMAKE_INSTALL_PREFIX "/usr/local") -endif() -string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}") - -# Set the install configuration name. -if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME) - if(BUILD_TYPE) - string(REGEX REPLACE "^[^A-Za-z0-9_]+" "" - CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}") - else() - set(CMAKE_INSTALL_CONFIG_NAME "Release") - endif() - message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"") -endif() - -# Set the component getting installed. -if(NOT CMAKE_INSTALL_COMPONENT) - if(COMPONENT) - message(STATUS "Install component: \"${COMPONENT}\"") - set(CMAKE_INSTALL_COMPONENT "${COMPONENT}") - else() - set(CMAKE_INSTALL_COMPONENT) - endif() -endif() - -# Install shared libraries without execute permission? -if(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE) - set(CMAKE_INSTALL_SO_NO_EXE "1") -endif() - -# Is this installation the result of a crosscompile? -if(NOT DEFINED CMAKE_CROSSCOMPILING) - set(CMAKE_CROSSCOMPILING "FALSE") -endif() - -# Set default install directory permissions. -if(NOT DEFINED CMAKE_OBJDUMP) - set(CMAKE_OBJDUMP "/usr/bin/objdump") -endif() - diff --git a/src/main/cpp/jni/build/runtime/CMakeFiles/CMakeDirectoryInformation.cmake b/src/main/cpp/jni/build/runtime/CMakeFiles/CMakeDirectoryInformation.cmake deleted file mode 100644 index b9b869f5a2e..00000000000 --- a/src/main/cpp/jni/build/runtime/CMakeFiles/CMakeDirectoryInformation.cmake +++ /dev/null @@ -1,16 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 3.22 - -# Relative path conversion top directories. -set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/home/rene/projects/systemds/src/main/cpp/jni") -set(CMAKE_RELATIVE_PATH_TOP_BINARY "/home/rene/projects/systemds/src/main/cpp/jni/build") - -# Force unix paths in dependencies. -set(CMAKE_FORCE_UNIX_PATHS 1) - - -# The C and CXX include file regular expressions for this directory. -set(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$") -set(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$") -set(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN}) -set(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN}) diff --git a/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/DependInfo.cmake b/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/DependInfo.cmake deleted file mode 100644 index 162910217e6..00000000000 --- a/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/DependInfo.cmake +++ /dev/null @@ -1,20 +0,0 @@ - -# Consider dependencies only in project. -set(CMAKE_DEPENDS_IN_PROJECT_ONLY OFF) - -# The set of languages for which implicit dependencies are needed: -set(CMAKE_DEPENDS_LANGUAGES - ) - -# The set of dependency files which are needed: -set(CMAKE_DEPENDS_DEPENDENCY_FILES - "/home/rene/projects/systemds/src/main/cpp/jni/runtime/cujava_runtime.cpp" "runtime/CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.o" "gcc" "runtime/CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.o.d" - ) - -# Targets to which this target links. -set(CMAKE_TARGET_LINKED_INFO_FILES - "/home/rene/projects/systemds/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/DependInfo.cmake" - ) - -# Fortran module output directory. -set(CMAKE_Fortran_TARGET_MODULE_DIR "") diff --git a/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/build.make b/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/build.make deleted file mode 100644 index 22406aed434..00000000000 --- a/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/build.make +++ /dev/null @@ -1,114 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 3.22 - -# Delete rule output on recipe failure. -.DELETE_ON_ERROR: - -#============================================================================= -# Special targets provided by cmake. - -# Disable implicit rules so canonical targets will work. -.SUFFIXES: - -# Disable VCS-based implicit rules. -% : %,v - -# Disable VCS-based implicit rules. -% : RCS/% - -# Disable VCS-based implicit rules. -% : RCS/%,v - -# Disable VCS-based implicit rules. -% : SCCS/s.% - -# Disable VCS-based implicit rules. -% : s.% - -.SUFFIXES: .hpux_make_needs_suffix_list - -# Command-line flag to silence nested $(MAKE). -$(VERBOSE)MAKESILENT = -s - -#Suppress display of executed commands. -$(VERBOSE).SILENT: - -# A target that is always out of date. -cmake_force: -.PHONY : cmake_force - -#============================================================================= -# Set environment variables for the build. - -# The shell in which to execute make rules. -SHELL = /bin/sh - -# The CMake executable. -CMAKE_COMMAND = /usr/bin/cmake - -# The command to remove a file. -RM = /usr/bin/cmake -E rm -f - -# Escaping for special characters. -EQUALS = = - -# The top-level source directory on which CMake was run. -CMAKE_SOURCE_DIR = /home/rene/projects/systemds/src/main/cpp/jni - -# The top-level build directory on which CMake was run. -CMAKE_BINARY_DIR = /home/rene/projects/systemds/src/main/cpp/jni/build - -# Include any dependencies generated for this target. -include runtime/CMakeFiles/CuJavaRuntime.dir/depend.make -# Include any dependencies generated by the compiler for this target. -include runtime/CMakeFiles/CuJavaRuntime.dir/compiler_depend.make - -# Include the progress variables for this target. -include runtime/CMakeFiles/CuJavaRuntime.dir/progress.make - -# Include the compile flags for this target's objects. -include runtime/CMakeFiles/CuJavaRuntime.dir/flags.make - -runtime/CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.o: runtime/CMakeFiles/CuJavaRuntime.dir/flags.make -runtime/CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.o: ../runtime/cujava_runtime.cpp -runtime/CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.o: runtime/CMakeFiles/CuJavaRuntime.dir/compiler_depend.ts - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building CXX object runtime/CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.o" - cd /home/rene/projects/systemds/src/main/cpp/jni/build/runtime && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT runtime/CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.o -MF CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.o.d -o CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.o -c /home/rene/projects/systemds/src/main/cpp/jni/runtime/cujava_runtime.cpp - -runtime/CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.i" - cd /home/rene/projects/systemds/src/main/cpp/jni/build/runtime && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/rene/projects/systemds/src/main/cpp/jni/runtime/cujava_runtime.cpp > CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.i - -runtime/CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.s" - cd /home/rene/projects/systemds/src/main/cpp/jni/build/runtime && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/rene/projects/systemds/src/main/cpp/jni/runtime/cujava_runtime.cpp -o CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.s - -# Object files for target CuJavaRuntime -CuJavaRuntime_OBJECTS = \ -"CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.o" - -# External object files for target CuJavaRuntime -CuJavaRuntime_EXTERNAL_OBJECTS = - -/home/rene/projects/systemds/src/main/cpp/lib/libcujava_runtime.so: runtime/CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.o -/home/rene/projects/systemds/src/main/cpp/lib/libcujava_runtime.so: runtime/CMakeFiles/CuJavaRuntime.dir/build.make -/home/rene/projects/systemds/src/main/cpp/lib/libcujava_runtime.so: /home/rene/projects/systemds/src/main/cpp/lib/libCuJavaCommonJNI.a -/home/rene/projects/systemds/src/main/cpp/lib/libcujava_runtime.so: /usr/local/cuda-12.6/lib64/libcudart.so -/home/rene/projects/systemds/src/main/cpp/lib/libcujava_runtime.so: /usr/lib/jvm/java-11-openjdk-amd64/lib/libjawt.so -/home/rene/projects/systemds/src/main/cpp/lib/libcujava_runtime.so: /usr/lib/jvm/java-11-openjdk-amd64/lib/server/libjvm.so -/home/rene/projects/systemds/src/main/cpp/lib/libcujava_runtime.so: runtime/CMakeFiles/CuJavaRuntime.dir/link.txt - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Linking CXX shared library /home/rene/projects/systemds/src/main/cpp/lib/libcujava_runtime.so" - cd /home/rene/projects/systemds/src/main/cpp/jni/build/runtime && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/CuJavaRuntime.dir/link.txt --verbose=$(VERBOSE) - -# Rule to build all files generated by this target. -runtime/CMakeFiles/CuJavaRuntime.dir/build: /home/rene/projects/systemds/src/main/cpp/lib/libcujava_runtime.so -.PHONY : runtime/CMakeFiles/CuJavaRuntime.dir/build - -runtime/CMakeFiles/CuJavaRuntime.dir/clean: - cd /home/rene/projects/systemds/src/main/cpp/jni/build/runtime && $(CMAKE_COMMAND) -P CMakeFiles/CuJavaRuntime.dir/cmake_clean.cmake -.PHONY : runtime/CMakeFiles/CuJavaRuntime.dir/clean - -runtime/CMakeFiles/CuJavaRuntime.dir/depend: - cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/rene/projects/systemds/src/main/cpp/jni /home/rene/projects/systemds/src/main/cpp/jni/runtime /home/rene/projects/systemds/src/main/cpp/jni/build /home/rene/projects/systemds/src/main/cpp/jni/build/runtime /home/rene/projects/systemds/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/DependInfo.cmake --color=$(COLOR) -.PHONY : runtime/CMakeFiles/CuJavaRuntime.dir/depend - diff --git a/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/cmake_clean.cmake b/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/cmake_clean.cmake deleted file mode 100644 index d9adbdc4504..00000000000 --- a/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/cmake_clean.cmake +++ /dev/null @@ -1,11 +0,0 @@ -file(REMOVE_RECURSE - "/home/rene/projects/systemds/src/main/cpp/lib/libcujava_runtime.pdb" - "/home/rene/projects/systemds/src/main/cpp/lib/libcujava_runtime.so" - "CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.o" - "CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.o.d" -) - -# Per-language clean rules from dependency scanning. -foreach(lang CXX) - include(CMakeFiles/CuJavaRuntime.dir/cmake_clean_${lang}.cmake OPTIONAL) -endforeach() diff --git a/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/compiler_depend.make b/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/compiler_depend.make deleted file mode 100644 index 600905e15ea..00000000000 --- a/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/compiler_depend.make +++ /dev/null @@ -1,2 +0,0 @@ -# Empty compiler generated dependencies file for CuJavaRuntime. -# This may be replaced when dependencies are built. diff --git a/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/compiler_depend.ts b/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/compiler_depend.ts deleted file mode 100644 index 607cea7b755..00000000000 --- a/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/compiler_depend.ts +++ /dev/null @@ -1,2 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Timestamp file for compiler generated dependencies management for CuJavaRuntime. diff --git a/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.o b/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.o deleted file mode 100644 index 436496ae31a5a69b4f5c2407e692aee591ae51e5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32832 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 pW4oIjJA}O1jrf=D*YvwGI Date: Sat, 23 Aug 2025 22:49:34 +0200 Subject: [PATCH 36/57] start cuda context --- .../java/org/apache/sysds/cujava/driver/CUcontext.java | 7 ++++++- .../java/org/apache/sysds/cujava/driver/CuJavaDriver.java | 2 ++ 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/src/main/java/org/apache/sysds/cujava/driver/CUcontext.java b/src/main/java/org/apache/sysds/cujava/driver/CUcontext.java index d1c2d11fef1..188d1908056 100644 --- a/src/main/java/org/apache/sysds/cujava/driver/CUcontext.java +++ b/src/main/java/org/apache/sysds/cujava/driver/CUcontext.java @@ -19,5 +19,10 @@ package org.apache.sysds.cujava.driver; -public class CUcontext { +import org.apache.sysds.cujava.NativePointerObject; + +public class CUcontext extends NativePointerObject { + + public CUcontext() { + } } diff --git a/src/main/java/org/apache/sysds/cujava/driver/CuJavaDriver.java b/src/main/java/org/apache/sysds/cujava/driver/CuJavaDriver.java index a8757d74e73..011bb442d8a 100644 --- a/src/main/java/org/apache/sysds/cujava/driver/CuJavaDriver.java +++ b/src/main/java/org/apache/sysds/cujava/driver/CuJavaDriver.java @@ -20,4 +20,6 @@ package org.apache.sysds.cujava.driver; public class CuJavaDriver { + + private static final String LIB_BASE = "cujava_driver"; } From 6d680c0eff5e176594a48ff85a9fdf423fbdbd42 Mon Sep 17 00:00:00 2001 From: ReneEnjilian Date: Mon, 25 Aug 2025 00:46:04 +0200 Subject: [PATCH 37/57] implement CUdevice_attribute --- .../apache/sysds/cujava/driver/CUdevice.java | 6 +- .../cujava/driver/CUdevice_attribute.java | 733 ++++++++++++++++++ 2 files changed, 738 insertions(+), 1 deletion(-) diff --git a/src/main/java/org/apache/sysds/cujava/driver/CUdevice.java b/src/main/java/org/apache/sysds/cujava/driver/CUdevice.java index eb3aee28188..86b027717ef 100644 --- a/src/main/java/org/apache/sysds/cujava/driver/CUdevice.java +++ b/src/main/java/org/apache/sysds/cujava/driver/CUdevice.java @@ -19,5 +19,9 @@ package org.apache.sysds.cujava.driver; -public class CUdevice { +import org.apache.sysds.cujava.NativePointerObject; + +public class CUdevice extends NativePointerObject { + + public CUdevice() {} } diff --git a/src/main/java/org/apache/sysds/cujava/driver/CUdevice_attribute.java b/src/main/java/org/apache/sysds/cujava/driver/CUdevice_attribute.java index 94edb14e099..ca9e22aafe6 100644 --- a/src/main/java/org/apache/sysds/cujava/driver/CUdevice_attribute.java +++ b/src/main/java/org/apache/sysds/cujava/driver/CUdevice_attribute.java @@ -19,5 +19,738 @@ package org.apache.sysds.cujava.driver; +/** + * This class is a java-side replication of CUdevice_attribute. + * The descriptions were directly taken from: + * https://docs.nvidia.com/cuda/archive/12.6.1/pdf/CUDA_Driver_API.pdf + */ + public class CUdevice_attribute { + + /** + * Maximum number of threads per block + */ + public static final int CU_DEVICE_ATTRIBUTE_MAX_THREADS_PER_BLOCK = 1; + + /** + * Maximum block dimension X + */ + public static final int CU_DEVICE_ATTRIBUTE_MAX_BLOCK_DIM_X = 2; + + /** + * Maximum block dimension Y + */ + public static final int CU_DEVICE_ATTRIBUTE_MAX_BLOCK_DIM_Y = 3; + + /** + * Maximum block dimension Z + */ + public static final int CU_DEVICE_ATTRIBUTE_MAX_BLOCK_DIM_Z = 4; + + /** + * Maximum grid dimension X + */ + public static final int CU_DEVICE_ATTRIBUTE_MAX_GRID_DIM_X = 5; + + /** + * Maximum grid dimension Y + */ + public static final int CU_DEVICE_ATTRIBUTE_MAX_GRID_DIM_Y = 6; + + /** + * Maximum grid dimension Z + */ + public static final int CU_DEVICE_ATTRIBUTE_MAX_GRID_DIM_Z = 7; + + /** + * Maximum shared memory available per block in bytes + */ + public static final int CU_DEVICE_ATTRIBUTE_MAX_SHARED_MEMORY_PER_BLOCK = 8; + + /** + * @deprecated, use CU_DEVICE_ATTRIBUTE_MAX_SHARED_MEMORY_PER_BLOCK + */ + public static final int CU_DEVICE_ATTRIBUTE_SHARED_MEMORY_PER_BLOCK = 8; + + /** + * Memory available on device for __constant__ variables in a CUDA C kernel in bytes + */ + public static final int CU_DEVICE_ATTRIBUTE_TOTAL_CONSTANT_MEMORY = 9; + + /** + * Warp size in threads + */ + public static final int CU_DEVICE_ATTRIBUTE_WARP_SIZE = 10; + + /** + * Maximum pitch in bytes allowed by memory copies + */ + public static final int CU_DEVICE_ATTRIBUTE_MAX_PITCH = 11; + + /** + * Maximum number of 32-bit registers available per block + */ + public static final int CU_DEVICE_ATTRIBUTE_MAX_REGISTERS_PER_BLOCK = 12; + + /** + * @deprecated, use CU_DEVICE_ATTRIBUTE_MAX_REGISTERS_PER_BLOCK + */ + public static final int CU_DEVICE_ATTRIBUTE_REGISTERS_PER_BLOCK = 12; + + /** + * Typical clock frequency in kilohertz + */ + public static final int CU_DEVICE_ATTRIBUTE_CLOCK_RATE = 13; + + /** + * Alignment requirement for textures + */ + public static final int CU_DEVICE_ATTRIBUTE_TEXTURE_ALIGNMENT = 14; + + /** + * Device can possibly copy memory and execute a kernel concurrently. Deprecated. Use instead + * CU_DEVICE_ATTRIBUTE_ASYNC_ENGINE_COUNT. + */ + public static final int CU_DEVICE_ATTRIBUTE_GPU_OVERLAP = 15; + + /** + * Number of multiprocessors on device + */ + public static final int CU_DEVICE_ATTRIBUTE_MULTIPROCESSOR_COUNT = 16; + + /** + * Specifies whether there is a run time limit on kernels + */ + public static final int CU_DEVICE_ATTRIBUTE_KERNEL_EXEC_TIMEOUT = 17; + + /** + * Device is integrated with host memory + */ + public static final int CU_DEVICE_ATTRIBUTE_INTEGRATED = 18; + + /** + * Device can map host memory into CUDA address space + */ + public static final int CU_DEVICE_ATTRIBUTE_CAN_MAP_HOST_MEMORY = 19; + + /** + * Compute mode (See CUcomputemode for details) + */ + public static final int CU_DEVICE_ATTRIBUTE_COMPUTE_MODE = 20; + + /** + * Maximum 1D texture width + */ + public static final int CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE1D_WIDTH = 21; + + /** + * Maximum 2D texture width + */ + public static final int CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_WIDTH = 22; + + /** + * Maximum 2D texture height + */ + public static final int CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_HEIGHT = 23; + + /** + * Maximum 3D texture width + */ + public static final int CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE3D_WIDTH = 24; + + /** + * Maximum 3D texture height + */ + public static final int CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE3D_HEIGHT = 25; + + /** + * Maximum 3D texture depth + */ + public static final int CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE3D_DEPTH = 26; + + /** + * Maximum 2D layered texture width + */ + public static final int CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_LAYERED_WIDTH = 27; + + /** + * Maximum 2D layered texture height + */ + public static final int CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_LAYERED_HEIGHT = 28; + + /** + * Maximum layers in a 2D layered texture + */ + public static final int CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_LAYERED_LAYERS = 29; + + /** + * @deprecated, use CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_LAYERED_WIDTH + */ + public static final int CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_ARRAY_WIDTH = 27; + + /** + * @deprecated, use CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_LAYERED_HEIGHT + */ + public static final int CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_ARRAY_HEIGHT = 28; + + /** + * @deprecated, use CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_LAYERED_LAYERS + */ + public static final int CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_ARRAY_NUMSLICES = 29; + + /** + * Alignment requirement for surfaces + */ + public static final int CU_DEVICE_ATTRIBUTE_SURFACE_ALIGNMENT = 30; + + /** + * Device can possibly execute multiple kernels concurrently + */ + public static final int CU_DEVICE_ATTRIBUTE_CONCURRENT_KERNELS = 31; + + /** + * Device has ECC support enabled + */ + public static final int CU_DEVICE_ATTRIBUTE_ECC_ENABLED = 32; + + /** + * PCI bus ID of the device + */ + public static final int CU_DEVICE_ATTRIBUTE_PCI_BUS_ID = 33; + + /** + * PCI device ID of the device + */ + public static final int CU_DEVICE_ATTRIBUTE_PCI_DEVICE_ID = 34; + + /** + * Device is using TCC driver model + */ + public static final int CU_DEVICE_ATTRIBUTE_TCC_DRIVER = 35; + + /** + * Peak memory clock frequency in kilohertz + */ + public static final int CU_DEVICE_ATTRIBUTE_MEMORY_CLOCK_RATE = 36; + + /** + * Global memory bus width in bits + */ + public static final int CU_DEVICE_ATTRIBUTE_GLOBAL_MEMORY_BUS_WIDTH = 37; + + /** + * Size of L2 cache in bytes + */ + public static final int CU_DEVICE_ATTRIBUTE_L2_CACHE_SIZE = 38; + + /** + * Maximum resident threads per multiprocessor + */ + public static final int CU_DEVICE_ATTRIBUTE_MAX_THREADS_PER_MULTIPROCESSOR = 39; + + /** + * Number of asynchronous engines + */ + public static final int CU_DEVICE_ATTRIBUTE_ASYNC_ENGINE_COUNT = 40; + + /** + * Device shares a unified address space with the host + */ + public static final int CU_DEVICE_ATTRIBUTE_UNIFIED_ADDRESSING = 41; + + /** + * Maximum 1D layered texture width + */ + public static final int CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE1D_LAYERED_WIDTH = 42; + + /** + * Maximum layers in a 1D layered texture + */ + public static final int CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE1D_LAYERED_LAYERS = 43; + + /** + * @deprecated, do not use. + */ + public static final int CU_DEVICE_ATTRIBUTE_CAN_TEX2D_GATHER = 44; + + /** + * Maximum 2D texture width if CUDA_ARRAY3D_TEXTURE_GATHER is set + */ + public static final int CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_GATHER_WIDTH = 45; + + /** + * Maximum 2D texture height if CUDA_ARRAY3D_TEXTURE_GATHER is set + */ + public static final int CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_GATHER_HEIGHT = 46; + + /** + * Alternate maximum 3D texture width + */ + public static final int CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE3D_WIDTH_ALTERNATE = 47; + + /** + * Alternate maximum 3D texture height + */ + public static final int CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE3D_HEIGHT_ALTERNATE = 48; + + /** + * Alternate maximum 3D texture depth + */ + public static final int CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE3D_DEPTH_ALTERNATE = 49; + + /** + * PCI domain ID of the device + */ + public static final int CU_DEVICE_ATTRIBUTE_PCI_DOMAIN_ID = 50; + + /** + * Pitch alignment requirement for textures + */ + public static final int CU_DEVICE_ATTRIBUTE_TEXTURE_PITCH_ALIGNMENT = 51; + + /** + * Maximum cubemap texture width/height + */ + public static final int CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURECUBEMAP_WIDTH = 52; + + /** + * Maximum cubemap layered texture width/height + */ + public static final int CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURECUBEMAP_LAYERED_WIDTH = 53; + + /** + * Maximum layers in a cubemap layered texture + */ + public static final int CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURECUBEMAP_LAYERED_LAYERS = 54; + + /** + * Maximum 1D surface width + */ + public static final int CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE1D_WIDTH = 55; + + /** + * Maximum 2D surface width + */ + public static final int CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE2D_WIDTH = 56; + + /** + * Maximum 2D surface height + */ + public static final int CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE2D_HEIGHT = 57; + + /** + * Maximum 3D surface width + */ + public static final int CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE3D_WIDTH = 58; + + /** + * Maximum 3D surface height + */ + public static final int CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE3D_HEIGHT = 59; + + /** + * Maximum 3D surface depth + */ + public static final int CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE3D_DEPTH = 60; + + /** + * Maximum 1D layered surface width + */ + public static final int CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE1D_LAYERED_WIDTH = 61; + + /** + * Maximum layers in a 1D layered surface + */ + public static final int CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE1D_LAYERED_LAYERS = 62; + + /** + * Maximum 2D layered surface width + */ + public static final int CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE2D_LAYERED_WIDTH = 63; + + /** + * Maximum 2D layered surface height + */ + public static final int CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE2D_LAYERED_HEIGHT = 64; + + /** + * Maximum layers in a 2D layered surface + */ + public static final int CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACE2D_LAYERED_LAYERS = 65; + + /** + * Maximum cubemap surface width + */ + public static final int CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACECUBEMAP_WIDTH = 66; + + /** + * Maximum cubemap layered surface width + */ + public static final int CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACECUBEMAP_LAYERED_WIDTH = 67; + + /** + * Maximum layers in a cubemap layered surface + */ + public static final int CU_DEVICE_ATTRIBUTE_MAXIMUM_SURFACECUBEMAP_LAYERED_LAYERS = 68; + + /** + * @deprecated, do not use. Use cudaDeviceGetTexture1DLinearMaxWidth() or + * cuDeviceGetTexture1DLinearMaxWidth() instead. + */ + public static final int CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE1D_LINEAR_WIDTH = 69; + + /** + * Maximum 2D linear texture width + */ + public static final int CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_LINEAR_WIDTH = 70; + + /** + * Maximum 2D linear texture height + */ + public static final int CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_LINEAR_HEIGHT = 71; + + /** + * Maximum 2D linear texture pitch in bytes + */ + public static final int CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_LINEAR_PITCH = 72; + + /** + * Maximum mipmapped 2D texture width + */ + public static final int CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_MIPMAPPED_WIDTH = 73; + + /** + * Maximum mipmapped 2D texture height + */ + public static final int CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE2D_MIPMAPPED_HEIGHT = 74; + + /** + * Major compute capability version number + */ + public static final int CU_DEVICE_ATTRIBUTE_COMPUTE_CAPABILITY_MAJOR = 75; + + /** + * Minor compute capability version number + */ + public static final int CU_DEVICE_ATTRIBUTE_COMPUTE_CAPABILITY_MINOR = 76; + + /** + * Maximum mipmapped 1D texture width + */ + public static final int CU_DEVICE_ATTRIBUTE_MAXIMUM_TEXTURE1D_MIPMAPPED_WIDTH = 77; + + /** + * Device supports stream priorities + */ + public static final int CU_DEVICE_ATTRIBUTE_STREAM_PRIORITIES_SUPPORTED = 78; + + /** + * Device supports caching globals in L1 + */ + public static final int CU_DEVICE_ATTRIBUTE_GLOBAL_L1_CACHE_SUPPORTED = 79; + + /** + * Device supports caching locals in L1 + */ + public static final int CU_DEVICE_ATTRIBUTE_LOCAL_L1_CACHE_SUPPORTED = 80; + + /** + * Maximum shared memory available per multiprocessor in bytes + */ + public static final int CU_DEVICE_ATTRIBUTE_MAX_SHARED_MEMORY_PER_MULTIPROCESSOR = 81; + + /** + * Maximum number of 32-bit registers available per multiprocessor + */ + public static final int CU_DEVICE_ATTRIBUTE_MAX_REGISTERS_PER_MULTIPROCESSOR = 82; + + /** + * Device can allocate managed memory on this system + */ + public static final int CU_DEVICE_ATTRIBUTE_MANAGED_MEMORY = 83; + + /** + * Device is on a multi-GPU board + */ + public static final int CU_DEVICE_ATTRIBUTE_MULTI_GPU_BOARD = 84; + + /** + * Unique id for a group of devices on the same multi-GPU board + */ + public static final int CU_DEVICE_ATTRIBUTE_MULTI_GPU_BOARD_GROUP_ID = 85; + + /** + * Link between the device and the host supports native atomic operations (this is a placeholder + * attribute, and is not supported on any current hardware) + */ + public static final int CU_DEVICE_ATTRIBUTE_HOST_NATIVE_ATOMIC_SUPPORTED = 86; + + /** + * Ratio of single precision performance (in floating-point operations per second) to double precision + * performance + */ + public static final int CU_DEVICE_ATTRIBUTE_SINGLE_TO_DOUBLE_PRECISION_PERF_RATIO = 87; + + /** + * Device supports coherently accessing pageable memory without calling cudaHostRegister on it + */ + public static final int CU_DEVICE_ATTRIBUTE_PAGEABLE_MEMORY_ACCESS = 88; + + /** + * Device can coherently access managed memory concurrently with the CPU + */ + public static final int CU_DEVICE_ATTRIBUTE_CONCURRENT_MANAGED_ACCESS = 89; + + /** + * Device supports compute preemption. + */ + public static final int CU_DEVICE_ATTRIBUTE_COMPUTE_PREEMPTION_SUPPORTED = 90; + + /** + * Device can access host registered memory at the same virtual address as the CPU + */ + public static final int CU_DEVICE_ATTRIBUTE_CAN_USE_HOST_POINTER_FOR_REGISTERED_MEM = 91; + + /** + * @deprecated, along with v1 MemOps API, cuStreamBatchMemOp and related APIs are supported. + */ + public static final int CU_DEVICE_ATTRIBUTE_CAN_USE_STREAM_MEM_OPS_V1 = 92; + + /** + * @deprecated, along with v1 MemOps API, 64-bit operations are supported in cuStreamBatchMemOp + * and related APIs. + */ + public static final int CU_DEVICE_ATTRIBUTE_CAN_USE_64_BIT_STREAM_MEM_OPS_V1 = 93; + + /** + * @deprecated, along with v1 MemOps API, CU_STREAM_WAIT_VALUE_NOR is supported. + */ + public static final int CU_DEVICE_ATTRIBUTE_CAN_USE_STREAM_WAIT_VALUE_NOR_V1 = 94; + + /** + * Device supports launching cooperative kernels via cuLaunchCooperativeKernel + */ + public static final int CU_DEVICE_ATTRIBUTE_COOPERATIVE_LAUNCH = 95; + + /** + * @deprecated, cuLaunchCooperativeKernelMultiDevice is deprecated. + */ + public static final int CU_DEVICE_ATTRIBUTE_COOPERATIVE_MULTI_DEVICE_LAUNCH = 96; + + /** + * Maximum optin shared memory per block + */ + public static final int CU_DEVICE_ATTRIBUTE_MAX_SHARED_MEMORY_PER_BLOCK_OPTIN = 97; + + /** + * The CU_STREAM_WAIT_VALUE_FLUSH flag and the + * CU_STREAM_MEM_OP_FLUSH_REMOTE_WRITES MemOp are supported on the device. See + * Stream Memory Operations for additional details. + */ + public static final int CU_DEVICE_ATTRIBUTE_CAN_FLUSH_REMOTE_WRITES = 98; + + /** + * Device supports host memory registration via cudaHostRegister. + */ + public static final int CU_DEVICE_ATTRIBUTE_HOST_REGISTER_SUPPORTED = 99; + + /** + * Device accesses pageable memory via the host's page tables. + */ + public static final int CU_DEVICE_ATTRIBUTE_PAGEABLE_MEMORY_ACCESS_USES_HOST_PAGE_TABLES = 100; + + /** + * The host can directly access managed memory on the device without migration. + */ + public static final int CU_DEVICE_ATTRIBUTE_DIRECT_MANAGED_MEM_ACCESS_FROM_HOST = 101; + + /** + * @deprecated, Use + * CU_DEVICE_ATTRIBUTE_VIRTUAL_MEMORY_MANAGEMENT_SUPPORTED + */ + public static final int CU_DEVICE_ATTRIBUTE_VIRTUAL_ADDRESS_MANAGEMENT_SUPPORTED = 102; + + /** + * Device supports virtual memory management APIs like cuMemAddressReserve, cuMemCreate, + * cuMemMap and related APIs + */ + public static final int CU_DEVICE_ATTRIBUTE_VIRTUAL_MEMORY_MANAGEMENT_SUPPORTED = 102; + + /** + * Device supports exporting memory to a posix file descriptor with + * cuMemExportToShareableHandle, if requested via cuMemCreate + */ + public static final int CU_DEVICE_ATTRIBUTE_HANDLE_TYPE_POSIX_FILE_DESCRIPTOR_SUPPORTED = 103; + + /** + * Device supports exporting memory to a Win32 NT handle with cuMemExportToShareableHandle, + * if requested via cuMemCreate + */ + public static final int CU_DEVICE_ATTRIBUTE_HANDLE_TYPE_WIN32_HANDLE_SUPPORTED = 104; + + /** + * Device supports exporting memory to a Win32 KMT handle with + * cuMemExportToShareableHandle, if requested via cuMemCreate + */ + public static final int CU_DEVICE_ATTRIBUTE_HANDLE_TYPE_WIN32_KMT_HANDLE_SUPPORTED = 105; + + /** + * Maximum number of blocks per multiprocessor + */ + public static final int CU_DEVICE_ATTRIBUTE_MAX_BLOCKS_PER_MULTIPROCESSOR = 106; + + /** + * Device supports compression of memory + */ + public static final int CU_DEVICE_ATTRIBUTE_GENERIC_COMPRESSION_SUPPORTED = 107; + + /** + * Maximum L2 persisting lines capacity setting in bytes. + */ + public static final int CU_DEVICE_ATTRIBUTE_MAX_PERSISTING_L2_CACHE_SIZE = 108; + + /** + * Maximum value of CUaccessPolicyWindow::num_bytes. + */ + public static final int CU_DEVICE_ATTRIBUTE_MAX_ACCESS_POLICY_WINDOW_SIZE = 109; + + /** + * Device supports specifying the GPUDirect RDMA flag with cuMemCreate + */ + public static final int CU_DEVICE_ATTRIBUTE_GPU_DIRECT_RDMA_WITH_CUDA_VMM_SUPPORTED = 110; + + /** + * Shared memory reserved by CUDA driver per block in bytes + */ + public static final int CU_DEVICE_ATTRIBUTE_RESERVED_SHARED_MEMORY_PER_BLOCK = 111; + + /** + * Device supports sparse CUDA arrays and sparse CUDA mipmapped arrays + */ + public static final int CU_DEVICE_ATTRIBUTE_SPARSE_CUDA_ARRAY_SUPPORTED = 112; + + /** + * Device supports using the cuMemHostRegister flag CU_MEMHOSTERGISTER_READ_ONLY to + * register memory that must be mapped as read-only to the GPU + */ + public static final int CU_DEVICE_ATTRIBUTE_READ_ONLY_HOST_REGISTER_SUPPORTED = 113; + + /** + * External timeline semaphore interop is supported on the device + */ + public static final int CU_DEVICE_ATTRIBUTE_TIMELINE_SEMAPHORE_INTEROP_SUPPORTED = 114; + + /** + * Device supports using the cuMemAllocAsync and cuMemPool family of APIs + */ + public static final int CU_DEVICE_ATTRIBUTE_MEMORY_POOLS_SUPPORTED = 115; + + /** + * Device supports GPUDirect RDMA APIs, like nvidia_p2p_get_pages + * (see https://docs.nvidia.com/cuda/gpudirect-rdma for more information) + */ + public static final int CU_DEVICE_ATTRIBUTE_GPU_DIRECT_RDMA_SUPPORTED = 116; + + /** + * The returned attribute shall be interpreted as a bitmask, where the individual bits are described by + * the CUflushGPUDirectRDMAWritesOptions enum + */ + public static final int CU_DEVICE_ATTRIBUTE_GPU_DIRECT_RDMA_FLUSH_WRITES_OPTIONS = 117; + + /** + * GPUDirect RDMA writes to the device do not need to be flushed for consumers within the scope + * indicated by the returned attribute. See CUGPUDirectRDMAWritesOrdering for the numerical + * values returned here. + */ + public static final int CU_DEVICE_ATTRIBUTE_GPU_DIRECT_RDMA_WRITES_ORDERING = 118; + + /** + * Handle types supported with mempool based IPC + */ + public static final int CU_DEVICE_ATTRIBUTE_MEMPOOL_SUPPORTED_HANDLE_TYPES = 119; + + /** + * Indicates device supports cluster launch + */ + public static final int CU_DEVICE_ATTRIBUTE_CLUSTER_LAUNCH = 120; + + /** + * Device supports deferred mapping CUDA arrays and CUDA mipmapped arrays + */ + public static final int CU_DEVICE_ATTRIBUTE_DEFERRED_MAPPING_CUDA_ARRAY_SUPPORTED = 121; + + /** + * 64-bit operations are supported in cuStreamBatchMemOp and related MemOp APIs. + */ + public static final int CU_DEVICE_ATTRIBUTE_CAN_USE_64_BIT_STREAM_MEM_OPS = 122; + + /** + * CU_STREAM_WAIT_VALUE_NOR is supported by MemOp APIs. + */ + public static final int CU_DEVICE_ATTRIBUTE_CAN_USE_STREAM_WAIT_VALUE_NOR = 123; + + /** + * Device supports buffer sharing with dma_buf mechanism. + */ + public static final int CU_DEVICE_ATTRIBUTE_DMA_BUF_SUPPORTED = 124; + + /** + * Device supports IPC Events. + */ + public static final int CU_DEVICE_ATTRIBUTE_IPC_EVENT_SUPPORTED = 125; + + /** + * Number of memory domains the device supports. + */ + public static final int CU_DEVICE_ATTRIBUTE_MEM_SYNC_DOMAIN_COUNT = 126; + + /** + * Device supports accessing memory using Tensor Map. + */ + public static final int CU_DEVICE_ATTRIBUTE_TENSOR_MAP_ACCESS_SUPPORTED = 127; + + /** + * Device supports exporting memory to a fabric handle with cuMemExportToShareableHandle() or + * requested with cuMemCreate() + */ + public static final int CU_DEVICE_ATTRIBUTE_HANDLE_TYPE_FABRIC_SUPPORTED = 128; + + /** + * Device supports unified function pointers. + */ + public static final int CU_DEVICE_ATTRIBUTE_UNIFIED_FUNCTION_POINTERS = 129; + + /** + * NUMA configuration of a device: value is of type CUdeviceNumaConfig enum + */ + public static final int CU_DEVICE_ATTRIBUTE_NUMA_CONFIG = 130; + + /** + * NUMA node ID of the GPU memory + */ + public static final int CU_DEVICE_ATTRIBUTE_NUMA_ID = 131; + + /** + * Device supports switch multicast and reduction operations. + */ + public static final int CU_DEVICE_ATTRIBUTE_MULTICAST_SUPPORTED = 132; + + /** + * Indicates if contexts created on this device will be shared via MPS + */ + public static final int CU_DEVICE_ATTRIBUTE_MPS_ENABLED = 133; + + /** + * NUMA ID of the host node closest to the device. Returns -1 when system does not support NUMA. + */ + public static final int CU_DEVICE_ATTRIBUTE_HOST_NUMA_ID = 134; + + /** + * Device supports CIG with D3D12. + */ + public static final int CU_DEVICE_ATTRIBUTE_D3D12_CIG_SUPPORTED = 135; + + //CU_DEVICE_ATTRIBUTE_MAX + + } From b993088cab6c278b072d0709bdb9db938a08fdcb Mon Sep 17 00:00:00 2001 From: ReneEnjilian Date: Mon, 25 Aug 2025 00:49:16 +0200 Subject: [PATCH 38/57] add CUdeviceptr --- .../cujava/driver/CUdevice_attribute.java | 2 +- .../sysds/cujava/driver/CUdeviceptr.java | 20 ++++++++++++++++++- 2 files changed, 20 insertions(+), 2 deletions(-) diff --git a/src/main/java/org/apache/sysds/cujava/driver/CUdevice_attribute.java b/src/main/java/org/apache/sysds/cujava/driver/CUdevice_attribute.java index ca9e22aafe6..d50e014ec21 100644 --- a/src/main/java/org/apache/sysds/cujava/driver/CUdevice_attribute.java +++ b/src/main/java/org/apache/sysds/cujava/driver/CUdevice_attribute.java @@ -751,6 +751,6 @@ public class CUdevice_attribute { public static final int CU_DEVICE_ATTRIBUTE_D3D12_CIG_SUPPORTED = 135; //CU_DEVICE_ATTRIBUTE_MAX - + } diff --git a/src/main/java/org/apache/sysds/cujava/driver/CUdeviceptr.java b/src/main/java/org/apache/sysds/cujava/driver/CUdeviceptr.java index 2dc89620852..e6299b19e68 100644 --- a/src/main/java/org/apache/sysds/cujava/driver/CUdeviceptr.java +++ b/src/main/java/org/apache/sysds/cujava/driver/CUdeviceptr.java @@ -19,5 +19,23 @@ package org.apache.sysds.cujava.driver; -public class CUdeviceptr { +import org.apache.sysds.cujava.Pointer; + +public class CUdeviceptr extends Pointer { + + public CUdeviceptr() { + } + + protected CUdeviceptr(CUdeviceptr other) { + super(other); + } + + protected CUdeviceptr(CUdeviceptr other, long byteOffset) { + super(other, byteOffset); + } + + @Override + public CUdeviceptr withByteOffset(long byteOffset) { + return new CUdeviceptr(this, byteOffset); + } } From 4ab7abfbdbf4f4f6f2e573ae6eef6534ff2d0ebc Mon Sep 17 00:00:00 2001 From: ReneEnjilian Date: Mon, 25 Aug 2025 00:52:06 +0200 Subject: [PATCH 39/57] implement CUfunction --- .../java/org/apache/sysds/cujava/driver/CUfunction.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/main/java/org/apache/sysds/cujava/driver/CUfunction.java b/src/main/java/org/apache/sysds/cujava/driver/CUfunction.java index fcfe7ecab02..288b63ee097 100644 --- a/src/main/java/org/apache/sysds/cujava/driver/CUfunction.java +++ b/src/main/java/org/apache/sysds/cujava/driver/CUfunction.java @@ -19,5 +19,10 @@ package org.apache.sysds.cujava.driver; -public class CUfunction { +import org.apache.sysds.cujava.NativePointerObject; + +public class CUfunction extends NativePointerObject { + + public CUfunction() { + } } From 123762d439461ffbce1c6334aae2dba707bdc9d4 Mon Sep 17 00:00:00 2001 From: ReneEnjilian Date: Mon, 25 Aug 2025 00:54:12 +0200 Subject: [PATCH 40/57] add CUmodule --- src/main/java/org/apache/sysds/cujava/driver/CUmodule.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/main/java/org/apache/sysds/cujava/driver/CUmodule.java b/src/main/java/org/apache/sysds/cujava/driver/CUmodule.java index 65dc72c9bf5..a7481e2960d 100644 --- a/src/main/java/org/apache/sysds/cujava/driver/CUmodule.java +++ b/src/main/java/org/apache/sysds/cujava/driver/CUmodule.java @@ -19,5 +19,10 @@ package org.apache.sysds.cujava.driver; -public class CUmodule { +import org.apache.sysds.cujava.NativePointerObject; + +public class CUmodule extends NativePointerObject { + + public CUmodule() { + } } From c16968429af1ea18164498dd35846ee3751a6481 Mon Sep 17 00:00:00 2001 From: ReneEnjilian Date: Mon, 25 Aug 2025 01:46:07 +0200 Subject: [PATCH 41/57] implement CUresult --- .../apache/sysds/cujava/driver/CUresult.java | 693 ++++++++++++++++++ 1 file changed, 693 insertions(+) diff --git a/src/main/java/org/apache/sysds/cujava/driver/CUresult.java b/src/main/java/org/apache/sysds/cujava/driver/CUresult.java index 91a9b8ad61f..4caa76f230d 100644 --- a/src/main/java/org/apache/sysds/cujava/driver/CUresult.java +++ b/src/main/java/org/apache/sysds/cujava/driver/CUresult.java @@ -20,4 +20,697 @@ package org.apache.sysds.cujava.driver; public class CUresult { + + + /** + * The API call returned with no errors. In the case of query calls, this also means that the operation + * being queried is complete (see cuEventQuery() and cuStreamQuery()). + */ + public static final int CUDA_SUCCESS = 0; + + /** + * This indicates that one or more of the parameters passed to the API call is not within an acceptable + * range of values. + */ + public static final int CUDA_ERROR_INVALID_VALUE = 1; + + /** + * The API call failed because it was unable to allocate enough memory or other resources to perform + * the requested operation. + */ + public static final int CUDA_ERROR_OUT_OF_MEMORY = 2; + + /** + * This indicates that the CUDA driver has not been initialized with cuInit() or that initialization has + * failed. + */ + public static final int CUDA_ERROR_NOT_INITIALIZED = 3; + + /** + * This indicates that the CUDA driver is in the process of shutting down. + */ + public static final int CUDA_ERROR_DEINITIALIZED = 4; + + /** + * This indicates profiler is not initialized for this run. This can happen when the application is running + * with external profiling tools like visual profiler. + */ + public static final int CUDA_ERROR_PROFILER_DISABLED = 5; + + /** + * @deprecated + * This error return is deprecated as of CUDA 5.0. It is no longer an error to attempt to + * enable/disable the profiling via cuProfilerStart or cuProfilerStop without initialization. + */ + public static final int CUDA_ERROR_PROFILER_NOT_INITIALIZED = 6; + + /** + * @deprecated + * This error return is deprecated as of CUDA 5.0. It is no longer an error to call + * cuProfilerStart() when profiling is already enabled. + */ + public static final int CUDA_ERROR_PROFILER_ALREADY_STARTED = 7; + + /** + * @deprecated + * This error return is deprecated as of CUDA 5.0. It is no longer an error to call + * cuProfilerStop() when profiling is already disabled. + */ + public static final int CUDA_ERROR_PROFILER_ALREADY_STOPPED = 8; + + /** + * This indicates that the CUDA driver that the application has loaded is a stub library. Applications + * that run with the stub rather than a real driver loaded will result in CUDA API returning this error. + */ + public static final int CUDA_ERROR_STUB_LIBRARY = 34; + + /** + * This indicates that requested CUDA device is unavailable at the current time. Devices + * are often unavailable due to use of CU_COMPUTEMODE_EXCLUSIVE_PROCESS or + * CU_COMPUTEMODE_PROHIBITED. + */ + public static final int CUDA_ERROR_DEVICE_UNAVAILABLE = 46; + + /** + * This indicates that no CUDA-capable devices were detected by the installed CUDA driver. + */ + public static final int CUDA_ERROR_NO_DEVICE = 100; + + /** + * This indicates that the device ordinal supplied by the user does not correspond to a valid CUDA + * device or that the action requested is invalid for the specified device. + */ + public static final int CUDA_ERROR_INVALID_DEVICE = 101; + + /** + * This error indicates that the Grid license is not applied. + */ + public static final int CUDA_ERROR_DEVICE_NOT_LICENSED = 102; + + /** + * This indicates that the device kernel image is invalid. This can also indicate an invalid CUDA + * module. + */ + public static final int CUDA_ERROR_INVALID_IMAGE = 200; + + /** + * This most frequently indicates that there is no context bound to the current thread. This can also + * be returned if the context passed to an API call is not a valid handle (such as a context that has had + * cuCtxDestroy() invoked on it). This can also be returned if a user mixes different API versions + * (i.e. 3010 context with 3020 API calls). See cuCtxGetApiVersion() for more details. This can also + * be returned if the green context passed to an API call was not converted to a CUcontext using + * cuCtxFromGreenCtx API. + */ + public static final int CUDA_ERROR_INVALID_CONTEXT = 201; + + /** + * This indicated that the context being supplied as a parameter to the API call was already the active + * context. Deprecated This error return is deprecated as of CUDA 3.2. It is no longer an error to + * attempt to push the active context via cuCtxPushCurrent(). + */ + public static final int CUDA_ERROR_CONTEXT_ALREADY_CURRENT = 202; + + /** + * This indicates that a map or register operation has failed. + */ + public static final int CUDA_ERROR_MAP_FAILED = 205; + + /** + * This indicates that an unmap or unregister operation has failed. + */ + public static final int CUDA_ERROR_UNMAP_FAILED = 206; + + /** + * This indicates that the specified array is currently mapped and thus cannot be destroyed. + */ + public static final int CUDA_ERROR_ARRAY_IS_MAPPED = 207; + + /** + * This indicates that the resource is already mapped. + */ + public static final int CUDA_ERROR_ALREADY_MAPPED = 208; + + /** + * This indicates that there is no kernel image available that is suitable for the device. This can occur + * when a user specifies code generation options for a particular CUDA source file that do not include + * the corresponding device configuration. + */ + public static final int CUDA_ERROR_NO_BINARY_FOR_GPU = 209; + + /** + * This indicates that a resource has already been acquired. + */ + public static final int CUDA_ERROR_ALREADY_ACQUIRED = 210; + + /** + * This indicates that a resource is not mapped. + */ + public static final int CUDA_ERROR_NOT_MAPPED = 211; + + /** + * This indicates that a mapped resource is not available for access as an array. + */ + public static final int CUDA_ERROR_NOT_MAPPED_AS_ARRAY = 212; + + /** + * This indicates that a mapped resource is not available for access as a pointer. + */ + public static final int CUDA_ERROR_NOT_MAPPED_AS_POINTER = 213; + + /** + * This indicates that an uncorrectable ECC error was detected during execution. + */ + public static final int CUDA_ERROR_ECC_UNCORRECTABLE = 214; + + /** + * This indicates that the CUlimit passed to the API call is not supported by the active device. + */ + public static final int CUDA_ERROR_UNSUPPORTED_LIMIT = 215; + + /** + * This indicates that the CUcontext passed to the API call can only be bound to a single CPU thread at + * a time but is already bound to a CPU thread. + */ + public static final int CUDA_ERROR_CONTEXT_ALREADY_IN_USE = 216; + + /** + * This indicates that peer access is not supported across the given devices. + */ + public static final int CUDA_ERROR_PEER_ACCESS_UNSUPPORTED = 217; + + /** + * This indicates that a PTX JIT compilation failed. + */ + public static final int CUDA_ERROR_INVALID_PTX = 218; + + /** + * This indicates an error with OpenGL or DirectX context. + */ + public static final int CUDA_ERROR_INVALID_GRAPHICS_CONTEXT = 219; + + /** + * This indicates that an uncorrectable NVLink error was detected during the execution. + */ + public static final int CUDA_ERROR_NVLINK_UNCORRECTABLE = 220; + + /** + * This indicates that the PTX JIT compiler library was not found. + */ + public static final int CUDA_ERROR_JIT_COMPILER_NOT_FOUND = 221; + + /** + * This indicates that the provided PTX was compiled with an unsupported toolchain. + */ + public static final int CUDA_ERROR_UNSUPPORTED_PTX_VERSION = 222; + + /** + * This indicates that the PTX JIT compilation was disabled. + */ + public static final int CUDA_ERROR_JIT_COMPILATION_DISABLED = 223; + + /** + * This indicates that the CUexecAffinityType passed to the API call is not supported by the active + * device. + */ + public static final int CUDA_ERROR_UNSUPPORTED_EXEC_AFFINITY = 224; + + /** + * This indicates that the code to be compiled by the PTX JIT contains unsupported call to + * cudaDeviceSynchronize. + */ + public static final int CUDA_ERROR_UNSUPPORTED_DEVSIDE_SYNC = 225; + + /** + * This indicates that the device kernel source is invalid. This includes compilation/linker errors + * encountered in device code or user error. + */ + public static final int CUDA_ERROR_INVALID_SOURCE = 300; + + /** + * This indicates that the file specified was not found. + */ + public static final int CUDA_ERROR_FILE_NOT_FOUND = 301; + + /** + * This indicates that a link to a shared object failed to resolve. + */ + public static final int CUDA_ERROR_SHARED_OBJECT_SYMBOL_NOT_FOUND = 302; + + /** + * This indicates that initialization of a shared object failed. + */ + public static final int CUDA_ERROR_SHARED_OBJECT_INIT_FAILED = 303; + + /** + * This indicates that an OS call failed. + */ + public static final int CUDA_ERROR_OPERATING_SYSTEM = 304; + + /** + * This indicates that a resource handle passed to the API call was not valid. Resource handles are + * opaque types like CUstream and CUevent. + */ + public static final int CUDA_ERROR_INVALID_HANDLE = 400; + + /** + * This indicates that a resource required by the API call is not in a valid state to perform the requested + * operation. + */ + public static final int CUDA_ERROR_ILLEGAL_STATE = 401; + + /** + * This indicates an attempt was made to introspect an object in a way that would discard semantically + * important information. This is either due to the object using funtionality newer than the API version + * used to introspect it or omission of optional return arguments. + */ + public static final int CUDA_ERROR_LOSSY_QUERY = 402; + + /** + * This indicates that a named symbol was not found. Examples of symbols are global/constant + * variable names, driver function names, texture names, and surface names. + */ + public static final int CUDA_ERROR_NOT_FOUND = 500; + + /** + * This indicates that asynchronous operations issued previously have not completed yet. This result + * is not actually an error, but must be indicated differently than CUDA_SUCCESS (which indicates + * completion). Calls that may return this value include cuEventQuery() and cuStreamQuery(). + */ + public static final int CUDA_ERROR_NOT_READY = 600; + + /** + * While executing a kernel, the device encountered a load or store instruction on an invalid memory + * address. This leaves the process in an inconsistent state and any further CUDA work will return the + * same error. To continue using CUDA, the process must be terminated and relaunched. + */ + public static final int CUDA_ERROR_ILLEGAL_ADDRESS = 700; + + /** + * This indicates that a launch did not occur because it did not have appropriate resources. This error + * usually indicates that the user has attempted to pass too many arguments to the device kernel, or + * the kernel launch specifies too many threads for the kernel's register count. Passing arguments of + * the wrong size (i.e. a 64-bit pointer when a 32-bit int is expected) is equivalent to passing too many + * arguments and can also result in this error. + */ + public static final int CUDA_ERROR_LAUNCH_OUT_OF_RESOURCES = 701; + + /** + * This indicates that the device kernel took too long to execute. This can only occur if timeouts are + * enabled - see the device attribute CU_DEVICE_ATTRIBUTE_KERNEL_EXEC_TIMEOUT for + * more information. This leaves the process in an inconsistent state and any further CUDA work will + * return the same error. To continue using CUDA, the process must be terminated and relaunched. + */ + public static final int CUDA_ERROR_LAUNCH_TIMEOUT = 702; + + /** + * This error indicates a kernel launch that uses an incompatible texturing mode. + */ + public static final int CUDA_ERROR_LAUNCH_INCOMPATIBLE_TEXTURING = 703; + + /** + * This error indicates that a call to cuCtxEnablePeerAccess() is trying to re-enable peer access to a + * context which has already had peer access to it enabled. + */ + public static final int CUDA_ERROR_PEER_ACCESS_ALREADY_ENABLED = 704; + + /** + * This error indicates that cuCtxDisablePeerAccess() is trying to disable peer access which has not + * been enabled yet via cuCtxEnablePeerAccess(). + */ + public static final int CUDA_ERROR_PEER_ACCESS_NOT_ENABLED = 705; + + /** + * This error indicates that the primary context for the specified device has already been initialized. + */ + public static final int CUDA_ERROR_PRIMARY_CONTEXT_ACTIVE = 708; + + /** + * This error indicates that the context current to the calling thread has been destroyed using + * cuCtxDestroy, or is a primary context which has not yet been initialized. + */ + public static final int CUDA_ERROR_CONTEXT_IS_DESTROYED = 709; + + /** + * A device-side assert triggered during kernel execution. The context cannot be used anymore, and + * must be destroyed. All existing device memory allocations from this context are invalid and must be + * reconstructed if the program is to continue using CUDA. + */ + public static final int CUDA_ERROR_ASSERT = 710; + + /** + * This error indicates that the hardware resources required to enable peer access have been exhausted + * for one or more of the devices passed to cuCtxEnablePeerAccess(). + */ + public static final int CUDA_ERROR_TOO_MANY_PEERS = 711; + + /** + * This error indicates that the memory range passed to cuMemHostRegister() has already been + * registered. + */ + public static final int CUDA_ERROR_HOST_MEMORY_ALREADY_REGISTERED = 712; + + /** + * This error indicates that the pointer passed to cuMemHostUnregister() does not correspond to any + * currently registered memory region. + */ + public static final int CUDA_ERROR_HOST_MEMORY_NOT_REGISTERED = 713; + + /** + * While executing a kernel, the device encountered a stack error. This can be due to stack corruption + * or exceeding the stack size limit. This leaves the process in an inconsistent state and any further + * CUDA work will return the same error. To continue using CUDA, the process must be terminated + * and relaunched. + */ + public static final int CUDA_ERROR_HARDWARE_STACK_ERROR = 714; + + /** + * While executing a kernel, the device encountered an illegal instruction. This leaves the process in an + * inconsistent state and any further CUDA work will return the same error. To continue using CUDA, + * the process must be terminated and relaunched. + */ + public static final int CUDA_ERROR_ILLEGAL_INSTRUCTION = 715; + + /** + * While executing a kernel, the device encountered a load or store instruction on a memory address + * which is not aligned. This leaves the process in an inconsistent state and any further CUDA + * work will return the same error. To continue using CUDA, the process must be terminated and + * relaunched. + */ + public static final int CUDA_ERROR_MISALIGNED_ADDRESS = 716; + + /** + * While executing a kernel, the device encountered an instruction which can only operate on memory + * locations in certain address spaces (global, shared, or local), but was supplied a memory address + * not belonging to an allowed address space. This leaves the process in an inconsistent state and any + * further CUDA work will return the same error. To continue using CUDA, the process must be + * terminated and relaunched. + */ + public static final int CUDA_ERROR_INVALID_ADDRESS_SPACE = 717; + + /** + * While executing a kernel, the device program counter wrapped its address space. This leaves the + * process in an inconsistent state and any further CUDA work will return the same error. To continue + * using CUDA, the process must be terminated and relaunched. + */ + public static final int CUDA_ERROR_INVALID_PC = 718; + + /** + * An exception occurred on the device while executing a kernel. Common causes include + * dereferencing an invalid device pointer and accessing out of bounds shared memory. Less common + * cases can be system specific - more information about these cases can be found in the system + * specific user guide. This leaves the process in an inconsistent state and any further CUDA work will + * return the same error. To continue using CUDA, the process must be terminated and relaunched. + */ + public static final int CUDA_ERROR_LAUNCH_FAILED = 719; + + /** + * This error indicates that the number of blocks launched per grid for a kernel that was launched + * via either cuLaunchCooperativeKernel or cuLaunchCooperativeKernelMultiDevice exceeds the + * maximum number of blocks as allowed by cuOccupancyMaxActiveBlocksPerMultiprocessor or + * cuOccupancyMaxActiveBlocksPerMultiprocessorWithFlags times the number of multiprocessors as + * specified by the device attribute CU_DEVICE_ATTRIBUTE_MULTIPROCESSOR_COUNT. + */ + public static final int CUDA_ERROR_COOPERATIVE_LAUNCH_TOO_LARGE = 720; + + /** + * This error indicates that the attempted operation is not permitted. + */ + public static final int CUDA_ERROR_NOT_PERMITTED = 800; + + /** + * This error indicates that the attempted operation is not supported on the current system or device. + */ + public static final int CUDA_ERROR_NOT_SUPPORTED = 801; + + /** + * This error indicates that the system is not yet ready to start any CUDA work. To continue using + * CUDA, verify the system configuration is in a valid state and all required driver daemons are + * actively running. More information about this error can be found in the system specific user guide. + */ + public static final int CUDA_ERROR_SYSTEM_NOT_READY = 802; + + /** + * This error indicates that there is a mismatch between the versions of the display driver and the + * CUDA driver. Refer to the compatibility documentation for supported versions. + */ + public static final int CUDA_ERROR_SYSTEM_DRIVER_MISMATCH = 803; + + /** + * This error indicates that the system was upgraded to run with forward compatibility but the visible + * hardware detected by CUDA does not support this configuration. Refer to the compatibility + * documentation for the supported hardware matrix or ensure that only supported hardware is visible + * during initialization via the CUDA_VISIBLE_DEVICES environment variable. + */ + public static final int CUDA_ERROR_COMPAT_NOT_SUPPORTED_ON_DEVICE = 804; + + /** + * This error indicates that the MPS client failed to connect to the MPS control daemon or the MPS + * server. + */ + public static final int CUDA_ERROR_MPS_CONNECTION_FAILED = 805; + + /** + * This error indicates that the remote procedural call between the MPS server and the MPS client + * failed. + */ + public static final int CUDA_ERROR_MPS_RPC_FAILURE = 806; + + /** + * This error indicates that the MPS server is not ready to accept new MPS client requests. This error + * can be returned when the MPS server is in the process of recovering from a fatal failure. + */ + public static final int CUDA_ERROR_MPS_SERVER_NOT_READY = 807; + + /** + * This error indicates that the hardware resources required to create MPS client have been exhausted. + */ + public static final int CUDA_ERROR_MPS_MAX_CLIENTS_REACHED = 808; + + /** + * This error indicates the the hardware resources required to support device connections have been + * exhausted. + */ + public static final int CUDA_ERROR_MPS_MAX_CONNECTIONS_REACHED = 809; + + /** + * This error indicates that the MPS client has been terminated by the server. To continue using + * CUDA, the process must be terminated and relaunched. + */ + public static final int CUDA_ERROR_MPS_CLIENT_TERMINATED = 810; + + /** + * This error indicates that the module is using CUDA Dynamic Parallelism, but the current + * configuration, like MPS, does not support it. + */ + public static final int CUDA_ERROR_CDP_NOT_SUPPORTED = 811; + + /** + * This error indicates that a module contains an unsupported interaction between different versions of + * CUDA Dynamic Parallelism. + */ + public static final int CUDA_ERROR_CDP_VERSION_MISMATCH = 812; + + /** + * This error indicates that the operation is not permitted when the stream is capturing. + */ + public static final int CUDA_ERROR_STREAM_CAPTURE_UNSUPPORTED = 900; + + /** + * This error indicates that the current capture sequence on the stream has been invalidated due to a + * previous error. + */ + public static final int CUDA_ERROR_STREAM_CAPTURE_INVALIDATED = 901; + + /** + * This error indicates that the operation would have resulted in a merge of two independent capture + * sequences. + */ + public static final int CUDA_ERROR_STREAM_CAPTURE_MERGE = 902; + + /** + * This error indicates that the capture was not initiated in this stream. + */ + public static final int CUDA_ERROR_STREAM_CAPTURE_UNMATCHED = 903; + + /** + * This error indicates that the capture sequence contains a fork that was not joined to the primary + * stream. + */ + public static final int CUDA_ERROR_STREAM_CAPTURE_UNJOINED = 904; + + /** + * This error indicates that a dependency would have been created which crosses the capture sequence + * boundary. Only implicit in-stream ordering dependencies are allowed to cross the boundary. + */ + public static final int CUDA_ERROR_STREAM_CAPTURE_ISOLATION = 905; + + /** + * This error indicates a disallowed implicit dependency on a current capture sequence from + * cudaStreamLegacy. + */ + public static final int CUDA_ERROR_STREAM_CAPTURE_IMPLICIT = 906; + + /** + * This error indicates that the operation is not permitted on an event which was last recorded in a + * capturing stream. + */ + public static final int CUDA_ERROR_CAPTURED_EVENT = 907; + + /** + * A stream capture sequence not initiated with the CU_STREAM_CAPTURE_MODE_RELAXED + * argument to cuStreamBeginCapture was passed to cuStreamEndCapture in a different thread. + */ + public static final int CUDA_ERROR_STREAM_CAPTURE_WRONG_THREAD = 908; + + /** + * This error indicates that the timeout specified for the wait operation has lapsed. + */ + public static final int CUDA_ERROR_TIMEOUT = 909; + + /** + * This error indicates that the graph update was not performed because it included changes which + * violated constraints specific to instantiated graph update. + */ + public static final int CUDA_ERROR_GRAPH_EXEC_UPDATE_FAILURE = 910; + + /** + * This indicates that an async error has occurred in a device outside of CUDA. If CUDA was waiting + * for an external device's signal before consuming shared data, the external device signaled an error + * indicating that the data is not valid for consumption. This leaves the process in an inconsistent state + * and any further CUDA work will return the same error. To continue using CUDA, the process must + * be terminated and relaunched. + */ + public static final int CUDA_ERROR_EXTERNAL_DEVICE = 911; + + /** + * Indicates a kernel launch error due to cluster misconfiguration. + */ + public static final int CUDA_ERROR_INVALID_CLUSTER_SIZE = 912; + + /** + * Indiciates a function handle is not loaded when calling an API that requires a loaded function. + */ + public static final int CUDA_ERROR_FUNCTION_NOT_LOADED = 913; + + /** + * This error indicates one or more resources passed in are not valid resource types for the operation. + */ + public static final int CUDA_ERROR_INVALID_RESOURCE_TYPE = 914; + + /** + * This error indicates one or more resources are insufficient or non-applicable for the operation. + */ + public static final int CUDA_ERROR_INVALID_RESOURCE_CONFIGURATION = 915; + + /** + * This indicates that an unknown internal error has occurred. + */ + public static final int CUDA_ERROR_UNKNOWN = 999; + + public static String resultString(int err){ + return switch (err) { + case CUDA_SUCCESS -> "CUDA_SUCCESS"; + case CUDA_ERROR_INVALID_VALUE -> "CUDA_ERROR_INVALID_VALUE"; + case CUDA_ERROR_OUT_OF_MEMORY -> "CUDA_ERROR_OUT_OF_MEMORY"; + case CUDA_ERROR_NOT_INITIALIZED -> "CUDA_ERROR_NOT_INITIALIZED"; + case CUDA_ERROR_DEINITIALIZED -> "CUDA_ERROR_DEINITIALIZED"; + case CUDA_ERROR_PROFILER_DISABLED -> "CUDA_ERROR_PROFILER_DISABLED"; + case CUDA_ERROR_PROFILER_NOT_INITIALIZED -> "CUDA_ERROR_PROFILER_NOT_INITIALIZED"; + case CUDA_ERROR_PROFILER_ALREADY_STARTED -> "CUDA_ERROR_PROFILER_ALREADY_STARTED"; + case CUDA_ERROR_PROFILER_ALREADY_STOPPED -> "CUDA_ERROR_PROFILER_ALREADY_STOPPED"; + case CUDA_ERROR_STUB_LIBRARY -> "CUDA_ERROR_STUB_LIBRARY"; + case CUDA_ERROR_DEVICE_UNAVAILABLE -> "CUDA_ERROR_DEVICE_UNAVAILABLE"; + case CUDA_ERROR_NO_DEVICE -> "CUDA_ERROR_NO_DEVICE"; + case CUDA_ERROR_INVALID_DEVICE -> "CUDA_ERROR_INVALID_DEVICE"; + case CUDA_ERROR_DEVICE_NOT_LICENSED -> "CUDA_ERROR_DEVICE_NOT_LICENSED"; + case CUDA_ERROR_INVALID_IMAGE -> "CUDA_ERROR_INVALID_IMAGE"; + case CUDA_ERROR_INVALID_CONTEXT -> "CUDA_ERROR_INVALID_CONTEXT"; + case CUDA_ERROR_CONTEXT_ALREADY_CURRENT -> "CUDA_ERROR_CONTEXT_ALREADY_CURRENT"; + case CUDA_ERROR_MAP_FAILED -> "CUDA_ERROR_MAP_FAILED"; + case CUDA_ERROR_UNMAP_FAILED -> "CUDA_ERROR_UNMAP_FAILED"; + case CUDA_ERROR_ARRAY_IS_MAPPED -> "CUDA_ERROR_ARRAY_IS_MAPPED"; + case CUDA_ERROR_ALREADY_MAPPED -> "CUDA_ERROR_ALREADY_MAPPED"; + case CUDA_ERROR_NO_BINARY_FOR_GPU -> "CUDA_ERROR_NO_BINARY_FOR_GPU"; + case CUDA_ERROR_ALREADY_ACQUIRED -> "CUDA_ERROR_ALREADY_ACQUIRED"; + case CUDA_ERROR_NOT_MAPPED -> "CUDA_ERROR_NOT_MAPPED"; + case CUDA_ERROR_NOT_MAPPED_AS_ARRAY -> "CUDA_ERROR_NOT_MAPPED_AS_ARRAY"; + case CUDA_ERROR_NOT_MAPPED_AS_POINTER -> "CUDA_ERROR_NOT_MAPPED_AS_POINTER"; + case CUDA_ERROR_ECC_UNCORRECTABLE -> "CUDA_ERROR_ECC_UNCORRECTABLE"; + case CUDA_ERROR_UNSUPPORTED_LIMIT -> "CUDA_ERROR_UNSUPPORTED_LIMIT"; + case CUDA_ERROR_CONTEXT_ALREADY_IN_USE -> "CUDA_ERROR_CONTEXT_ALREADY_IN_USE"; + case CUDA_ERROR_PEER_ACCESS_UNSUPPORTED -> "CUDA_ERROR_PEER_ACCESS_UNSUPPORTED"; + case CUDA_ERROR_INVALID_PTX -> "CUDA_ERROR_INVALID_PTX"; + case CUDA_ERROR_INVALID_GRAPHICS_CONTEXT -> "CUDA_ERROR_INVALID_GRAPHICS_CONTEXT"; + case CUDA_ERROR_NVLINK_UNCORRECTABLE -> "CUDA_ERROR_NVLINK_UNCORRECTABLE"; + case CUDA_ERROR_JIT_COMPILER_NOT_FOUND -> "CUDA_ERROR_JIT_COMPILER_NOT_FOUND"; + case CUDA_ERROR_UNSUPPORTED_PTX_VERSION -> "CUDA_ERROR_UNSUPPORTED_PTX_VERSION"; + case CUDA_ERROR_JIT_COMPILATION_DISABLED -> "CUDA_ERROR_JIT_COMPILATION_DISABLED"; + case CUDA_ERROR_UNSUPPORTED_EXEC_AFFINITY -> "CUDA_ERROR_UNSUPPORTED_EXEC_AFFINITY"; + case CUDA_ERROR_UNSUPPORTED_DEVSIDE_SYNC -> "CUDA_ERROR_UNSUPPORTED_DEVSIDE_SYNC"; + case CUDA_ERROR_INVALID_SOURCE -> "CUDA_ERROR_INVALID_SOURCE"; + case CUDA_ERROR_FILE_NOT_FOUND -> "CUDA_ERROR_FILE_NOT_FOUND"; + case CUDA_ERROR_SHARED_OBJECT_SYMBOL_NOT_FOUND -> "CUDA_ERROR_SHARED_OBJECT_SYMBOL_NOT_FOUND"; + case CUDA_ERROR_SHARED_OBJECT_INIT_FAILED -> "CUDA_ERROR_SHARED_OBJECT_INIT_FAILED"; + case CUDA_ERROR_OPERATING_SYSTEM -> "CUDA_ERROR_OPERATING_SYSTEM"; + case CUDA_ERROR_INVALID_HANDLE -> "CUDA_ERROR_INVALID_HANDLE"; + case CUDA_ERROR_ILLEGAL_STATE -> "CUDA_ERROR_ILLEGAL_STATE"; + case CUDA_ERROR_LOSSY_QUERY -> "CUDA_ERROR_LOSSY_QUERY"; + case CUDA_ERROR_NOT_FOUND -> "CUDA_ERROR_NOT_FOUND"; + case CUDA_ERROR_NOT_READY -> "CUDA_ERROR_NOT_READY"; + case CUDA_ERROR_ILLEGAL_ADDRESS -> "CUDA_ERROR_ILLEGAL_ADDRESS"; + case CUDA_ERROR_LAUNCH_OUT_OF_RESOURCES -> "CUDA_ERROR_LAUNCH_OUT_OF_RESOURCES"; + case CUDA_ERROR_LAUNCH_TIMEOUT -> "CUDA_ERROR_LAUNCH_TIMEOUT"; + case CUDA_ERROR_LAUNCH_INCOMPATIBLE_TEXTURING -> "CUDA_ERROR_LAUNCH_INCOMPATIBLE_TEXTURING"; + case CUDA_ERROR_PEER_ACCESS_ALREADY_ENABLED -> "CUDA_ERROR_PEER_ACCESS_ALREADY_ENABLED"; + case CUDA_ERROR_PEER_ACCESS_NOT_ENABLED -> "CUDA_ERROR_PEER_ACCESS_NOT_ENABLED"; + case CUDA_ERROR_PRIMARY_CONTEXT_ACTIVE -> "CUDA_ERROR_PRIMARY_CONTEXT_ACTIVE"; + case CUDA_ERROR_CONTEXT_IS_DESTROYED -> "CUDA_ERROR_CONTEXT_IS_DESTROYED"; + case CUDA_ERROR_ASSERT -> "CUDA_ERROR_ASSERT"; + case CUDA_ERROR_TOO_MANY_PEERS -> "CUDA_ERROR_TOO_MANY_PEERS"; + case CUDA_ERROR_HOST_MEMORY_ALREADY_REGISTERED -> "CUDA_ERROR_HOST_MEMORY_ALREADY_REGISTERED"; + case CUDA_ERROR_HOST_MEMORY_NOT_REGISTERED -> "CUDA_ERROR_HOST_MEMORY_NOT_REGISTERED"; + case CUDA_ERROR_HARDWARE_STACK_ERROR -> "CUDA_ERROR_HARDWARE_STACK_ERROR"; + case CUDA_ERROR_ILLEGAL_INSTRUCTION -> "CUDA_ERROR_ILLEGAL_INSTRUCTION"; + case CUDA_ERROR_MISALIGNED_ADDRESS -> "CUDA_ERROR_MISALIGNED_ADDRESS"; + case CUDA_ERROR_INVALID_ADDRESS_SPACE -> "CUDA_ERROR_INVALID_ADDRESS_SPACE"; + case CUDA_ERROR_INVALID_PC -> "CUDA_ERROR_INVALID_PC"; + case CUDA_ERROR_LAUNCH_FAILED -> "CUDA_ERROR_LAUNCH_FAILED"; + case CUDA_ERROR_COOPERATIVE_LAUNCH_TOO_LARGE -> "CUDA_ERROR_COOPERATIVE_LAUNCH_TOO_LARGE"; + case CUDA_ERROR_NOT_PERMITTED -> "CUDA_ERROR_NOT_PERMITTED"; + case CUDA_ERROR_NOT_SUPPORTED -> "CUDA_ERROR_NOT_SUPPORTED"; + case CUDA_ERROR_SYSTEM_NOT_READY -> "CUDA_ERROR_SYSTEM_NOT_READY"; + case CUDA_ERROR_SYSTEM_DRIVER_MISMATCH -> "CUDA_ERROR_SYSTEM_DRIVER_MISMATCH"; + case CUDA_ERROR_COMPAT_NOT_SUPPORTED_ON_DEVICE -> "CUDA_ERROR_COMPAT_NOT_SUPPORTED_ON_DEVICE"; + case CUDA_ERROR_MPS_CONNECTION_FAILED -> "CUDA_ERROR_MPS_CONNECTION_FAILED"; + case CUDA_ERROR_MPS_RPC_FAILURE -> "CUDA_ERROR_MPS_RPC_FAILURE"; + case CUDA_ERROR_MPS_SERVER_NOT_READY -> "CUDA_ERROR_MPS_SERVER_NOT_READY"; + case CUDA_ERROR_MPS_MAX_CLIENTS_REACHED -> "CUDA_ERROR_MPS_MAX_CLIENTS_REACHED"; + case CUDA_ERROR_MPS_MAX_CONNECTIONS_REACHED -> "CUDA_ERROR_MPS_MAX_CONNECTIONS_REACHED"; + case CUDA_ERROR_MPS_CLIENT_TERMINATED -> "CUDA_ERROR_MPS_CLIENT_TERMINATED"; + case CUDA_ERROR_CDP_NOT_SUPPORTED -> "CUDA_ERROR_CDP_NOT_SUPPORTED"; + case CUDA_ERROR_CDP_VERSION_MISMATCH -> "CUDA_ERROR_CDP_VERSION_MISMATCH"; + case CUDA_ERROR_STREAM_CAPTURE_UNSUPPORTED -> "CUDA_ERROR_STREAM_CAPTURE_UNSUPPORTED"; + case CUDA_ERROR_STREAM_CAPTURE_INVALIDATED -> "CUDA_ERROR_STREAM_CAPTURE_INVALIDATED"; + case CUDA_ERROR_STREAM_CAPTURE_MERGE -> "CUDA_ERROR_STREAM_CAPTURE_MERGE"; + case CUDA_ERROR_STREAM_CAPTURE_UNMATCHED -> "CUDA_ERROR_STREAM_CAPTURE_UNMATCHED"; + case CUDA_ERROR_STREAM_CAPTURE_UNJOINED -> "CUDA_ERROR_STREAM_CAPTURE_UNJOINED"; + case CUDA_ERROR_STREAM_CAPTURE_ISOLATION -> "CUDA_ERROR_STREAM_CAPTURE_ISOLATION"; + case CUDA_ERROR_STREAM_CAPTURE_IMPLICIT -> "CUDA_ERROR_STREAM_CAPTURE_IMPLICIT"; + case CUDA_ERROR_CAPTURED_EVENT -> "CUDA_ERROR_CAPTURED_EVENT"; + case CUDA_ERROR_STREAM_CAPTURE_WRONG_THREAD -> "CUDA_ERROR_STREAM_CAPTURE_WRONG_THREAD"; + case CUDA_ERROR_TIMEOUT -> "CUDA_ERROR_TIMEOUT"; + case CUDA_ERROR_GRAPH_EXEC_UPDATE_FAILURE -> "CUDA_ERROR_GRAPH_EXEC_UPDATE_FAILURE"; + case CUDA_ERROR_EXTERNAL_DEVICE -> "CUDA_ERROR_EXTERNAL_DEVICE"; + case CUDA_ERROR_INVALID_CLUSTER_SIZE -> "CUDA_ERROR_INVALID_CLUSTER_SIZE"; + case CUDA_ERROR_FUNCTION_NOT_LOADED -> "CUDA_ERROR_FUNCTION_NOT_LOADED"; + case CUDA_ERROR_INVALID_RESOURCE_TYPE -> "CUDA_ERROR_INVALID_RESOURCE_TYPE"; + case CUDA_ERROR_INVALID_RESOURCE_CONFIGURATION -> "CUDA_ERROR_INVALID_RESOURCE_CONFIGURATION"; + case CUDA_ERROR_UNKNOWN -> "CUDA_ERROR_UNKNOWN"; + default -> "Invalid error"; + }; + } + + private CUresult() { + // prevent instantiation. + } } From b04542fb2e3db6a35ef0b06057e25c8d362d87fb Mon Sep 17 00:00:00 2001 From: ReneEnjilian Date: Mon, 25 Aug 2025 02:01:24 +0200 Subject: [PATCH 42/57] start cuda stream --- .../apache/sysds/cujava/driver/CUresult.java | 5 ++++ .../apache/sysds/cujava/driver/CUstream.java | 7 ++++- .../sysds/cujava/runtime/cudaStream_t.java | 26 +++++++++++++++++++ 3 files changed, 37 insertions(+), 1 deletion(-) create mode 100644 src/main/java/org/apache/sysds/cujava/runtime/cudaStream_t.java diff --git a/src/main/java/org/apache/sysds/cujava/driver/CUresult.java b/src/main/java/org/apache/sysds/cujava/driver/CUresult.java index 4caa76f230d..2814b771e68 100644 --- a/src/main/java/org/apache/sysds/cujava/driver/CUresult.java +++ b/src/main/java/org/apache/sysds/cujava/driver/CUresult.java @@ -19,6 +19,11 @@ package org.apache.sysds.cujava.driver; +/** + * The descriptions are directly taken from: + * https://docs.nvidia.com/cuda/archive/12.6.1/pdf/CUDA_Driver_API.pdf + */ + public class CUresult { diff --git a/src/main/java/org/apache/sysds/cujava/driver/CUstream.java b/src/main/java/org/apache/sysds/cujava/driver/CUstream.java index c5e3ec2f298..a27d7fbaee4 100644 --- a/src/main/java/org/apache/sysds/cujava/driver/CUstream.java +++ b/src/main/java/org/apache/sysds/cujava/driver/CUstream.java @@ -19,5 +19,10 @@ package org.apache.sysds.cujava.driver; -public class CUstream { +import org.apache.sysds.cujava.NativePointerObject; + +public class CUstream extends NativePointerObject { + + public CUstream() { + } } diff --git a/src/main/java/org/apache/sysds/cujava/runtime/cudaStream_t.java b/src/main/java/org/apache/sysds/cujava/runtime/cudaStream_t.java new file mode 100644 index 00000000000..3d7fe3b3297 --- /dev/null +++ b/src/main/java/org/apache/sysds/cujava/runtime/cudaStream_t.java @@ -0,0 +1,26 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +package org.apache.sysds.cujava.runtime; + +import org.apache.sysds.cujava.NativePointerObject; +import org.apache.sysds.cujava.driver.CUstream; + +public class cudaStream_t extends NativePointerObject { +} From 1f403fcf8e257239083c7038725e56c199b7887f Mon Sep 17 00:00:00 2001 From: ReneEnjilian Date: Wed, 27 Aug 2025 12:25:49 +0200 Subject: [PATCH 43/57] implement java side of driver --- .../java/org/apache/sysds/cujava/driver/CUstream.java | 9 +++++++++ .../org/apache/sysds/cujava/runtime/cudaStream_t.java | 11 +++++++++++ 2 files changed, 20 insertions(+) diff --git a/src/main/java/org/apache/sysds/cujava/driver/CUstream.java b/src/main/java/org/apache/sysds/cujava/driver/CUstream.java index a27d7fbaee4..1b1b07a6ec3 100644 --- a/src/main/java/org/apache/sysds/cujava/driver/CUstream.java +++ b/src/main/java/org/apache/sysds/cujava/driver/CUstream.java @@ -20,9 +20,18 @@ package org.apache.sysds.cujava.driver; import org.apache.sysds.cujava.NativePointerObject; +import org.apache.sysds.cujava.runtime.cudaStream_t; public class CUstream extends NativePointerObject { public CUstream() { } + + public CUstream(cudaStream_t stream) { + super(stream); + } + + CUstream(long value) { + super(value); + } } diff --git a/src/main/java/org/apache/sysds/cujava/runtime/cudaStream_t.java b/src/main/java/org/apache/sysds/cujava/runtime/cudaStream_t.java index 3d7fe3b3297..60a6f6e2abe 100644 --- a/src/main/java/org/apache/sysds/cujava/runtime/cudaStream_t.java +++ b/src/main/java/org/apache/sysds/cujava/runtime/cudaStream_t.java @@ -23,4 +23,15 @@ import org.apache.sysds.cujava.driver.CUstream; public class cudaStream_t extends NativePointerObject { + + public cudaStream_t() { + } + + public cudaStream_t(CUstream stream) { + super(stream); + } + + cudaStream_t(long value) { + super(value); + } } From 4ec9d2c67f40c8eaef9910aa0ceca004f039e619 Mon Sep 17 00:00:00 2001 From: ReneEnjilian Date: Wed, 27 Aug 2025 12:31:50 +0200 Subject: [PATCH 44/57] setup driver core class --- .../sysds/cujava/driver/CuJavaDriver.java | 20 +++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/src/main/java/org/apache/sysds/cujava/driver/CuJavaDriver.java b/src/main/java/org/apache/sysds/cujava/driver/CuJavaDriver.java index 011bb442d8a..0cc5ec1235e 100644 --- a/src/main/java/org/apache/sysds/cujava/driver/CuJavaDriver.java +++ b/src/main/java/org/apache/sysds/cujava/driver/CuJavaDriver.java @@ -19,7 +19,27 @@ package org.apache.sysds.cujava.driver; +import org.apache.sysds.cujava.CuJavaLibLoader; +import org.apache.sysds.cujava.CudaException; + public class CuJavaDriver { + private static boolean exceptionsEnabled = true; + private static final String LIB_BASE = "cujava_driver"; + + private CuJavaDriver() { + + } + + static { + CuJavaLibLoader.load(LIB_BASE); + } + + private static int checkCudaError(int result) { + if(exceptionsEnabled && result != CUresult.CUDA_SUCCESS) { + throw new CudaException(CUresult.resultString(result)); + } + return result; + } } From dc0abb5ff19e962a40c14d11a6c84be220241516 Mon Sep 17 00:00:00 2001 From: ReneEnjilian Date: Wed, 27 Aug 2025 12:41:10 +0200 Subject: [PATCH 45/57] add common for driver in native --- src/main/cpp/jni/driver/cujava_driver.hpp | 0 .../cpp/jni/driver/cujava_driver_common.hpp | 35 +++++++++++++++++++ .../sysds/cujava/driver/CuJavaDriver.java | 8 ++++- 3 files changed, 42 insertions(+), 1 deletion(-) create mode 100644 src/main/cpp/jni/driver/cujava_driver.hpp create mode 100644 src/main/cpp/jni/driver/cujava_driver_common.hpp diff --git a/src/main/cpp/jni/driver/cujava_driver.hpp b/src/main/cpp/jni/driver/cujava_driver.hpp new file mode 100644 index 00000000000..e69de29bb2d diff --git a/src/main/cpp/jni/driver/cujava_driver_common.hpp b/src/main/cpp/jni/driver/cujava_driver_common.hpp new file mode 100644 index 00000000000..13f271ba166 --- /dev/null +++ b/src/main/cpp/jni/driver/cujava_driver_common.hpp @@ -0,0 +1,35 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + +#ifndef CUJAVA_DRIVER_COMMON_HPP +#define CUJAVA_DRIVER_COMMON_HPP + +#include +#include +#include + +#include "../common/cujava_logger.hpp" +#include "../common/cujava_jni_utils.hpp" +#include "../common/cujava_pointer_utils.hpp" + +#define CUJAVA_INTERNAL_ERROR 0x80000001 + + + +#endif // CUJAVA_DRIVER_COMMON_HPP diff --git a/src/main/java/org/apache/sysds/cujava/driver/CuJavaDriver.java b/src/main/java/org/apache/sysds/cujava/driver/CuJavaDriver.java index 0cc5ec1235e..ffa4cfd84c6 100644 --- a/src/main/java/org/apache/sysds/cujava/driver/CuJavaDriver.java +++ b/src/main/java/org/apache/sysds/cujava/driver/CuJavaDriver.java @@ -36,10 +36,16 @@ private CuJavaDriver() { CuJavaLibLoader.load(LIB_BASE); } - private static int checkCudaError(int result) { + private static int checkCudaResult(int result) { if(exceptionsEnabled && result != CUresult.CUDA_SUCCESS) { throw new CudaException(CUresult.resultString(result)); } return result; } + + public static int cuCtxCreate(CUcontext pctx, int flags, CUdevice dev) { + return checkCudaResult(cuCtxCreateNative(pctx, flags, dev)); + } + + private static native int cuCtxCreateNative(CUcontext pctx, int flags, CUdevice dev); } From 859595f3035dcc8d2d1dc379335b0bee1b9688a0 Mon Sep 17 00:00:00 2001 From: ReneEnjilian Date: Thu, 28 Aug 2025 16:33:06 +0200 Subject: [PATCH 46/57] wrap-up driver package --- src/main/cpp/jni/CMakeLists.txt | 1 + src/main/cpp/jni/common/cujava_jni_utils.cpp | 32 ++ src/main/cpp/jni/common/cujava_jni_utils.hpp | 2 + src/main/cpp/jni/driver/CMakeLists.txt | 54 +++ src/main/cpp/jni/driver/cujava_driver.cpp | 341 ++++++++++++++++++ src/main/cpp/jni/driver/cujava_driver.hpp | 95 +++++ .../cpp/jni/driver/cujava_driver_common.hpp | 2 +- src/main/cpp/jni/runtime/CMakeLists.txt | 2 +- .../cpp/jni/runtime/cujava_runtime_common.hpp | 2 +- src/main/cpp/lib/libCuJavaCommonJNI.a | Bin 58608 -> 60032 bytes src/main/cpp/lib/libcujava_driver.so | Bin 0 -> 26896 bytes src/main/cpp/lib/libcujava_runtime.so | Bin 73784 -> 73848 bytes .../sysds/cujava/driver/CuJavaDriver.java | 97 ++++- .../apache/sysds/cujava/runtime/CuJava.java | 2 +- 14 files changed, 625 insertions(+), 5 deletions(-) create mode 100644 src/main/cpp/jni/driver/CMakeLists.txt create mode 100755 src/main/cpp/lib/libcujava_driver.so diff --git a/src/main/cpp/jni/CMakeLists.txt b/src/main/cpp/jni/CMakeLists.txt index 5e2f91cee99..fa359a7f46c 100644 --- a/src/main/cpp/jni/CMakeLists.txt +++ b/src/main/cpp/jni/CMakeLists.txt @@ -25,3 +25,4 @@ project(cujava_jni LANGUAGES CXX) # Build the two subprojects add_subdirectory(common) add_subdirectory(runtime) +add_subdirectory(driver) diff --git a/src/main/cpp/jni/common/cujava_jni_utils.cpp b/src/main/cpp/jni/common/cujava_jni_utils.cpp index 9d16af4e986..36e5fa3046b 100644 --- a/src/main/cpp/jni/common/cujava_jni_utils.cpp +++ b/src/main/cpp/jni/common/cujava_jni_utils.cpp @@ -189,3 +189,35 @@ bool zeroFieldInts(JNIEnv* env, jobject obj, jfieldID fid) { } +char* toNativeCString(JNIEnv* env, jstring js, int* length) { + if (js == nullptr) return nullptr; + + if (env->EnsureLocalCapacity(2) < 0) { + ThrowByName(env, "java/lang/OutOfMemoryError", + "Out of memory during string reference creation"); + return nullptr; + } + + jbyteArray bytes = (jbyteArray)env->CallObjectMethod(js, String_getBytes); + if (env->ExceptionCheck() || bytes == nullptr) { + return nullptr; + } + + jint len = env->GetArrayLength(bytes); + if (length) *length = (int)len; + + char* out = new char[len + 1]; + if (out == nullptr) { + ThrowByName(env, "java/lang/OutOfMemoryError", + "Out of memory during string creation"); + env->DeleteLocalRef(bytes); + return nullptr; + } + + env->GetByteArrayRegion(bytes, 0, len, (jbyte*)out); + out[len] = '\0'; + env->DeleteLocalRef(bytes); + return out; +} + + diff --git a/src/main/cpp/jni/common/cujava_jni_utils.hpp b/src/main/cpp/jni/common/cujava_jni_utils.hpp index 1cde2f01227..75c2c1f7177 100644 --- a/src/main/cpp/jni/common/cujava_jni_utils.hpp +++ b/src/main/cpp/jni/common/cujava_jni_utils.hpp @@ -34,6 +34,8 @@ bool set(JNIEnv *env, jintArray ja, int index, jint value); bool setFieldBytes(JNIEnv* env, jobject obj, jfieldID fid, const jbyte* src, jsize n); bool setFieldInts (JNIEnv* env, jobject obj, jfieldID fid, const jint* src, jsize n); bool zeroFieldInts(JNIEnv* env, jobject obj, jfieldID fid); +char* toNativeCString(JNIEnv* env, jstring js, int* length = nullptr); + // ---- Exceptions ---- void ThrowByName(JNIEnv* env, const char* name, const char* msg); diff --git a/src/main/cpp/jni/driver/CMakeLists.txt b/src/main/cpp/jni/driver/CMakeLists.txt new file mode 100644 index 00000000000..9825ade2736 --- /dev/null +++ b/src/main/cpp/jni/driver/CMakeLists.txt @@ -0,0 +1,54 @@ +#------------------------------------------------------------- +# +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# +#------------------------------------------------------------- + +cmake_minimum_required(VERSION 3.18) + +project(CuJavaDriver LANGUAGES CXX) + +find_package(JNI REQUIRED) +find_package(CUDAToolkit REQUIRED) # for CUDA::cuda_driver + +add_library(CuJavaDriver SHARED + cujava_driver.cpp +) + +set_target_properties(CuJavaDriver PROPERTIES + CXX_STANDARD 11 + OUTPUT_NAME cujava_driver # -> libcujava_driver.so + LIBRARY_OUTPUT_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/../../lib + RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/../../lib + ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/../../lib +) + +target_include_directories(CuJavaDriver + PRIVATE + ${JNI_INCLUDE_DIRS} + ${CUDAToolkit_INCLUDE_DIRS} + ${CMAKE_CURRENT_SOURCE_DIR} # headers in driver/ + ${CMAKE_CURRENT_SOURCE_DIR}/../common # if including common headers +) + +target_link_libraries(CuJavaRuntime + PRIVATE + CuJavaCommonJNI + CUDA::cuda_driver # driver API (libcuda) + ${JNI_LIBRARIES} +) diff --git a/src/main/cpp/jni/driver/cujava_driver.cpp b/src/main/cpp/jni/driver/cujava_driver.cpp index 042f3ce1f39..4cca71c9c43 100644 --- a/src/main/cpp/jni/driver/cujava_driver.cpp +++ b/src/main/cpp/jni/driver/cujava_driver.cpp @@ -16,3 +16,344 @@ * specific language governing permissions and limitations * under the License. */ + +#include "cujava_driver.hpp" +#include "cujava_driver_common.hpp" + + +JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM *jvm, void *reserved) { + JNIEnv *env = nullptr; + if (jvm->GetEnv((void **)&env, JNI_VERSION_1_4)) { + return JNI_ERR; + } + + // Only what we need so far + if (initJNIUtils(env) == JNI_ERR) return JNI_ERR; + if (initPointerUtils(env) == JNI_ERR) return JNI_ERR; + + return JNI_VERSION_1_4; +} + + + +JNIEXPORT void JNICALL JNI_OnUnload(JavaVM *vm, void *reserved) { +} + + + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_driver_CuJavaDriver_cuCtxCreateNative + (JNIEnv *env, jclass cls, jobject pctx, jint flags, jobject dev) { + if (pctx == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'pctx' is null for cuCtxCreate"); + return CUJAVA_INTERNAL_ERROR; + } + if (dev == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'dev' is null for cuCtxCreate"); + return CUJAVA_INTERNAL_ERROR; + } + Logger::log(LOG_TRACE, "Executing cuCtxCreate\n"); + + CUdevice nativeDev = (CUdevice)(intptr_t)getNativePointerValue(env, dev); + CUcontext nativePctx; + int result = cuCtxCreate(&nativePctx, (int)flags, nativeDev); + setNativePointerValue(env, pctx, (jlong)nativePctx); + + return result; +} + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_driver_CuJavaDriver_cuDeviceGetNative + (JNIEnv *env, jclass cls, jobject device, jint ordinal) { + if (device == NULL) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'device' is null for cuDeviceGet"); + return CUJAVA_INTERNAL_ERROR; + } + + Logger::log(LOG_TRACE, "Executing cuDeviceGet for device %ld\n", ordinal); + + CUdevice nativeDevice; + int result = cuDeviceGet(&nativeDevice, ordinal); + setNativePointerValue(env, device, (jlong)nativeDevice); + return result; +} + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_driver_CuJavaDriver_cuDeviceGetCountNative + (JNIEnv *env, jclass cls, jintArray count) { + if (count == NULL) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'count' is null for cuDeviceGetCount"); + return CUJAVA_INTERNAL_ERROR; + } + + Logger::log(LOG_TRACE, "Executing cuDeviceGetCount\n"); + + int nativeCount = 0; + int result = cuDeviceGetCount(&nativeCount); + if (!set(env, count, 0, nativeCount)) return CUJAVA_INTERNAL_ERROR; + return result; +} + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_driver_CuJavaDriver_cuInitNative + (JNIEnv *env, jclass cls, jint flags) { + Logger::log(LOG_TRACE, "Executing cuInit\n"); + + int result = cuInit((unsigned int)flags); + return result; +} + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_driver_CuJavaDriver_cuLaunchKernelNative + (JNIEnv *env, jclass, jobject f, jint gridDimX, jint gridDimY, jint gridDimZ, + jint blockDimX, jint blockDimY, jint blockDimZ, jint sharedMemBytes, + jobject hStream, jobject kernelParams, jobject extra) { + if (f == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'f' is null for cuLaunchKernel"); + return CUJAVA_INTERNAL_ERROR; + } + Logger::log(LOG_TRACE, "Executing cuLaunchKernel\n"); + + CUfunction nativeF = (CUfunction)getNativePointerValue(env, f); + CUstream nativeHStr = (CUstream) getNativePointerValue(env, hStream); + + PointerData *kernelParamsPD = nullptr; + void **nativeKernelParams = nullptr; + if (kernelParams != nullptr) { + kernelParamsPD = initPointerData(env, kernelParams); + if (kernelParamsPD == nullptr) return CUJAVA_INTERNAL_ERROR; + nativeKernelParams = (void**)kernelParamsPD->getPointer(env); + } + + PointerData *extraPD = nullptr; + void **nativeExtra = nullptr; + if (extra != nullptr) { + extraPD = initPointerData(env, extra); + if (extraPD == nullptr) return CUJAVA_INTERNAL_ERROR; + nativeExtra = (void**)extraPD->getPointer(env); + } + + int result = cuLaunchKernel( + nativeF, + (unsigned int)gridDimX, (unsigned int)gridDimY, (unsigned int)gridDimZ, + (unsigned int)blockDimX, (unsigned int)blockDimY, (unsigned int)blockDimZ, + (unsigned int)sharedMemBytes, + nativeHStr, + nativeKernelParams, + nativeExtra); + + if (!releasePointerData(env, kernelParamsPD, 0)) return CUJAVA_INTERNAL_ERROR; + if (!releasePointerData(env, extraPD, 0)) return CUJAVA_INTERNAL_ERROR; + + return result; +} + + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_driver_CuJavaDriver_cuModuleGetFunctionNative + (JNIEnv *env, jclass, jobject hfunc, jobject hmod, jstring name) { + if (hfunc == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'hfunc' is null for cuModuleGetFunction"); + return CUJAVA_INTERNAL_ERROR; + } + if (hmod == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'hmod' is null for cuModuleGetFunction"); + return CUJAVA_INTERNAL_ERROR; + } + if (name == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'name' is null for cuModuleGetFunction"); + return CUJAVA_INTERNAL_ERROR; + } + + Logger::log(LOG_TRACE, "Executing cuModuleGetFunction\n"); + + CUmodule nativeHmod = (CUmodule)getNativePointerValue(env, hmod); + char* nativeName = toNativeCString(env, name); + if (!nativeName) return CUJAVA_INTERNAL_ERROR; + + CUfunction nativeHfunc = nullptr; + int result = cuModuleGetFunction(&nativeHfunc, nativeHmod, nativeName); + + delete[] nativeName; + setNativePointerValue(env, hfunc, (jlong)nativeHfunc); + return result; +} + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_driver_CuJavaDriver_cuModuleLoadDataExNative + (JNIEnv *env, jclass, jobject phMod, jobject p, jint numOptions, jintArray options, jobject optionValues) +{ + if (phMod == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'phMod' is null for cuModuleLoadDataEx"); + return CUJAVA_INTERNAL_ERROR; + } + if (p == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'p' is null for cuModuleLoadDataEx"); + return CUJAVA_INTERNAL_ERROR; + } + if (options == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'options' is null for cuModuleLoadDataEx"); + return CUJAVA_INTERNAL_ERROR; + } + if (optionValues == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'optionValues' is null for cuModuleLoadDataEx"); + return CUJAVA_INTERNAL_ERROR; + } + + Logger::log(LOG_TRACE, "Executing cuModuleLoadDataEx\n"); + + CUjit_option *nativeOptions = nullptr; + { + jint *opts = env->GetIntArrayElements(options, nullptr); + if (opts == nullptr) return CUJAVA_INTERNAL_ERROR; + + nativeOptions = new CUjit_option[(size_t)numOptions]; + for (int i = 0; i < numOptions; ++i) nativeOptions[i] = (CUjit_option)opts[i]; + + env->ReleaseIntArrayElements(options, opts, JNI_ABORT); + } + + // Pointers for 'p' (module data) and 'optionValues' (void** for JIT options) + CUmodule nativeModule; + + PointerData *pPD = initPointerData(env, p); + if (pPD == nullptr) { delete[] nativeOptions; return CUJAVA_INTERNAL_ERROR; } + + PointerData *ovPD = initPointerData(env, optionValues); + if (ovPD == nullptr) { + releasePointerData(env, pPD, JNI_ABORT); + delete[] nativeOptions; + return CUJAVA_INTERNAL_ERROR; + } + void **nativeOptionValues = (void**)ovPD->getPointer(env); + + int result = cuModuleLoadDataEx( + &nativeModule, + (void*)pPD->getPointer(env), + (unsigned int)numOptions, + nativeOptions, + nativeOptionValues); + + delete[] nativeOptions; + + setNativePointerValue(env, phMod, (jlong)nativeModule); + + // p is input-only → no-commit; optionValues may receive outputs → commit + if (!releasePointerData(env, pPD, JNI_ABORT)) return CUJAVA_INTERNAL_ERROR; + if (!releasePointerData(env, ovPD, 0)) return CUJAVA_INTERNAL_ERROR; + + return result; +} + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_driver_CuJavaDriver_cuMemAllocNative + (JNIEnv *env, jclass cls, jobject dptr, jlong bytesize) { + if (dptr == NULL) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'dptr' is null for cuMemAlloc"); + return CUJAVA_INTERNAL_ERROR; + } + Logger::log(LOG_TRACE, "Executing cuMemAlloc of %ld bytes\n", (long)bytesize); + + CUdeviceptr nativeDptr; + int result = cuMemAlloc(&nativeDptr, (size_t)bytesize); + setPointer(env, dptr, (jlong)nativeDptr); + return result; +} + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_driver_CuJavaDriver_cuModuleUnloadNative + (JNIEnv *env, jclass cls, jobject hmod) { + if (hmod == NULL) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'hmod' is null for cuModuleUnload"); + return CUJAVA_INTERNAL_ERROR; + } + Logger::log(LOG_TRACE, "Executing cuModuleUnload\n"); + + CUmodule nativeHmod = (CUmodule)getNativePointerValue(env, hmod); + int result = cuModuleUnload(nativeHmod); + return result; +} + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_driver_CuJavaDriver_cuCtxDestroyNative + (JNIEnv *env, jclass cls, jobject ctx) { + if (ctx == NULL) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'ctx' is null for cuCtxDestroy"); + return CUJAVA_INTERNAL_ERROR; + } + Logger::log(LOG_TRACE, "Executing cuCtxDestroy\n"); + + CUcontext nativeCtx = (CUcontext)getNativePointerValue(env, ctx); + int result = cuCtxDestroy(nativeCtx); + return result; +} + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_driver_CuJavaDriver_cuMemFreeNative + (JNIEnv *env, jclass cls, jobject dptr) { + if (dptr == NULL) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'dptr' is null for cuMemFree"); + return CUJAVA_INTERNAL_ERROR; + } + Logger::log(LOG_TRACE, "Executing cuMemFree\n"); + + CUdeviceptr nativeDptr = (CUdeviceptr)getPointer(env, dptr); + int result = cuMemFree(nativeDptr); + return result; +} + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_driver_CuJavaDriver_cuMemcpyDtoHNative + (JNIEnv *env, jclass cls, jobject dstHost, jobject srcDevice, jlong ByteCount) { + if (dstHost == NULL) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'dstHost' is null for cuMemcpyDtoH"); + return CUJAVA_INTERNAL_ERROR; + } + if (srcDevice == NULL) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'srcDevice' is null for cuMemcpyDtoH"); + return CUJAVA_INTERNAL_ERROR; + } + Logger::log(LOG_TRACE, "Executing cuMemcpyDtoH of %d bytes\n", (size_t)ByteCount); + + PointerData *dstHostPointerData = initPointerData(env, dstHost); + if (dstHostPointerData == NULL) { + return CUJAVA_INTERNAL_ERROR; + } + CUdeviceptr nativeSrcDevice = (CUdeviceptr)getPointer(env, srcDevice); + void *nativeDstHost = (void*)dstHostPointerData->getPointer(env); + + int result = cuMemcpyDtoH(nativeDstHost, nativeSrcDevice, (size_t)ByteCount); + + if (!releasePointerData(env, dstHostPointerData, 0)) return CUJAVA_INTERNAL_ERROR; + + return result; +} + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_driver_CuJavaDriver_cuCtxSynchronizeNative + (JNIEnv *env, jclass cls) { + Logger::log(LOG_TRACE, "Executing cuCtxSynchronize\n"); + + return cuCtxSynchronize(); +} + + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_driver_CuJavaDriver_cuDeviceGetAttributeNative + (JNIEnv *env, jclass cls, jintArray pi, jint CUdevice_attribute_attrib, jobject dev) { + if (pi == NULL) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'pi' is null for cuDeviceGetAttribute"); + return CUJAVA_INTERNAL_ERROR; + } + if (dev == NULL) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'dev' is null for cuDeviceGetAttribute"); + return CUJAVA_INTERNAL_ERROR; + } + Logger::log(LOG_TRACE, "Executing cuDeviceGetAttribute\n"); + + CUdevice nativeDev = (CUdevice)(intptr_t)getNativePointerValue(env, dev); + int nativePi = 0; + int result = cuDeviceGetAttribute(&nativePi, (CUdevice_attribute)CUdevice_attribute_attrib, nativeDev); + if (!set(env, pi, 0, nativePi)) return CUJAVA_INTERNAL_ERROR; + return result; +} diff --git a/src/main/cpp/jni/driver/cujava_driver.hpp b/src/main/cpp/jni/driver/cujava_driver.hpp index e69de29bb2d..6a99bf669b6 100644 --- a/src/main/cpp/jni/driver/cujava_driver.hpp +++ b/src/main/cpp/jni/driver/cujava_driver.hpp @@ -0,0 +1,95 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + + #include + + #ifndef _Included_org_apache_sysds_cujava_driver_CuJavaDriver + #define _Included_org_apache_sysds_cujava_driver_CuJavaDriver + #ifdef __cplusplus + extern "C" { + #endif + + /* + * Class: org.apache.sysds.cujava.driver.CuJavaDriver + * Methods: + * - cudaCtxCreate + * - cuDeviceGet + * - cuDeviceGetCount + * - cuInit + * - cuLaunchKernel + * - cuModuleGetFunction + * - cuModuleLoadDataEx + * - cuMemAlloc + * - cuModuleUnload + * - cuCtxDestroy + * - cuMemFree + * - cuMemcpyDtoH + * - cuCtxSynchronize + * - cuDeviceGetAttribute + */ + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_driver_CuJavaDriver_cuCtxCreateNative + (JNIEnv *env, jclass cls, jobject pctx, jint flags, jobject dev); + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_driver_CuJavaDriver_cuDeviceGetNative + (JNIEnv *env, jclass cls, jobject device, jint ordinal); + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_driver_CuJavaDriver_cuDeviceGetCountNative + (JNIEnv *env, jclass cls, jintArray count); + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_driver_CuJavaDriver_cuInitNative + (JNIEnv *env, jclass cls, jint Flags); + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_driver_CuJavaDriver_cuLaunchKernelNative + (JNIEnv *env, jclass, jobject f, jint gridDimX, jint gridDimY, jint gridDimZ, + jint blockDimX, jint blockDimY, jint blockDimZ, jint sharedMemBytes, + jobject hStream, jobject kernelParams, jobject extra); + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_driver_CuJavaDriver_cuModuleGetFunctionNative + (JNIEnv *env, jclass, jobject hfunc, jobject hmod, jstring name); + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_driver_CuJavaDriver_cuModuleLoadDataExNative + (JNIEnv *env, jclass, jobject phMod, jobject p, jint numOptions, jintArray options, jobject optionValues); + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_driver_CuJavaDriver_cuMemAllocNative + (JNIEnv *env, jclass cls, jobject dptr, jlong bytesize); + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_driver_CuJavaDriver_cuModuleUnloadNative + (JNIEnv *env, jclass cls, jobject hmod); + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_driver_CuJavaDriver_cuCtxDestroyNative + (JNIEnv *env, jclass cls, jobject ctx); + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_driver_CuJavaDriver_cuMemFreeNative + (JNIEnv *env, jclass cls, jobject dptr); + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_driver_CuJavaDriver_cuMemcpyDtoHNative + (JNIEnv *env, jclass cls, jobject dstHost, jobject srcDevice, jlong ByteCount); + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_driver_CuJavaDriver_cuCtxSynchronizeNative + (JNIEnv *env, jclass cls); + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_driver_CuJavaDriver_cuDeviceGetAttributeNative + (JNIEnv *env, jclass cls, jintArray pi, jint CUdevice_attribute_attrib, jobject dev); + +#ifdef __cplusplus +} +#endif +#endif diff --git a/src/main/cpp/jni/driver/cujava_driver_common.hpp b/src/main/cpp/jni/driver/cujava_driver_common.hpp index 13f271ba166..c4c219981c6 100644 --- a/src/main/cpp/jni/driver/cujava_driver_common.hpp +++ b/src/main/cpp/jni/driver/cujava_driver_common.hpp @@ -21,7 +21,7 @@ #define CUJAVA_DRIVER_COMMON_HPP #include -#include +#include #include #include "../common/cujava_logger.hpp" diff --git a/src/main/cpp/jni/runtime/CMakeLists.txt b/src/main/cpp/jni/runtime/CMakeLists.txt index c0ff5c5480b..2bb94a356ab 100644 --- a/src/main/cpp/jni/runtime/CMakeLists.txt +++ b/src/main/cpp/jni/runtime/CMakeLists.txt @@ -43,7 +43,7 @@ target_include_directories(CuJavaRuntime ${JNI_INCLUDE_DIRS} ${CUDAToolkit_INCLUDE_DIRS} ${CMAKE_CURRENT_SOURCE_DIR} # headers in runtime/ - ${CMAKE_CURRENT_SOURCE_DIR}/../common # if you include common headers without ../ + ${CMAKE_CURRENT_SOURCE_DIR}/../common # if including common headers ) target_link_libraries(CuJavaRuntime diff --git a/src/main/cpp/jni/runtime/cujava_runtime_common.hpp b/src/main/cpp/jni/runtime/cujava_runtime_common.hpp index 70d9bede0d7..4fae1eea18e 100644 --- a/src/main/cpp/jni/runtime/cujava_runtime_common.hpp +++ b/src/main/cpp/jni/runtime/cujava_runtime_common.hpp @@ -21,8 +21,8 @@ #define CUJAVA_RUNTIME_COMMON_HPP #include +#include #include -#include #include "../common/cujava_logger.hpp" #include "../common/cujava_jni_utils.hpp" diff --git a/src/main/cpp/lib/libCuJavaCommonJNI.a b/src/main/cpp/lib/libCuJavaCommonJNI.a index d09427ba6d0e0cc27777beec36d527f49293f740..92d4364766a46123e3a6bd5f86d77ec52297f9c9 100644 GIT binary patch delta 3235 zcmcJRdrVVT9LLYS1!AG&1mm)vuH z=kxuYbAI=ndrmv~wPN2jMR$IOGe1`ltu~qvQcs9({>)?CNyz_s3Q7ri{?qZIfS0Uy zyfDL;n?UOGmj_0BnAc1l#lfqdgNmtc0f#*>7~8cU<+85Z{&u9L!8@Md&8hAUkvLNQL|NB;e}p^O zNDjAip8BZ?j3mLkp`ha6SJ=V%eOYi~s=E-=obK)(D$1erUc_im;Ht7TII*$Hy~$m5 zCDvSoF9m5E^*So7aNggDVn~Cj@_xun*FjF&F$MO7D`|IaYj*pE=B+}bx3Ssxrm$r< zU0NZuoPy80)$8*%)q90{pBLA@xd}c_cfwEU`LmL-zlp#<^|QG=FlJb}EwCbE33m!Q z(I3TfUZj8_kKlSn24{k2sBM7!%*9+c?80&c&Sb9PlX-ZYxtiM!#aT5JVQB%?+*KtW z?Al6GMEjc-E46Wl`DNPVLkhQ6css(awFDxIv<|*6T5BoN3T|!kGHu*4t#V~dr3i{7 z0ORqqVKP3IQHZ-uN1QRe=qhnNZVe^iuBgx(zme3TB9@sT(aRD`6{!v5*!LH85ifT zWI~Hfpl+?$R*~akJyUFDd}IcRUV~UF$>A^_novb1!gwnodXg^NtP3pQGw4h(7zeQx zPw3eTnTOTCP}TbcTU0G)^aQH~JnfWEvUUZlOBpYxw*i{O+ZaE`_@R(Yj$%6wKc|F_ zv*_svelyIJtiHs07P1t-Vf+r`aqQc!VmuM!Xl6SZU(fhL#>W^x&3HwKSCf4aAtDJr z*1^GY`hs;h&A7Cp62C4@fVT@ZY2Q>hq4Hr$2TX7|dpR`lEqwuNFIQ4i`Jb-!9i*nRsjiU_mzX5M2??QZ{&Xs2 zg#@&AJ#5NRgT<-lza=n`qlZJ-Ot!0`HzyMw<*4~3oEUYFM%mPGu_q*(Y-%mtIBBq( z9Hct+P-;_a%rg84+HD5diybFWiJ&Q<(JV~xq0LSwh8s9k3=(Omt2{JeUTV8qYm(uI zyqI4B=0@{dXV27VWO5Po*bVSLDnHuQ{APui^(Z#;9BOVAJVWuRU2Tk)b*W_E0j<&@ z&0zqgL#^T2S3q-(hqVraFMJtU$y7RGHk@}DG*+3~3HNc1dk%F+ zqKtOS`p9RxE}Kcdq<3ZU^cI$u&C1RZog07Wrg;nF^nH>-JX`z#+GK(}q5ZOf(n04m zaC4yNJp)|CU9=>rv+ygOHu2KM79E^El5K}Fr@`3EnvyErA!E>v>eDb)x-kU!1l3J= z>ZwV6rPF^DenxdPOqI^M2{a1~#s-#()K@y#qp);=A$vZ10ZAQW$9QiTKNSTh&*Vk> zybX0Wzqi$I!{fLZZhUTr%L`tGxtB_CBStYp9lg~+&?_}+F=IkvvDQP+kTqJmO^+#| zdZ8=HVF*PWr<;UE19?apw(@@{aTGn&4qH?cZ2gsRWZ2BP;QX*bHObfo7#}vnx#5VV zbc90oo^&W`BXdGE{hvXN4o_c>btV#Tfu*?yRWJT#Q~Ll>=+|KrpW~qUc+t#F3>Y|mi<%vUI4^_9V(IW|>K(;BM+T~Jt*q??UVC}HE@3JfR G(|-Z7GK~cQ delta 2295 zcmcJQU1$_n6vyvOvdL~biJNS8W*72RV|JHDH#@tVO}0s8i$WtB6RoAe`Vplq7Hnv0 zDbk`zpe<1hME+0|;)4j1g4)RTL8v|mK2&N-T3Q;R+OL;9REhnfttsufGiNr#(uYv+ zz|1}O_doaCJNKTuJNi}0;?0uD>_{S;XtHduLI|->2>*@cC+rpC|2&ziLagi=S!v)S ziW^z+N*~Pv^#9%_yinVKpOqXA9jnW~tNx{6$Jpxp*0EhB`H1(e>e7z(bQ*)z3FAtb zPK_;RwK=g$ROKIrPnV;=c^XU23z(`&py#DdPmBWUaHgeI>A}sGF6AAVk*Gyy$ZJ); z!R|=2A}|)|Qo3<1(xJS8-{^e->!N+?l7gert;!b6M)yh-+pB1ph;2qv525K`1KteO z_;hOx9wBg64`6#|4TgU3j+6;GwcA>(PMH{VL-L=n`W{hV#M_w1i+GxOs)%QqcgvQF ztYGUc&m(dLVmlj{?=Rw;n7>%W`cd~HEB}jMB>X(UAR=fOqnfWKn z$np+aZ;zNL;&Q?op%iEjdy{k)=K{g-Mb`V7pXT-poDCSgKeD>W^jU6KQ9_xupA$R$ zDdscGPjLM6)c51*Kw#um@~TBCb0NI!9pRBV)drt3|A4u_#0I;Wf6e?g=Fc(zo%tN| z^UQV1ODoWXtxECpz4%%-EPDy%te_E96rT-j=6IXw}@Mx=(%0+?m3?NtBO7A z#xZ=X0o&snuqNJwx%gxG595C;c5P>PS{fnb(wF|REyrB0ItaxyDr;TpXSkCv&~0i; z5Sz@lu>1yRWEbs(G<)Pp)4*X}^a5DUXS&Cbm)T(?g zTB>5bsbg1ijZ%xTq=C+)rrf{;c~_G(fvKs#sJNTZ@e>I_{F!X4)Li2?qCRC{OG*n@ zx#)gAFMGAa6fuy})Xk+hn$mG0rC}kZRqo`olT9N&r=W2PQa!j!L0Vc1H@Y(V%c(;q z_qPRR+6YI;bH2@FRi=t!U)rdOxzw?8T%wdylrrGLldeIH*w$_!L|b~IUBgsRqo2TQ z?M8T<;-$%hl#g?DKEgdxzat{eQJsrYiu#NZ&hc?Ls#Elb(Mzfm>!?nN3mhS}Ut(8g zr=DkUF=Ny?nF?dea6gm9(8u+7uj5Iq)i+{DU#*@h$53acdO?0PnV0ul!)?7yoiC>w ztYh(3%s0;);l<;#QGA*87sxbD8jbW1HJdejqkOp+@cmq)(uZNgP!ITU+=wUxxJ;e* zeOAUn!>=5`0|KXfs0c-rQJ5j4;)<*~vVjuBvkl7IxU3t&MZ<=jyj8NYDsU#$8uVA% m$~;$+?AGE=sI_9jZz~T~-0#ZxV*KZL9NWT8`QGl-rGEjaK(TQE diff --git a/src/main/cpp/lib/libcujava_driver.so b/src/main/cpp/lib/libcujava_driver.so new file mode 100755 index 0000000000000000000000000000000000000000..519f1fbf43b780a34b60bc64b8d37d0b15ff1596 GIT binary patch literal 26896 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 MJjKTy0uEOBUxUZ+egFUf literal 0 HcmV?d00001 diff --git a/src/main/cpp/lib/libcujava_runtime.so b/src/main/cpp/lib/libcujava_runtime.so index f4b66694a90c4e70f1b5ad1fdcf0a48666f35f1e..3e5270ee3bf76bd4d3168c4d543f8cd95a7284b0 100755 GIT binary patch delta 9732 zcma)C2~<=^)_(6nBVf}s2sVuv8&pK20tOTn6EFzPCa93Oi$;xRMx&-pG>K_YP+Mg4 zqNtP1m>K8)O`=C4njmf%ag7TaGSQ4ioM6)K#%T7;`@ecsZLlYE&R^%e{;F<$b?erx z^}Xu)M$aD_Ju9Q+`l{Z8eAeemT3BB-JH{uG$CDGQ{@UNy7|Bz{$oD_*FNfaA=KBI~zTON&qLNzUq5U+{KPwRhgGu5?o=l2d4|$M|7SaIO>wjK?zwPlAvQ z1u_GMiF6V$1$6wfj|#VmnP z!a-Ug&>^r?;A&tQ$+|I~R9SU?K zTzT?Py3)a<>uwNSc@PD7zoN@}nExKjms=n;QL}f9F4mPpAwFB|o&6*!LNZ9LmE4$~ z!lvyVxxBfY3v@!hR`6@9xZs$O&+z5^LO1^RK3tybCLaKWfs%oq@(r+O!FFat0dZw0 zq6LFLm$z2)^p`^Zj;O2BP3Hrnu%U(%{~~i#MO%y&JUvV3`OpI%l|t!^Zveb@#n&YF zrXPKy)5nT78bur568trKq2J9{-8)HAxD+fE{*x0!1pfie?`R4b!~Bib84J1idn)SK zONl9?cRNP<4i`;qUQ3^MjFcymtT&k}{)_KFpjf@hSL(p6Fc#5heWZMn7VD$UErHAg zqg1(zR}v&lm`Deq&_gKP%gJ0y3pM@8b+}UQce2uG^BvgGWyjxpI zp@zxRD$BThjL7be&Se%PxLGhMfU9dP!EatopBo~5JVoPc z$;ZE!?_ptc;Tjs^A36G8VxYPE?N3^vV5!!v!>0;A6o_637q*wd3}#Cq(GLGe^OwSz zg>FqLpl|%sVhe;HBr(d^3d2Glp(NMMpL=PxvD>tHqWRjA3HH09`FDjIUGq0sxN)po z-HRb-WB8b8l2xlylKR43%yi2Jx^9g0y)L|m^(r(V(tJh?tXARV-lEi>X*IFnRbD(h@Pwy1+?PBSO5qwt@P6&CDo1THL=~=-Quw|KrEe5R# z9#SRIkif{Pb9h>s=jO;2|78h#Lky9-qF2pat)v%r7~SmKNCyK=zDpl=0R1a4a=>zJ zXaq~SZbRm>FvcR*xP3yo&PYQ#^*65&{(I-<9*xIkFYS>#qf^cP0ufe{eGN-t*fc5Qi?UapN*Z$5(=iBAJKuc0hayG3^O_QIYOJEi< ziU{5pd4$zcPJU@7KZh#|XrZb!6Is*raslP1MVnpc4Ms_7S8_4El@=|R(kcADLBFP% z~b2_qBbd|EiNf=*`Z{qDA7&Ze$8(Uh30r?ELb zG#{FXHOuiU6*>y}Lc%W>K2xNR*p#x^=% z`chSqPIoj}OFh&|3+gLw^evO6z{9mf-xW-xOj>9MsdoJ7IR4bFv)ep-jA4%!Q?5SsVENk-4ayTbUN}iZJ>5zXn zOhs#1aB^P;@$ruX9G9I#+F%)oBVun&0GV@V`gh|q^ILxktlr)QRnP42lFh9A*8j1e z@}cULXuMmTSrlr&YCY=N12sb9ZRd|*qjAMk;TdabaKt1AaXnC3R+%mdMXY7$Zb@?H zUg5+9Ml1^+&a&Vz81;cr@fcUp>k$>d_SaN&XDa+O6?XsP2bfK$%^kXL45%(hlu z*-1t$3l90MvJ6q#4zA)5X47x>N?Zl2)A_bg;o!tq9}?}XWuI}gE-~gJ!7Sj+;}4mP zxP%k;F=CD&4&qj|vMla`UBWqCxr%>JXm8bfJy|3CR!2d_%~sW{`TIWee_8OU-*hav zLMMy5+HbJ34#kS`S^Oa*l?JbTL|r(ys4ufq6 zF%n?hZHz-_0!ZD98*M3I&3S}X-AiLt0h~`a-U6+MN8Bj#yVyd0Htf~iMP|msK3sue1ys6DQ z-OBMabJ^1HY7jEY`u++E+;Ye1d5O)f_ASWkI>@o64*k(832z5k9WrkUfs0o@1COOo^8MO95N?cCm; zbz>>FWSG8!DbZGmg%@c<$zY}7St?rIg$h<0=+_ecQ<=S8+I*nx+7@W@@0J7?$N$*J zm2(H$4}`FK4*&DfMsK4%D>aegnJW$6>|2vKC8`JGs@?R0HJo5}H>D6K3^XMZBi+3T%iq7_a4=a5M zWv>OQOo3RC&T4}>{;dej#m>Jn<&{~Eubm;EtLli@wrg$whMi^cgW-qRM()>sAo2Ek zfE0U9lY)~EUA(iu%t!2K3VY?pB6W0SKxd4N>mXlqKpn5URF|GFTpc?6Cv+26zMioL zX)NaDfQSCKBZJqPf8jrRGb5k&u1r=c@}RLdMLG2LyO;=E;}@V`TkO5EXll9L%=4#uOPia`0CF*$y#$Zd-Hpp;yb}`~988XSJ|eo;KcC&-W%xwc~rZ?+CKtzV8`pO$%Ktk1%}4 zMMs%v+9RSGCK}K}i500z;7BU2NQm0RL=!$y)d}^iU$8qKs)X9zTt`VLv}3zk^$E3A zBr3LS%Bc*c#L58WDHcr_J_0=Mh|+WJIy}P) zOAm5O_Y!G3RTXCZ1FB)&&0E*=Ed5xu_{l&`h|YhQu^wg6gVxfdDCLRS!7-I zno+V1jcr87)WS@zVs10luGwzLhrn5XhLzIcEn^PNFoe1|m=#Z+p;n5cmg-PBo$ge3 z>6ngYYQuZ?DGFXY08;DPgt%&S3|Bk)w5n=d$Idw7Bs7zCVKVExviOC;+)uBbrk!i| z;Zx9pb(uJ)?q8Q~JOLwq+ZO)!1et2W<&SA_O#u#|8*5Vac@Jy3_c7h9F^8n#?GZXV z;l+w|X~;?V{#|GI$JBLwx5yt@h0AV6SxcV{;kK23tg6X{_9)4}_)Be<*PR?e)7CGX zQsz=@bsR>cztb$at`*X}rZ6Y9LYi5c_kh*d5dzoJcubRLK|c7JEhe@x#c@w7$r=m2 z&MhZs;D(t2QOumO_zUdt2wRIz(6$XDTTy750@l_~l|i2feGRn-Sl< zRaH*{cLLjhaobfj$bdKAT2=i8=^pQ^Y7`cUIA9{MrA}1~fwrBhx|5}WPGH_HRgJ?5 zq8OM3Z2CY|D}kFognnR3y{h81+Ai4;3DY41m;g-Kt*UC48`fc1y}%#JEE%Vfo(u1u=*(K^R`3rF=Sx# zii6vK0D7`P-~+^ zQD8B!8Q2D7A3N>?w=n(ZRduf&ksw5xfjxk2z&PL!z!ab!Urq9W7N89n2P_6!fz`l? zz|FvUz@5NiU=wgXum!jk=!yNR31|b}1l|V*bwnB)qCE+b&4`QzwgBe=J+bGnWO865 z(1!EKFTgmQiW2lN444JX1F|oG(}6ai4Y(3m415z9^aZ*O*aGy1=bCUHOabo15wnna z^or`M#=(_Acxl^7+4bG=nmxb1S8Ve;s>(jLxB{ktG!f4+$O|zDT>)FRcIzS0@%qO* z-`}RH=r1iK;ddvVyW7Zj_i#CjvUfkB)YsC|-2-%O7|M%iYC|Y}vb&!gLUMyijv;fy z({f*$)G$=nyhByrqEWj|WZ7f%VQ0NXs56mHHFUvC>$Qe1y6G77E=GvbTt`Fpq$>4$ zXz8AaSleDzMU%9^%1*~*Fk%ccYots=tE~LZ*WjJpk=f2BP9E*v(@VD%u|;%s&mb>0 zc`ojyk$WS27$pdE#Yo|MyVJbAp1LG9b7=A2ZeG(7tKCO`-aAmYNfTb!`-JX1Vt=H7 zeNX6&a6~nw@5{tx40?P&ZQPfkt3@=AuI-!PWyAz&IzSow$NR836xWEMP4hnrp~L$h z_p_qfMo4!;`aS&A$)0S8TBb`e#3*&XhNu*SCD{-%++ZAT@J{VGUK6Ca1pFhJ9`nnJ z>Eh}Q)|c!}JOwfgY%MTZ9ArsuJS$|0khy#ao?V&-II@bj{*Jyzp|8EsEtt}dHKONF)2oe(OEnYTA<~7r_g9Gigh~CGU0-y!vwI(F) zy2;K%cGFFE6EdfpOv1v`)=riHeL;}5LRQ3T$Tk>PE2)N%@%N?|TjVVJ>9IqRUfMF(NEwGxBUeKj z^0w$wL+-K;%e_|X$~?7c(Buds7Oy7k7pV|41D7dt4c;RTNmeBL zB5!O94QxvFT7>AfLASB?v7AH)06%0BbtOwCY%*UU>;IbJ zj#A{|NG~g*TaVU_KAfqmi~YERlFYs=v%rqTEU+)hEV$C_%QXwG$#O-caT?Y_A}u~; zk>8|^rzVHTu;GG$nXLu3S+W2JYGEsxPv-=j&*CYJXDw`^#iyecsSmw-`Z4)p-SN|B zf))J{+St}#(SJZE+M=QTr?&lyrJ5S9rpfC_`6^YxB}&Fusd6P%eH9|t(7RvV4t2ku z^ns<~u4c#A{X^Zaein%A%5wVY>;4L^aQZm=%Xev;MhTIxI;*rZ+Vf;qCENG1qMO_PA1LW))ZR|x(WTTpe3pDkX zNp};u+7-Utg3-kE*3RYmZ*hDJ`rLeD`~x1A^Zw?C34{cOYl?!R|Ma zL3nqC{^3%sDBxOf(~!XmB#5pz2u0&~0jW^%T@8JW-oI^a9au-UruvJVOi`=_h0`AG=?T z_Mx}$m}2uSyn6RPGL%5hO2w3MZKF6yTUaUi7|C}{@jrvZdU=yuFPpRprh&w}TE#oJ6(cTKuh*~LAlN<;T&qQBb#={X`sS`FeLixTy@juE zLoW+^%SEXeH(TBj{N~l1h|09^8IAhJWDdhB`g`L#k&2L;DRK+f@G^}Yq#}C%8~zE_|%U94bfqN`1Ik>Qgg1R37NFNu)Q`RE5fed|dm%`47*A%2rt(SQ8p1 zNBg|V3&p)zGdfI8ReUvkx6j^V!`$xXcjnvsTWhbq_S%oL z&pF(+y6m>PRL96AHL=4yOnH))Of~ZpJRaux)Q4-{iSu0CpO+T*-~LUU9NxN<7oE|p zaNbO@%C>-nj6QqIt-i;KLcOD9^Y;9-qhY_%b!Ca{LeKP=TFO-=X$Ue&xQ5~yCdd&$ z=D~e#D>W_vn&sygYE{p>sp|@;U-Cbl&bhsp<99MLzi3) zx?a5mr`zW(Nxhg7}D zrOck3*IPKR6Yj;M9j4zY^bZSO_29g1*jZuPFH~TH_UO{6K45 zFXf3<8z36*PnTfuEfKtSr{MXJpSQuo=+7M2OVyO<9q(sl6Bp^4E60iS4{w9fBswwA z-U%+0_R&UIxar3&U>bTG6nzdG+k(`O{! z6QiFZ<`>&sSZWczRXfGgLgo5?kJp!Tt#l4jn&^Il(~w^gZBKS;I}huK&ECVJOD18b z2g0T86|2e9FUs?vh+ax1jqr;y&KJIhS-5(vs8vi0{o*};7U7dDw8Jl|biXKe3YX9y zElq+;tO@HXUTze8CWeghg-%_VBlt2WJ8i-lt8m7?Bai0M?;*9-(9~X0v)#mK)H?+- zT=?g_olO$!qh5@vQTX@12yvd1e}AJ(y$qfq_XmI!|ER$;#O{#iG-VbFX9`wwtNVoU zFMVmMf1Giqh<8B+=ie3LX4>cUwy{ z{ps~ScN!W)4!Y8iK0_Od9tf6uJTrSiU8k2E*6=~(5SNAvF`;s459uRx9#ca~!4)un zKE}*VIwrUx<9sxvlfDw=;$T*Gk-kTnB^iG!ge(l@h;z3w)IBtg%X>&~3pp#7e6bBf z=q~*vxKlyfp297|Rr*yBMX@W<6-9DuSTkTCl)JMs|9zr{yBX>{c+D z7Ni@DkJv@P-44>1=`Bc?I!MntNaxeBbc38jm(w%kNi-A!|uf|%j&WK1(^o&E8csWgJvF$&q5EgyyRh| z%Z`_qQF3;?k)6uysm#IFD0&Gxv+2WZgYoZn1>gn;or!b-(%}x$dI#xf^3E|BpK_2M zc94#sQ8@-VohIeP%Neu`zyF|}IkV&!C@?pJ7LWC!dAX6e_gZod@&bAd(V#qoJdVcXWzd`Byc*ujo8wCx^73~S1cbRyGFbxM5^*{?Q4(Bw+4Px9 zB&%pDziHdkp{i!9uX(nDa%JFmGZ`dBn##Y;vFO?oP_lSm0NC{3bH(9I(Gqx)iOO$6 z&-Q{a(U+U}p_>T{H_^aM9Q%%$DD^e}8&e349q*?34%e(_nwvCDUvn!{v;=NuBHoy% zXlw^Jv9z0sYHotHX`3xflyk)q_Z3T7&z|I(3z+6`p;^E+%kOJ4MQ^T{%M^Wu;xO)2 zAro=0ibZfjxrzNanEVmNr=nRWymJP?#MbXrqZaQj7Jp0Nj6ZA){+_CqhL(Q7>Xs{} zWf+uQOsO)^)Xm)Xc+FfBz?LpNV)uI}x^+|Z;I6M_ilLff(R?T=-IR7kY1Uq5N_Q`* z>H}tLQ5v)cb<@g^)wIR~Y`5Df+dN2#yhMx4eWL47F*SeEL{s^H4zR^-T6#Umb_<4b zm)-C+Uv*)A>DErCCUZZD32%wc_~= z6O)Zir5=q0T%?Luqk0u-G@G)VK7WBed9{CRa-49-_QAJsCWbk)1g&IN_IC8=(W#_= zZIstIW<;}^e37QS_K>n@3Z*XZLtzy@wC^>qlyewmt#h^`uyJ)Wtoim!!B8ic5420R zL2`hd@omd4bno-Q+1l;SaYL!g{{6B`Bx7ecFuF>8UePXQs|- zo*U=ek8i_hLLMZP(dip7eISfA(tKW3=lcF+b?nWzlj+3rc%?UMB-*w3Nd&x|QkI8M zW_j<@eVDMk%^@&ywU^53_e(>^ErGMO$(%d`8wgwbk3(T@bx!#YwzKC{bxdN%)sElc zrX~3Z;*eC!)s(jwjAuSBm^_ywW|TTtz4In434 zD|H^4hhY`Lqbu%5c`{QPrYW%?Z@e$~>-|Op(Wuj4dOn6Yrz+zfMfYRLR^e4z24A?h z>!E)2rQcXD0!M4BBe^FY)L3s%G0`);gZ)@bSnlYh?J4lk9tjFQToAE&k7=7U?Z9vz zwq+6APz4k9w|DKfZ(n-8@^PNcOtj&)&C< zU(s)`hsE3h!B#95tGlW4F+K12{IAf9%IDop%YG>uhzaq;T3v|8WYkU@Pe)hGcS}WW+ng_HM0N6@WR{Q7DnFvXwt8+g zI(|WX@s~H}Xz^FcF zRCU^JHZE8r&DAiQ$!&}Yfpv^w)*0GVGg3(!N4_hA>DL-RMIDRm@X=@b+M|?x+S$fJ z$lzLWA8un26s{exFFdUmmAaS4Qu)e}N(QsW413XymEomxQPWm_%F&>2zcRQ7dx7EH z?2p2=9Z)x&gV8R9s?O`l4PcdN|RF-lw1jHxYM|3TwCdT!!Da610Tj zKA25|Rz2af1(c?PRq=ZpZCI5=0ZTsgJ%L@~{zf&on%Y+Nm9yxlRegG9ArRV>-*cP- z-xv(m^v3X{IS4dwY67Zi!-=iWo$q_ibJ?)^v9Z9A;K79r>!K6X_{Ki@7(G{)Et_b6 zU8eqXIQGY#;$NSWVRg9NN)N3rz)^1P>U6Kj`>ot+rR%GWK?Z|n(;u%un9ZPL7>_Ns z@Ky?4(=X~UYjElH7%Z3|?%V6Fs+w9>8YB6dzt?X3y4G}hd`bvd069fz&~`gC?V0BR(?yX3AHh--saC~=-Rn{cY`%w zzjoukF8Q23TsuZSO1IZW;Wv0)Y>Tx2eZN@DY z*aa*B=C`QoCSV8fFtG8Es=6SE0iUYsNMI4L2pIVp8~~mM2Dq2P@L>pWgDN_rs;7Zz zES~6b7iK{bumh_%4UgnW*c`S3Yk?iWH0($*zNiNr3ETwC1G-=%TnwB8jKsrl5pX!r z49o%60t;kp`U9f+j1qJ}G10#WwCmaF>0Mmdmz;kgaRYhkJ8CC|i0VBUwRU0rLSSsQ1+KfyPF!CGp0N4er0yg4qb{N;!fIUA&+N3wp6#I`u~(MUap}RciE2+cJ4r>jOysxc!QLZ3QdLY0Ev4YM5!djK zXu_V+x?0TI^)!C3f$H}JDbjX2x@WL5a6A3JC(BrX863$fnSAt*`M66d$hKg)m(c8w zAJG-Y*2q!&hUl7*YolW1x{$j|AMVR`O+x@CAE4j&W$9{>-A%dsr@3|^ z7h|Q5_D|L2V@0ec?*kd7EWT`=496yDj~e54gG&O338p2+wSr4<(rX7d5S+bpOs@-E zjFX-_TWjDj&RSx6A#PakVNQw(Pz(WQe^bR2)4(|!oGc7FI{h>_XM1JBo@2wc;MlIO zvwvD*jcf)P;NT3KZB5|x;9`+y6QckVBNExu;A4)_H`WN(Uy&_5M#{kmS9Y#Fe2fMh zj2fGVY{+p{?Jp`$M@43E9{8j`;mg41IPpo)Uk!fFaawD_gEn%I>_0d-;={`ZP z_Q>`LTS}jO67Fh)JhF{$elox{2pdUb8})4-+@CE9w(rct$$_mwDch%AR^IjWaZl~Z ztQJD%MN^uGMQlaRic^WRRt&TbL)O(qJDQ_hyO1q8Ko^_Sbt%|(wo+_MAJ+opT2E3| z%S_i6WLF=ek6L=Wwj+D}6di3zcV#D+p(fA+ZV2 z1TF#G0~&(?2DX9A`IJ6B6y^FWvSpt(Tsf4j!wZ+%hQ!a^lvMWek|k^uT4FCNS+bYe z%Tbo>%VW1F^mbM)4E7vw0IesEgDLF)IJK~hqopiJ#9@g)5>{kj_(#MxGOO72W$GPQly$0k$~o+f!__ zlnpiXv2CVOSVh5CZw{^&FU4_?(b5^LY*y3xrFZ~NWsJAt>&}la$c421N5kNDr)I}t zR%y-Fa$`RVqh`T}t)P29#wl%Z=UTdwP({yOi&Lzx&^y--B#J89EJHO59Ac)Nzm{wh ze0vqGygoC_`Sais9M1miYtjecnYk3|K z>E|1U(mOa`vqtKl;YQvP#)e_uFbmEfFlK{i`pzE#-VplEUtc~2&pzlme}=lo^`}am zq8IjEvo9WDSOs@6nD+Uc0A6#*X`Ci#`v3j0=$~}yra^v>{g&<*bvs|@z0>weWL5B5 zXT*o}iK6ol;t7wn6-J!+UhuO7@BFo0f83va?Yo7 zkYtiO4T%H8c=MerIDJ@1r-Ns;3M)B*XJjpvvRcNs!-Vu@&K~3-ououaJ0bnE@b#kE zorcWe;k<79d|qk2s9Ox4)pGv+_b>4HaxEp?;EK3mXlWN6>@;|s64H6Jz0-dXt6v}n z%|4j15xl+5#k}78qP~g3e>Tj10#a71&}pd4L@mAOKbq0fM}jXCa~MS}-4=G7SAjoW z`q_{ef!$Y&NHy2Ca*!s2XI~%n=Q&{#d?Bl4tbmk_fxe8>TNRF*$?ujy_bHRI|AGj; zDy%zyarVPaUDFs5j~r`%gXpFG81fX;0N?&1w~TiGfmG3KW@~FEL zByW`4>ed)#d@dK;xE=HAzGk$2x3}ZcI%6>CT6Wh#vSUcy6wsdav7D}tty>u^5B10! zz{`1cUj)m;JnT1x<-7d)$R=4%uA3Sn$9t^fN=fVLR))yw%8|gjZ$jiazyJD&ojPME pn$FuTYziE>YYIN_DRM&H*Zt7OhFe^`tIilE50f9O8y_Y||370tVr2jT diff --git a/src/main/java/org/apache/sysds/cujava/driver/CuJavaDriver.java b/src/main/java/org/apache/sysds/cujava/driver/CuJavaDriver.java index ffa4cfd84c6..fcc495df005 100644 --- a/src/main/java/org/apache/sysds/cujava/driver/CuJavaDriver.java +++ b/src/main/java/org/apache/sysds/cujava/driver/CuJavaDriver.java @@ -21,10 +21,11 @@ import org.apache.sysds.cujava.CuJavaLibLoader; import org.apache.sysds.cujava.CudaException; +import org.apache.sysds.cujava.Pointer; public class CuJavaDriver { - private static boolean exceptionsEnabled = true; + private static boolean exceptionsEnabled = false; private static final String LIB_BASE = "cujava_driver"; @@ -48,4 +49,98 @@ public static int cuCtxCreate(CUcontext pctx, int flags, CUdevice dev) { } private static native int cuCtxCreateNative(CUcontext pctx, int flags, CUdevice dev); + + public static int cuDeviceGet(CUdevice device, int ordinal) { + return checkCudaResult(cuDeviceGetNative(device, ordinal)); + } + + private static native int cuDeviceGetNative(CUdevice device, int ordinal); + + public static int cuDeviceGetCount(int count[]) { + return checkCudaResult(cuDeviceGetCountNative(count)); + } + + private static native int cuDeviceGetCountNative(int count[]); + + public static int cuInit(int flags) { + return checkCudaResult(cuInitNative(flags)); + } + + private static native int cuInitNative(int flags); + + public static int cuLaunchKernel(CUfunction f, int gridDimX, int gridDimY, int gridDimZ, int blockDimX, + int blockDimY, int blockDimZ, int sharedMemBytes, CUstream hStream, Pointer kernelParams, Pointer extra) { + return checkCudaResult( + cuLaunchKernelNative(f, gridDimX, gridDimY, gridDimZ, blockDimX, blockDimY, blockDimZ, sharedMemBytes, + hStream, kernelParams, extra)); + } + + private static native int cuLaunchKernelNative(CUfunction f, int gridDimX, int gridDimY, int gridDimZ, + int blockDimX, int blockDimY, int blockDimZ, int sharedMemBytes, CUstream hStream, Pointer kernelParams, + Pointer extra); + + public static int cuModuleGetFunction(CUfunction hfunc, CUmodule hmod, String name) { + return checkCudaResult(cuModuleGetFunctionNative(hfunc, hmod, name)); + } + + private static native int cuModuleGetFunctionNative(CUfunction hfunc, CUmodule hmod, String name); + + public static int cuModuleLoadDataEx(CUmodule phMod, Pointer p, int numOptions, int options[], + Pointer optionValues) { + if(numOptions == 0) { + options = (options != null) ? options : new int[0]; + optionValues = (optionValues != null) ? optionValues : Pointer.to(new int[0]); + } + return checkCudaResult(cuModuleLoadDataExNative(phMod, p, numOptions, options, optionValues)); + } + + private static native int cuModuleLoadDataExNative(CUmodule phMod, Pointer p, int numOptions, int options[], + Pointer optionValues); + + public static void setExceptionsEnabled(boolean enabled) { + exceptionsEnabled = enabled; + } + + public static int cuMemAlloc(CUdeviceptr dptr, long bytesize) { + return checkCudaResult(cuMemAllocNative(dptr, bytesize)); + } + + private static native int cuMemAllocNative(CUdeviceptr dptr, long bytesize); + + public static int cuModuleUnload(CUmodule hmod) { + return checkCudaResult(cuModuleUnloadNative(hmod)); + } + + private static native int cuModuleUnloadNative(CUmodule hmod); + + public static int cuCtxDestroy(CUcontext ctx) { + return checkCudaResult(cuCtxDestroyNative(ctx)); + } + + private static native int cuCtxDestroyNative(CUcontext ctx); + + public static int cuMemFree(CUdeviceptr dptr) { + return checkCudaResult(cuMemFreeNative(dptr)); + } + + private static native int cuMemFreeNative(CUdeviceptr dptr); + + + public static int cuMemcpyDtoH(Pointer dstHost, CUdeviceptr srcDevice, long ByteCount) { + return checkCudaResult(cuMemcpyDtoHNative(dstHost, srcDevice, ByteCount)); + } + + private static native int cuMemcpyDtoHNative(Pointer dstHost, CUdeviceptr srcDevice, long ByteCount); + + public static int cuCtxSynchronize() { + return checkCudaResult(cuCtxSynchronizeNative()); + } + + private static native int cuCtxSynchronizeNative(); + + public static int cuDeviceGetAttribute(int pi[], int attrib, CUdevice dev) { + return checkCudaResult(cuDeviceGetAttributeNative(pi, attrib, dev)); + } + + private static native int cuDeviceGetAttributeNative(int pi[], int attrib, CUdevice dev); } diff --git a/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java b/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java index eb5bf5feb64..24f7246a943 100644 --- a/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java +++ b/src/main/java/org/apache/sysds/cujava/runtime/CuJava.java @@ -25,7 +25,7 @@ public class CuJava { - private static boolean exceptionsEnabled = true; + private static boolean exceptionsEnabled = false; private static final String LIB_BASE = "cujava_runtime"; From 76b6145fab6bb6c3fc5f89ae22c49d4c9204a75b Mon Sep 17 00:00:00 2001 From: ReneEnjilian Date: Thu, 28 Aug 2025 21:58:01 +0200 Subject: [PATCH 47/57] implement java side and strcuture for cusparse --- src/main/cpp/jni/build/CMakeCache.txt | 661 +++++++++++++++ .../CMakeFiles/3.22.1/CMakeCXXCompiler.cmake | 83 ++ .../3.22.1/CMakeDetermineCompilerABI_CXX.bin | Bin 0 -> 15992 bytes .../build/CMakeFiles/3.22.1/CMakeSystem.cmake | 15 + .../CompilerIdCXX/CMakeCXXCompilerId.cpp | 791 ++++++++++++++++++ .../CMakeFiles/3.22.1/CompilerIdCXX/a.out | Bin 0 -> 16096 bytes .../CMakeDirectoryInformation.cmake | 16 + .../cpp/jni/build/CMakeFiles/CMakeOutput.log | 278 ++++++ .../cpp/jni/build/CMakeFiles/Makefile.cmake | 61 ++ src/main/cpp/jni/build/CMakeFiles/Makefile2 | 215 +++++ .../build/CMakeFiles/TargetDirectories.txt | 11 + .../jni/build/CMakeFiles/cmake.check_cache | 1 + .../cpp/jni/build/CMakeFiles/progress.marks | 1 + src/main/cpp/jni/build/Makefile | 182 ++++ src/main/cpp/jni/build/cmake_install.cmake | 69 ++ .../CMakeDirectoryInformation.cmake | 16 + .../CuJavaCommonJNI.dir/DependInfo.cmake | 21 + .../CMakeFiles/CuJavaCommonJNI.dir/build.make | 143 ++++ .../CuJavaCommonJNI.dir/cmake_clean.cmake | 15 + .../cmake_clean_target.cmake | 3 + .../compiler_depend.internal | 131 +++ .../CuJavaCommonJNI.dir/compiler_depend.make | 226 +++++ .../CuJavaCommonJNI.dir/compiler_depend.ts | 2 + .../cujava_jni_utils.cpp.o | Bin 0 -> 8864 bytes .../cujava_jni_utils.cpp.o.d | 38 + .../CuJavaCommonJNI.dir/cujava_logger.cpp.o | Bin 0 -> 2056 bytes .../CuJavaCommonJNI.dir/cujava_logger.cpp.o.d | 34 + .../cujava_pointer_utils.cpp.o | Bin 0 -> 44536 bytes .../cujava_pointer_utils.cpp.o.d | 43 + .../CuJavaCommonJNI.dir/depend.make | 2 + .../CMakeFiles/CuJavaCommonJNI.dir/flags.make | 10 + .../CMakeFiles/CuJavaCommonJNI.dir/link.txt | 2 + .../CuJavaCommonJNI.dir/progress.make | 5 + .../build/common/CMakeFiles/progress.marks | 1 + src/main/cpp/jni/build/common/Makefile | 236 ++++++ .../cpp/jni/build/common/cmake_install.cmake | 44 + .../CMakeDirectoryInformation.cmake | 16 + .../CuJavaDriver.dir/DependInfo.cmake | 19 + .../CMakeFiles/CuJavaDriver.dir/build.make | 110 +++ .../CuJavaDriver.dir/cmake_clean.cmake | 11 + .../CuJavaDriver.dir/compiler_depend.internal | 92 ++ .../CuJavaDriver.dir/compiler_depend.make | 261 ++++++ .../CuJavaDriver.dir/compiler_depend.ts | 2 + .../CuJavaDriver.dir/cujava_driver.cpp.o | Bin 0 -> 14832 bytes .../CuJavaDriver.dir/cujava_driver.cpp.o.d | 79 ++ .../CMakeFiles/CuJavaDriver.dir/depend.make | 2 + .../CMakeFiles/CuJavaDriver.dir/flags.make | 10 + .../CMakeFiles/CuJavaDriver.dir/link.txt | 1 + .../CMakeFiles/CuJavaDriver.dir/progress.make | 3 + .../build/driver/CMakeFiles/progress.marks | 1 + src/main/cpp/jni/build/driver/Makefile | 182 ++++ .../cpp/jni/build/driver/cmake_install.cmake | 44 + .../CMakeDirectoryInformation.cmake | 16 + .../CuJavaRuntime.dir/DependInfo.cmake | 20 + .../CMakeFiles/CuJavaRuntime.dir/build.make | 118 +++ .../CuJavaRuntime.dir/cmake_clean.cmake | 11 + .../CuJavaRuntime.dir/compiler_depend.make | 2 + .../CuJavaRuntime.dir/compiler_depend.ts | 2 + .../CuJavaRuntime.dir/cujava_runtime.cpp.o | Bin 0 -> 32832 bytes .../CuJavaRuntime.dir/cujava_runtime.cpp.o.d | 65 ++ .../CMakeFiles/CuJavaRuntime.dir/depend.make | 2 + .../CMakeFiles/CuJavaRuntime.dir/flags.make | 10 + .../CMakeFiles/CuJavaRuntime.dir/link.txt | 1 + .../CuJavaRuntime.dir/progress.make | 3 + .../build/runtime/CMakeFiles/progress.marks | 1 + src/main/cpp/jni/build/runtime/Makefile | 182 ++++ .../cpp/jni/build/runtime/cmake_install.cmake | 44 + src/main/cpp/jni/driver/cujava_driver.cpp | 24 +- src/main/cpp/lib/libcujava_driver.so | Bin 26896 -> 26896 bytes .../sysds/cujava/cusparse/CuJavaCusparse.java | 23 + .../sysds/cujava/cusparse/cusparseAction.java | 32 + .../cusparse/cusparseConstDnMatDescr.java | 33 + .../cusparse/cusparseConstDnVecDescr.java | 33 + .../cujava/cusparse/cusparseCsr2CscAlg.java | 30 + .../cusparse/cusparseDenseToSparseAlg.java | 29 + .../cujava/cusparse/cusparseDiagType.java | 31 + .../cujava/cusparse/cusparseDirection.java | 31 + .../cujava/cusparse/cusparseDnMatDescr.java | 33 + .../cujava/cusparse/cusparseDnVecDescr.java | 33 + .../cujava/cusparse/cusparseFillMode.java | 31 + .../sysds/cujava/cusparse/cusparseHandle.java | 29 + .../cujava/cusparse/cusparseIndexBase.java | 31 + .../cujava/cusparse/cusparseIndexType.java | 33 + .../cujava/cusparse/cusparseMatDescr.java | 29 + .../cujava/cusparse/cusparseMatrixType.java | 35 + .../cujava/cusparse/cusparseOperation.java | 33 + .../sysds/cujava/cusparse/cusparseOrder.java | 31 + .../cujava/cusparse/cusparsePointerMode.java | 31 + .../cujava/cusparse/cusparseSpGEMMAlg.java | 39 + .../cujava/cusparse/cusparseSpGEMMDescr.java | 29 + .../cujava/cusparse/cusparseSpMMAlg.java | 45 + .../cujava/cusparse/cusparseSpMVAlg.java | 38 + .../cujava/cusparse/cusparseSpMatDescr.java | 29 + .../cusparse/cusparseSparseToDenseAlg.java | 29 + .../sysds/cujava/cusparse/cusparseStatus.java | 71 ++ 95 files changed, 5549 insertions(+), 12 deletions(-) create mode 100644 src/main/cpp/jni/build/CMakeCache.txt create mode 100644 src/main/cpp/jni/build/CMakeFiles/3.22.1/CMakeCXXCompiler.cmake create mode 100755 src/main/cpp/jni/build/CMakeFiles/3.22.1/CMakeDetermineCompilerABI_CXX.bin create mode 100644 src/main/cpp/jni/build/CMakeFiles/3.22.1/CMakeSystem.cmake create mode 100644 src/main/cpp/jni/build/CMakeFiles/3.22.1/CompilerIdCXX/CMakeCXXCompilerId.cpp create mode 100755 src/main/cpp/jni/build/CMakeFiles/3.22.1/CompilerIdCXX/a.out create mode 100644 src/main/cpp/jni/build/CMakeFiles/CMakeDirectoryInformation.cmake create mode 100644 src/main/cpp/jni/build/CMakeFiles/CMakeOutput.log create mode 100644 src/main/cpp/jni/build/CMakeFiles/Makefile.cmake create mode 100644 src/main/cpp/jni/build/CMakeFiles/Makefile2 create mode 100644 src/main/cpp/jni/build/CMakeFiles/TargetDirectories.txt create mode 100644 src/main/cpp/jni/build/CMakeFiles/cmake.check_cache create mode 100644 src/main/cpp/jni/build/CMakeFiles/progress.marks create mode 100644 src/main/cpp/jni/build/Makefile create mode 100644 src/main/cpp/jni/build/cmake_install.cmake create mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CMakeDirectoryInformation.cmake create mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/DependInfo.cmake create mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/build.make create mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cmake_clean.cmake create mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cmake_clean_target.cmake create mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.internal create mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.make create mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.ts create mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o create mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o.d create mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o create mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o.d create mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o create mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o.d create mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/depend.make create mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/flags.make create mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/link.txt create mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/progress.make create mode 100644 src/main/cpp/jni/build/common/CMakeFiles/progress.marks create mode 100644 src/main/cpp/jni/build/common/Makefile create mode 100644 src/main/cpp/jni/build/common/cmake_install.cmake create mode 100644 src/main/cpp/jni/build/driver/CMakeFiles/CMakeDirectoryInformation.cmake create mode 100644 src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/DependInfo.cmake create mode 100644 src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/build.make create mode 100644 src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/cmake_clean.cmake create mode 100644 src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/compiler_depend.internal create mode 100644 src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/compiler_depend.make create mode 100644 src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/compiler_depend.ts create mode 100644 src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/cujava_driver.cpp.o create mode 100644 src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/cujava_driver.cpp.o.d create mode 100644 src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/depend.make create mode 100644 src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/flags.make create mode 100644 src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/link.txt create mode 100644 src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/progress.make create mode 100644 src/main/cpp/jni/build/driver/CMakeFiles/progress.marks create mode 100644 src/main/cpp/jni/build/driver/Makefile create mode 100644 src/main/cpp/jni/build/driver/cmake_install.cmake create mode 100644 src/main/cpp/jni/build/runtime/CMakeFiles/CMakeDirectoryInformation.cmake create mode 100644 src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/DependInfo.cmake create mode 100644 src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/build.make create mode 100644 src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/cmake_clean.cmake create mode 100644 src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/compiler_depend.make create mode 100644 src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/compiler_depend.ts create mode 100644 src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.o create mode 100644 src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.o.d create mode 100644 src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/depend.make create mode 100644 src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/flags.make create mode 100644 src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/link.txt create mode 100644 src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/progress.make create mode 100644 src/main/cpp/jni/build/runtime/CMakeFiles/progress.marks create mode 100644 src/main/cpp/jni/build/runtime/Makefile create mode 100644 src/main/cpp/jni/build/runtime/cmake_install.cmake create mode 100644 src/main/java/org/apache/sysds/cujava/cusparse/CuJavaCusparse.java create mode 100644 src/main/java/org/apache/sysds/cujava/cusparse/cusparseAction.java create mode 100644 src/main/java/org/apache/sysds/cujava/cusparse/cusparseConstDnMatDescr.java create mode 100644 src/main/java/org/apache/sysds/cujava/cusparse/cusparseConstDnVecDescr.java create mode 100644 src/main/java/org/apache/sysds/cujava/cusparse/cusparseCsr2CscAlg.java create mode 100644 src/main/java/org/apache/sysds/cujava/cusparse/cusparseDenseToSparseAlg.java create mode 100644 src/main/java/org/apache/sysds/cujava/cusparse/cusparseDiagType.java create mode 100644 src/main/java/org/apache/sysds/cujava/cusparse/cusparseDirection.java create mode 100644 src/main/java/org/apache/sysds/cujava/cusparse/cusparseDnMatDescr.java create mode 100644 src/main/java/org/apache/sysds/cujava/cusparse/cusparseDnVecDescr.java create mode 100644 src/main/java/org/apache/sysds/cujava/cusparse/cusparseFillMode.java create mode 100644 src/main/java/org/apache/sysds/cujava/cusparse/cusparseHandle.java create mode 100644 src/main/java/org/apache/sysds/cujava/cusparse/cusparseIndexBase.java create mode 100644 src/main/java/org/apache/sysds/cujava/cusparse/cusparseIndexType.java create mode 100644 src/main/java/org/apache/sysds/cujava/cusparse/cusparseMatDescr.java create mode 100644 src/main/java/org/apache/sysds/cujava/cusparse/cusparseMatrixType.java create mode 100644 src/main/java/org/apache/sysds/cujava/cusparse/cusparseOperation.java create mode 100644 src/main/java/org/apache/sysds/cujava/cusparse/cusparseOrder.java create mode 100644 src/main/java/org/apache/sysds/cujava/cusparse/cusparsePointerMode.java create mode 100644 src/main/java/org/apache/sysds/cujava/cusparse/cusparseSpGEMMAlg.java create mode 100644 src/main/java/org/apache/sysds/cujava/cusparse/cusparseSpGEMMDescr.java create mode 100644 src/main/java/org/apache/sysds/cujava/cusparse/cusparseSpMMAlg.java create mode 100644 src/main/java/org/apache/sysds/cujava/cusparse/cusparseSpMVAlg.java create mode 100644 src/main/java/org/apache/sysds/cujava/cusparse/cusparseSpMatDescr.java create mode 100644 src/main/java/org/apache/sysds/cujava/cusparse/cusparseSparseToDenseAlg.java create mode 100644 src/main/java/org/apache/sysds/cujava/cusparse/cusparseStatus.java diff --git a/src/main/cpp/jni/build/CMakeCache.txt b/src/main/cpp/jni/build/CMakeCache.txt new file mode 100644 index 00000000000..7881fdd031a --- /dev/null +++ b/src/main/cpp/jni/build/CMakeCache.txt @@ -0,0 +1,661 @@ +# This is the CMakeCache file. +# For build in directory: /home/rene/projects/systemds/src/main/cpp/jni/build +# It was generated by CMake: /usr/bin/cmake +# You can edit this file to change values found and used by cmake. +# If you do not want to change any of the values, simply exit the editor. +# If you do want to change a value, simply edit, save, and exit the editor. +# The syntax for the file is as follows: +# KEY:TYPE=VALUE +# KEY is the name of a variable in the cache. +# TYPE is a hint to GUIs for the type of VALUE, DO NOT EDIT TYPE!. +# VALUE is the current value for the KEY. + +######################## +# EXTERNAL cache entries +######################## + +//Path to a program. +CMAKE_ADDR2LINE:FILEPATH=/usr/bin/addr2line + +//Path to a program. +CMAKE_AR:FILEPATH=/usr/bin/ar + +//Choose the type of build, options are: None Debug Release RelWithDebInfo +// MinSizeRel ... +CMAKE_BUILD_TYPE:STRING=Release + +//Enable/Disable color output during build. +CMAKE_COLOR_MAKEFILE:BOOL=ON + +//CXX compiler +CMAKE_CXX_COMPILER:FILEPATH=/usr/bin/c++ + +//A wrapper around 'ar' adding the appropriate '--plugin' option +// for the GCC compiler +CMAKE_CXX_COMPILER_AR:FILEPATH=/usr/bin/gcc-ar-12 + +//A wrapper around 'ranlib' adding the appropriate '--plugin' option +// for the GCC compiler +CMAKE_CXX_COMPILER_RANLIB:FILEPATH=/usr/bin/gcc-ranlib-12 + +//Flags used by the CXX compiler during all build types. +CMAKE_CXX_FLAGS:STRING= + +//Flags used by the CXX compiler during DEBUG builds. +CMAKE_CXX_FLAGS_DEBUG:STRING=-g + +//Flags used by the CXX compiler during MINSIZEREL builds. +CMAKE_CXX_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG + +//Flags used by the CXX compiler during RELEASE builds. +CMAKE_CXX_FLAGS_RELEASE:STRING=-O3 -DNDEBUG + +//Flags used by the CXX compiler during RELWITHDEBINFO builds. +CMAKE_CXX_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG + +//Path to a program. +CMAKE_DLLTOOL:FILEPATH=CMAKE_DLLTOOL-NOTFOUND + +//Flags used by the linker during all build types. +CMAKE_EXE_LINKER_FLAGS:STRING= + +//Flags used by the linker during DEBUG builds. +CMAKE_EXE_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during MINSIZEREL builds. +CMAKE_EXE_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during RELEASE builds. +CMAKE_EXE_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during RELWITHDEBINFO builds. +CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//Enable/Disable output of compile commands during generation. +CMAKE_EXPORT_COMPILE_COMMANDS:BOOL= + +//Install path prefix, prepended onto install directories. +CMAKE_INSTALL_PREFIX:PATH=/usr/local + +//Path to a program. +CMAKE_LINKER:FILEPATH=/usr/bin/ld + +//Path to a program. +CMAKE_MAKE_PROGRAM:FILEPATH=/usr/bin/gmake + +//Flags used by the linker during the creation of modules during +// all build types. +CMAKE_MODULE_LINKER_FLAGS:STRING= + +//Flags used by the linker during the creation of modules during +// DEBUG builds. +CMAKE_MODULE_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during the creation of modules during +// MINSIZEREL builds. +CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during the creation of modules during +// RELEASE builds. +CMAKE_MODULE_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during the creation of modules during +// RELWITHDEBINFO builds. +CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//Path to a program. +CMAKE_NM:FILEPATH=/usr/bin/nm + +//Path to a program. +CMAKE_OBJCOPY:FILEPATH=/usr/bin/objcopy + +//Path to a program. +CMAKE_OBJDUMP:FILEPATH=/usr/bin/objdump + +//Value Computed by CMake +CMAKE_PROJECT_DESCRIPTION:STATIC= + +//Value Computed by CMake +CMAKE_PROJECT_HOMEPAGE_URL:STATIC= + +//Value Computed by CMake +CMAKE_PROJECT_NAME:STATIC=cujava_jni + +//Path to a program. +CMAKE_RANLIB:FILEPATH=/usr/bin/ranlib + +//Path to a program. +CMAKE_READELF:FILEPATH=/usr/bin/readelf + +//Flags used by the linker during the creation of shared libraries +// during all build types. +CMAKE_SHARED_LINKER_FLAGS:STRING= + +//Flags used by the linker during the creation of shared libraries +// during DEBUG builds. +CMAKE_SHARED_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during the creation of shared libraries +// during MINSIZEREL builds. +CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during the creation of shared libraries +// during RELEASE builds. +CMAKE_SHARED_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during the creation of shared libraries +// during RELWITHDEBINFO builds. +CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//If set, runtime paths are not added when installing shared libraries, +// but are added when building. +CMAKE_SKIP_INSTALL_RPATH:BOOL=NO + +//If set, runtime paths are not added when using shared libraries. +CMAKE_SKIP_RPATH:BOOL=NO + +//Flags used by the linker during the creation of static libraries +// during all build types. +CMAKE_STATIC_LINKER_FLAGS:STRING= + +//Flags used by the linker during the creation of static libraries +// during DEBUG builds. +CMAKE_STATIC_LINKER_FLAGS_DEBUG:STRING= + +//Flags used by the linker during the creation of static libraries +// during MINSIZEREL builds. +CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL:STRING= + +//Flags used by the linker during the creation of static libraries +// during RELEASE builds. +CMAKE_STATIC_LINKER_FLAGS_RELEASE:STRING= + +//Flags used by the linker during the creation of static libraries +// during RELWITHDEBINFO builds. +CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO:STRING= + +//Path to a program. +CMAKE_STRIP:FILEPATH=/usr/bin/strip + +//If this value is on, makefiles will be generated without the +// .SILENT directive, and all commands will be echoed to the console +// during the make. This is useful for debugging only. With Visual +// Studio IDE projects all commands are done without /nologo. +CMAKE_VERBOSE_MAKEFILE:BOOL=FALSE + +CUDAToolkit_BIN_DIR:PATH=/usr/local/cuda-12.6/bin + +//Path to a program. +CUDAToolkit_NVCC_EXECUTABLE:FILEPATH=/usr/local/cuda-12.6/bin/nvcc + +//Path to a library. +CUDAToolkit_rt_LIBRARY:FILEPATH=/usr/lib/x86_64-linux-gnu/librt.a + +//Path to a library. +CUDA_CUDART:FILEPATH=/usr/local/cuda-12.6/lib64/libcudart.so + +//Path to a library. +CUDA_OpenCL_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libOpenCL.so + +//Path to a library. +CUDA_cublasLt_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcublasLt.so + +//Path to a library. +CUDA_cublasLt_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcublasLt_static.a + +//Path to a library. +CUDA_cublas_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcublas.so + +//Path to a library. +CUDA_cublas_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcublas_static.a + +//Path to a library. +CUDA_cuda_driver_LIBRARY:FILEPATH=/usr/lib/x86_64-linux-gnu/libcuda.so + +//Path to a library. +CUDA_cudart_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcudart.so + +//Path to a library. +CUDA_cudart_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcudart_static.a + +//Path to a library. +CUDA_cufft_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcufft.so + +//Path to a library. +CUDA_cufft_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcufft_static.a + +//Path to a library. +CUDA_cufftw_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcufftw.so + +//Path to a library. +CUDA_culibos_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libculibos.a + +//Path to a library. +CUDA_cupti_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcupti.so + +//Path to a library. +CUDA_cupti_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcupti_static.a + +//Path to a library. +CUDA_curand_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcurand.so + +//Path to a library. +CUDA_curand_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcurand_static.a + +//Path to a library. +CUDA_cusolver_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcusolver.so + +//Path to a library. +CUDA_cusolver_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcusolver_static.a + +//Path to a library. +CUDA_cusparse_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcusparse.so + +//Path to a library. +CUDA_cusparse_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcusparse_static.a + +//Path to a library. +CUDA_nppc_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppc.so + +//Path to a library. +CUDA_nppc_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppc_static.a + +//Path to a library. +CUDA_nppial_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppial.so + +//Path to a library. +CUDA_nppial_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppial_static.a + +//Path to a library. +CUDA_nppicc_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppicc.so + +//Path to a library. +CUDA_nppicc_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppicc_static.a + +//Path to a library. +CUDA_nppicom_LIBRARY:FILEPATH=CUDA_nppicom_LIBRARY-NOTFOUND + +//Path to a library. +CUDA_nppicom_static_LIBRARY:FILEPATH=CUDA_nppicom_static_LIBRARY-NOTFOUND + +//Path to a library. +CUDA_nppidei_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppidei.so + +//Path to a library. +CUDA_nppidei_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppidei_static.a + +//Path to a library. +CUDA_nppif_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppif.so + +//Path to a library. +CUDA_nppif_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppif_static.a + +//Path to a library. +CUDA_nppig_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppig.so + +//Path to a library. +CUDA_nppig_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppig_static.a + +//Path to a library. +CUDA_nppim_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppim.so + +//Path to a library. +CUDA_nppim_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppim_static.a + +//Path to a library. +CUDA_nppist_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppist.so + +//Path to a library. +CUDA_nppist_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppist_static.a + +//Path to a library. +CUDA_nppisu_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppisu.so + +//Path to a library. +CUDA_nppisu_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppisu_static.a + +//Path to a library. +CUDA_nppitc_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppitc.so + +//Path to a library. +CUDA_nppitc_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppitc_static.a + +//Path to a library. +CUDA_npps_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnpps.so + +//Path to a library. +CUDA_npps_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnpps_static.a + +//Path to a library. +CUDA_nvToolsExt_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnvToolsExt.so + +//Path to a library. +CUDA_nvgraph_LIBRARY:FILEPATH=CUDA_nvgraph_LIBRARY-NOTFOUND + +//Path to a library. +CUDA_nvgraph_static_LIBRARY:FILEPATH=CUDA_nvgraph_static_LIBRARY-NOTFOUND + +//Path to a library. +CUDA_nvjpeg_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnvjpeg.so + +//Path to a library. +CUDA_nvjpeg_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnvjpeg_static.a + +//Path to a library. +CUDA_nvml_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/stubs/libnvidia-ml.so + +//Path to a library. +CUDA_nvrtc_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnvrtc.so + +//Value Computed by CMake +CuJavaCommonJNI_BINARY_DIR:STATIC=/home/rene/projects/systemds/src/main/cpp/jni/build/common + +//Value Computed by CMake +CuJavaCommonJNI_IS_TOP_LEVEL:STATIC=OFF + +//Value Computed by CMake +CuJavaCommonJNI_SOURCE_DIR:STATIC=/home/rene/projects/systemds/src/main/cpp/jni/common + +//Value Computed by CMake +CuJavaDriver_BINARY_DIR:STATIC=/home/rene/projects/systemds/src/main/cpp/jni/build/driver + +//Value Computed by CMake +CuJavaDriver_IS_TOP_LEVEL:STATIC=OFF + +//Value Computed by CMake +CuJavaDriver_SOURCE_DIR:STATIC=/home/rene/projects/systemds/src/main/cpp/jni/driver + +//Value Computed by CMake +CuJavaRuntime_BINARY_DIR:STATIC=/home/rene/projects/systemds/src/main/cpp/jni/build/runtime + +//Value Computed by CMake +CuJavaRuntime_IS_TOP_LEVEL:STATIC=OFF + +//Value Computed by CMake +CuJavaRuntime_SOURCE_DIR:STATIC=/home/rene/projects/systemds/src/main/cpp/jni/runtime + +//Path to a file. +JAVA_AWT_INCLUDE_PATH:PATH=/usr/lib/jvm/java-11-openjdk-amd64/include + +//Path to a library. +JAVA_AWT_LIBRARY:FILEPATH=/usr/lib/jvm/java-11-openjdk-amd64/lib/libjawt.so + +//Path to a file. +JAVA_INCLUDE_PATH:PATH=/usr/lib/jvm/java-11-openjdk-amd64/include + +//Path to a file. +JAVA_INCLUDE_PATH2:PATH=/usr/lib/jvm/java-11-openjdk-amd64/include/linux + +//Path to a library. +JAVA_JVM_LIBRARY:FILEPATH=/usr/lib/jvm/java-11-openjdk-amd64/lib/server/libjvm.so + +//Value Computed by CMake +cujava_jni_BINARY_DIR:STATIC=/home/rene/projects/systemds/src/main/cpp/jni/build + +//Value Computed by CMake +cujava_jni_IS_TOP_LEVEL:STATIC=ON + +//Value Computed by CMake +cujava_jni_SOURCE_DIR:STATIC=/home/rene/projects/systemds/src/main/cpp/jni + + +######################## +# INTERNAL cache entries +######################## + +//ADVANCED property for variable: CMAKE_ADDR2LINE +CMAKE_ADDR2LINE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_AR +CMAKE_AR-ADVANCED:INTERNAL=1 +//This is the directory where this CMakeCache.txt was created +CMAKE_CACHEFILE_DIR:INTERNAL=/home/rene/projects/systemds/src/main/cpp/jni/build +//Major version of cmake used to create the current loaded cache +CMAKE_CACHE_MAJOR_VERSION:INTERNAL=3 +//Minor version of cmake used to create the current loaded cache +CMAKE_CACHE_MINOR_VERSION:INTERNAL=22 +//Patch version of cmake used to create the current loaded cache +CMAKE_CACHE_PATCH_VERSION:INTERNAL=1 +//ADVANCED property for variable: CMAKE_COLOR_MAKEFILE +CMAKE_COLOR_MAKEFILE-ADVANCED:INTERNAL=1 +//Path to CMake executable. +CMAKE_COMMAND:INTERNAL=/usr/bin/cmake +//Path to cpack program executable. +CMAKE_CPACK_COMMAND:INTERNAL=/usr/bin/cpack +//Path to ctest program executable. +CMAKE_CTEST_COMMAND:INTERNAL=/usr/bin/ctest +//ADVANCED property for variable: CMAKE_CXX_COMPILER +CMAKE_CXX_COMPILER-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_COMPILER_AR +CMAKE_CXX_COMPILER_AR-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_COMPILER_RANLIB +CMAKE_CXX_COMPILER_RANLIB-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS +CMAKE_CXX_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS_DEBUG +CMAKE_CXX_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS_MINSIZEREL +CMAKE_CXX_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELEASE +CMAKE_CXX_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELWITHDEBINFO +CMAKE_CXX_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_DLLTOOL +CMAKE_DLLTOOL-ADVANCED:INTERNAL=1 +//Executable file format +CMAKE_EXECUTABLE_FORMAT:INTERNAL=ELF +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS +CMAKE_EXE_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_DEBUG +CMAKE_EXE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_MINSIZEREL +CMAKE_EXE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELEASE +CMAKE_EXE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_EXPORT_COMPILE_COMMANDS +CMAKE_EXPORT_COMPILE_COMMANDS-ADVANCED:INTERNAL=1 +//Name of external makefile project generator. +CMAKE_EXTRA_GENERATOR:INTERNAL= +//Name of generator. +CMAKE_GENERATOR:INTERNAL=Unix Makefiles +//Generator instance identifier. +CMAKE_GENERATOR_INSTANCE:INTERNAL= +//Name of generator platform. +CMAKE_GENERATOR_PLATFORM:INTERNAL= +//Name of generator toolset. +CMAKE_GENERATOR_TOOLSET:INTERNAL= +//Test CMAKE_HAVE_LIBC_PTHREAD +CMAKE_HAVE_LIBC_PTHREAD:INTERNAL=1 +//Have include pthread.h +CMAKE_HAVE_PTHREAD_H:INTERNAL=1 +//Source directory with the top level CMakeLists.txt file for this +// project +CMAKE_HOME_DIRECTORY:INTERNAL=/home/rene/projects/systemds/src/main/cpp/jni +//Install .so files without execute permission. +CMAKE_INSTALL_SO_NO_EXE:INTERNAL=1 +//ADVANCED property for variable: CMAKE_LINKER +CMAKE_LINKER-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MAKE_PROGRAM +CMAKE_MAKE_PROGRAM-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS +CMAKE_MODULE_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_DEBUG +CMAKE_MODULE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL +CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELEASE +CMAKE_MODULE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_NM +CMAKE_NM-ADVANCED:INTERNAL=1 +//number of local generators +CMAKE_NUMBER_OF_MAKEFILES:INTERNAL=4 +//ADVANCED property for variable: CMAKE_OBJCOPY +CMAKE_OBJCOPY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_OBJDUMP +CMAKE_OBJDUMP-ADVANCED:INTERNAL=1 +//Platform information initialized +CMAKE_PLATFORM_INFO_INITIALIZED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_RANLIB +CMAKE_RANLIB-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_READELF +CMAKE_READELF-ADVANCED:INTERNAL=1 +//Path to CMake installation. +CMAKE_ROOT:INTERNAL=/usr/share/cmake-3.22 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS +CMAKE_SHARED_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_DEBUG +CMAKE_SHARED_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL +CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELEASE +CMAKE_SHARED_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SKIP_INSTALL_RPATH +CMAKE_SKIP_INSTALL_RPATH-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_SKIP_RPATH +CMAKE_SKIP_RPATH-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS +CMAKE_STATIC_LINKER_FLAGS-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_DEBUG +CMAKE_STATIC_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL +CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELEASE +CMAKE_STATIC_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO +CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CMAKE_STRIP +CMAKE_STRIP-ADVANCED:INTERNAL=1 +//uname command +CMAKE_UNAME:INTERNAL=/usr/bin/uname +//ADVANCED property for variable: CMAKE_VERBOSE_MAKEFILE +CMAKE_VERBOSE_MAKEFILE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDAToolkit_NVCC_EXECUTABLE +CUDAToolkit_NVCC_EXECUTABLE-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDAToolkit_rt_LIBRARY +CUDAToolkit_rt_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_CUDART +CUDA_CUDART-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_OpenCL_LIBRARY +CUDA_OpenCL_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_cublasLt_LIBRARY +CUDA_cublasLt_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_cublasLt_static_LIBRARY +CUDA_cublasLt_static_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_cublas_LIBRARY +CUDA_cublas_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_cublas_static_LIBRARY +CUDA_cublas_static_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_cuda_driver_LIBRARY +CUDA_cuda_driver_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_cudart_LIBRARY +CUDA_cudart_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_cudart_static_LIBRARY +CUDA_cudart_static_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_cufft_LIBRARY +CUDA_cufft_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_cufft_static_LIBRARY +CUDA_cufft_static_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_cufftw_LIBRARY +CUDA_cufftw_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_culibos_LIBRARY +CUDA_culibos_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_cupti_LIBRARY +CUDA_cupti_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_cupti_static_LIBRARY +CUDA_cupti_static_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_curand_LIBRARY +CUDA_curand_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_curand_static_LIBRARY +CUDA_curand_static_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_cusolver_LIBRARY +CUDA_cusolver_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_cusolver_static_LIBRARY +CUDA_cusolver_static_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_cusparse_LIBRARY +CUDA_cusparse_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_cusparse_static_LIBRARY +CUDA_cusparse_static_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nppc_LIBRARY +CUDA_nppc_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nppc_static_LIBRARY +CUDA_nppc_static_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nppial_LIBRARY +CUDA_nppial_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nppial_static_LIBRARY +CUDA_nppial_static_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nppicc_LIBRARY +CUDA_nppicc_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nppicc_static_LIBRARY +CUDA_nppicc_static_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nppicom_LIBRARY +CUDA_nppicom_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nppicom_static_LIBRARY +CUDA_nppicom_static_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nppidei_LIBRARY +CUDA_nppidei_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nppidei_static_LIBRARY +CUDA_nppidei_static_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nppif_LIBRARY +CUDA_nppif_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nppif_static_LIBRARY +CUDA_nppif_static_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nppig_LIBRARY +CUDA_nppig_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nppig_static_LIBRARY +CUDA_nppig_static_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nppim_LIBRARY +CUDA_nppim_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nppim_static_LIBRARY +CUDA_nppim_static_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nppist_LIBRARY +CUDA_nppist_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nppist_static_LIBRARY +CUDA_nppist_static_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nppisu_LIBRARY +CUDA_nppisu_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nppisu_static_LIBRARY +CUDA_nppisu_static_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nppitc_LIBRARY +CUDA_nppitc_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nppitc_static_LIBRARY +CUDA_nppitc_static_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_npps_LIBRARY +CUDA_npps_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_npps_static_LIBRARY +CUDA_npps_static_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nvToolsExt_LIBRARY +CUDA_nvToolsExt_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nvgraph_LIBRARY +CUDA_nvgraph_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nvgraph_static_LIBRARY +CUDA_nvgraph_static_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nvjpeg_LIBRARY +CUDA_nvjpeg_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nvjpeg_static_LIBRARY +CUDA_nvjpeg_static_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nvml_LIBRARY +CUDA_nvml_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: CUDA_nvrtc_LIBRARY +CUDA_nvrtc_LIBRARY-ADVANCED:INTERNAL=1 +//Details about finding CUDAToolkit +FIND_PACKAGE_MESSAGE_DETAILS_CUDAToolkit:INTERNAL=[/usr/local/cuda-12.6/include][/usr/local/cuda-12.6/lib64/libcudart.so][/usr/local/cuda-12.6/bin][v12.6.85()] +//Details about finding JNI +FIND_PACKAGE_MESSAGE_DETAILS_JNI:INTERNAL=[/usr/lib/jvm/java-11-openjdk-amd64/lib/libjawt.so][/usr/lib/jvm/java-11-openjdk-amd64/lib/server/libjvm.so][/usr/lib/jvm/java-11-openjdk-amd64/include][/usr/lib/jvm/java-11-openjdk-amd64/include/linux][/usr/lib/jvm/java-11-openjdk-amd64/include][v()] +//Details about finding Threads +FIND_PACKAGE_MESSAGE_DETAILS_Threads:INTERNAL=[TRUE][v()] +//ADVANCED property for variable: JAVA_AWT_INCLUDE_PATH +JAVA_AWT_INCLUDE_PATH-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: JAVA_AWT_LIBRARY +JAVA_AWT_LIBRARY-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: JAVA_INCLUDE_PATH +JAVA_INCLUDE_PATH-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: JAVA_INCLUDE_PATH2 +JAVA_INCLUDE_PATH2-ADVANCED:INTERNAL=1 +//ADVANCED property for variable: JAVA_JVM_LIBRARY +JAVA_JVM_LIBRARY-ADVANCED:INTERNAL=1 + diff --git a/src/main/cpp/jni/build/CMakeFiles/3.22.1/CMakeCXXCompiler.cmake b/src/main/cpp/jni/build/CMakeFiles/3.22.1/CMakeCXXCompiler.cmake new file mode 100644 index 00000000000..08880e71e24 --- /dev/null +++ b/src/main/cpp/jni/build/CMakeFiles/3.22.1/CMakeCXXCompiler.cmake @@ -0,0 +1,83 @@ +set(CMAKE_CXX_COMPILER "/usr/bin/c++") +set(CMAKE_CXX_COMPILER_ARG1 "") +set(CMAKE_CXX_COMPILER_ID "GNU") +set(CMAKE_CXX_COMPILER_VERSION "12.3.0") +set(CMAKE_CXX_COMPILER_VERSION_INTERNAL "") +set(CMAKE_CXX_COMPILER_WRAPPER "") +set(CMAKE_CXX_STANDARD_COMPUTED_DEFAULT "17") +set(CMAKE_CXX_EXTENSIONS_COMPUTED_DEFAULT "ON") +set(CMAKE_CXX_COMPILE_FEATURES "cxx_std_98;cxx_template_template_parameters;cxx_std_11;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates;cxx_std_14;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates;cxx_std_17;cxx_std_20;cxx_std_23") +set(CMAKE_CXX98_COMPILE_FEATURES "cxx_std_98;cxx_template_template_parameters") +set(CMAKE_CXX11_COMPILE_FEATURES "cxx_std_11;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates") +set(CMAKE_CXX14_COMPILE_FEATURES "cxx_std_14;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates") +set(CMAKE_CXX17_COMPILE_FEATURES "cxx_std_17") +set(CMAKE_CXX20_COMPILE_FEATURES "cxx_std_20") +set(CMAKE_CXX23_COMPILE_FEATURES "cxx_std_23") + +set(CMAKE_CXX_PLATFORM_ID "Linux") +set(CMAKE_CXX_SIMULATE_ID "") +set(CMAKE_CXX_COMPILER_FRONTEND_VARIANT "") +set(CMAKE_CXX_SIMULATE_VERSION "") + + + + +set(CMAKE_AR "/usr/bin/ar") +set(CMAKE_CXX_COMPILER_AR "/usr/bin/gcc-ar-12") +set(CMAKE_RANLIB "/usr/bin/ranlib") +set(CMAKE_CXX_COMPILER_RANLIB "/usr/bin/gcc-ranlib-12") +set(CMAKE_LINKER "/usr/bin/ld") +set(CMAKE_MT "") +set(CMAKE_COMPILER_IS_GNUCXX 1) +set(CMAKE_CXX_COMPILER_LOADED 1) +set(CMAKE_CXX_COMPILER_WORKS TRUE) +set(CMAKE_CXX_ABI_COMPILED TRUE) + +set(CMAKE_CXX_COMPILER_ENV_VAR "CXX") + +set(CMAKE_CXX_COMPILER_ID_RUN 1) +set(CMAKE_CXX_SOURCE_FILE_EXTENSIONS C;M;c++;cc;cpp;cxx;m;mm;mpp;CPP;ixx;cppm) +set(CMAKE_CXX_IGNORE_EXTENSIONS inl;h;hpp;HPP;H;o;O;obj;OBJ;def;DEF;rc;RC) + +foreach (lang C OBJC OBJCXX) + if (CMAKE_${lang}_COMPILER_ID_RUN) + foreach(extension IN LISTS CMAKE_${lang}_SOURCE_FILE_EXTENSIONS) + list(REMOVE_ITEM CMAKE_CXX_SOURCE_FILE_EXTENSIONS ${extension}) + endforeach() + endif() +endforeach() + +set(CMAKE_CXX_LINKER_PREFERENCE 30) +set(CMAKE_CXX_LINKER_PREFERENCE_PROPAGATES 1) + +# Save compiler ABI information. +set(CMAKE_CXX_SIZEOF_DATA_PTR "8") +set(CMAKE_CXX_COMPILER_ABI "ELF") +set(CMAKE_CXX_BYTE_ORDER "LITTLE_ENDIAN") +set(CMAKE_CXX_LIBRARY_ARCHITECTURE "x86_64-linux-gnu") + +if(CMAKE_CXX_SIZEOF_DATA_PTR) + set(CMAKE_SIZEOF_VOID_P "${CMAKE_CXX_SIZEOF_DATA_PTR}") +endif() + +if(CMAKE_CXX_COMPILER_ABI) + set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_CXX_COMPILER_ABI}") +endif() + +if(CMAKE_CXX_LIBRARY_ARCHITECTURE) + set(CMAKE_LIBRARY_ARCHITECTURE "x86_64-linux-gnu") +endif() + +set(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX "") +if(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX) + set(CMAKE_CL_SHOWINCLUDES_PREFIX "${CMAKE_CXX_CL_SHOWINCLUDES_PREFIX}") +endif() + + + + + +set(CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES "/usr/include/c++/12;/usr/include/x86_64-linux-gnu/c++/12;/usr/include/c++/12/backward;/usr/lib/gcc/x86_64-linux-gnu/12/include;/usr/local/include;/usr/include/x86_64-linux-gnu;/usr/include") +set(CMAKE_CXX_IMPLICIT_LINK_LIBRARIES "stdc++;m;gcc_s;gcc;c;gcc_s;gcc") +set(CMAKE_CXX_IMPLICIT_LINK_DIRECTORIES "/usr/lib/gcc/x86_64-linux-gnu/12;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib") +set(CMAKE_CXX_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "") diff --git a/src/main/cpp/jni/build/CMakeFiles/3.22.1/CMakeDetermineCompilerABI_CXX.bin b/src/main/cpp/jni/build/CMakeFiles/3.22.1/CMakeDetermineCompilerABI_CXX.bin new file mode 100755 index 0000000000000000000000000000000000000000..be4688452097ca7d724b10c7ea18ff3d8978dbbc GIT binary patch literal 15992 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 literal 0 HcmV?d00001 diff --git a/src/main/cpp/jni/build/CMakeFiles/3.22.1/CMakeSystem.cmake b/src/main/cpp/jni/build/CMakeFiles/3.22.1/CMakeSystem.cmake new file mode 100644 index 00000000000..c1d7ea84b21 --- /dev/null +++ b/src/main/cpp/jni/build/CMakeFiles/3.22.1/CMakeSystem.cmake @@ -0,0 +1,15 @@ +set(CMAKE_HOST_SYSTEM "Linux-6.8.0-65-generic") +set(CMAKE_HOST_SYSTEM_NAME "Linux") +set(CMAKE_HOST_SYSTEM_VERSION "6.8.0-65-generic") +set(CMAKE_HOST_SYSTEM_PROCESSOR "x86_64") + + + +set(CMAKE_SYSTEM "Linux-6.8.0-65-generic") +set(CMAKE_SYSTEM_NAME "Linux") +set(CMAKE_SYSTEM_VERSION "6.8.0-65-generic") +set(CMAKE_SYSTEM_PROCESSOR "x86_64") + +set(CMAKE_CROSSCOMPILING "FALSE") + +set(CMAKE_SYSTEM_LOADED 1) diff --git a/src/main/cpp/jni/build/CMakeFiles/3.22.1/CompilerIdCXX/CMakeCXXCompilerId.cpp b/src/main/cpp/jni/build/CMakeFiles/3.22.1/CompilerIdCXX/CMakeCXXCompilerId.cpp new file mode 100644 index 00000000000..25c62a8c3cb --- /dev/null +++ b/src/main/cpp/jni/build/CMakeFiles/3.22.1/CompilerIdCXX/CMakeCXXCompilerId.cpp @@ -0,0 +1,791 @@ +/* This source file must have a .cpp extension so that all C++ compilers + recognize the extension without flags. Borland does not know .cxx for + example. */ +#ifndef __cplusplus +# error "A C compiler has been selected for C++." +#endif + +#if !defined(__has_include) +/* If the compiler does not have __has_include, pretend the answer is + always no. */ +# define __has_include(x) 0 +#endif + + +/* Version number components: V=Version, R=Revision, P=Patch + Version date components: YYYY=Year, MM=Month, DD=Day */ + +#if defined(__COMO__) +# define COMPILER_ID "Comeau" + /* __COMO_VERSION__ = VRR */ +# define COMPILER_VERSION_MAJOR DEC(__COMO_VERSION__ / 100) +# define COMPILER_VERSION_MINOR DEC(__COMO_VERSION__ % 100) + +#elif defined(__INTEL_COMPILER) || defined(__ICC) +# define COMPILER_ID "Intel" +# if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +# endif +# if defined(__GNUC__) +# define SIMULATE_ID "GNU" +# endif + /* __INTEL_COMPILER = VRP prior to 2021, and then VVVV for 2021 and later, + except that a few beta releases use the old format with V=2021. */ +# if __INTEL_COMPILER < 2021 || __INTEL_COMPILER == 202110 || __INTEL_COMPILER == 202111 +# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER/100) +# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER/10 % 10) +# if defined(__INTEL_COMPILER_UPDATE) +# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER_UPDATE) +# else +# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER % 10) +# endif +# else +# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER) +# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER_UPDATE) + /* The third version component from --version is an update index, + but no macro is provided for it. */ +# define COMPILER_VERSION_PATCH DEC(0) +# endif +# if defined(__INTEL_COMPILER_BUILD_DATE) + /* __INTEL_COMPILER_BUILD_DATE = YYYYMMDD */ +# define COMPILER_VERSION_TWEAK DEC(__INTEL_COMPILER_BUILD_DATE) +# endif +# if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +# endif +# if defined(__GNUC__) +# define SIMULATE_VERSION_MAJOR DEC(__GNUC__) +# elif defined(__GNUG__) +# define SIMULATE_VERSION_MAJOR DEC(__GNUG__) +# endif +# if defined(__GNUC_MINOR__) +# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__) +# endif +# if defined(__GNUC_PATCHLEVEL__) +# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) +# endif + +#elif (defined(__clang__) && defined(__INTEL_CLANG_COMPILER)) || defined(__INTEL_LLVM_COMPILER) +# define COMPILER_ID "IntelLLVM" +#if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +#endif +#if defined(__GNUC__) +# define SIMULATE_ID "GNU" +#endif +/* __INTEL_LLVM_COMPILER = VVVVRP prior to 2021.2.0, VVVVRRPP for 2021.2.0 and + * later. Look for 6 digit vs. 8 digit version number to decide encoding. + * VVVV is no smaller than the current year when a version is released. + */ +#if __INTEL_LLVM_COMPILER < 1000000L +# define COMPILER_VERSION_MAJOR DEC(__INTEL_LLVM_COMPILER/100) +# define COMPILER_VERSION_MINOR DEC(__INTEL_LLVM_COMPILER/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__INTEL_LLVM_COMPILER % 10) +#else +# define COMPILER_VERSION_MAJOR DEC(__INTEL_LLVM_COMPILER/10000) +# define COMPILER_VERSION_MINOR DEC(__INTEL_LLVM_COMPILER/100 % 100) +# define COMPILER_VERSION_PATCH DEC(__INTEL_LLVM_COMPILER % 100) +#endif +#if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +#endif +#if defined(__GNUC__) +# define SIMULATE_VERSION_MAJOR DEC(__GNUC__) +#elif defined(__GNUG__) +# define SIMULATE_VERSION_MAJOR DEC(__GNUG__) +#endif +#if defined(__GNUC_MINOR__) +# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__) +#endif +#if defined(__GNUC_PATCHLEVEL__) +# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) +#endif + +#elif defined(__PATHCC__) +# define COMPILER_ID "PathScale" +# define COMPILER_VERSION_MAJOR DEC(__PATHCC__) +# define COMPILER_VERSION_MINOR DEC(__PATHCC_MINOR__) +# if defined(__PATHCC_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__PATHCC_PATCHLEVEL__) +# endif + +#elif defined(__BORLANDC__) && defined(__CODEGEARC_VERSION__) +# define COMPILER_ID "Embarcadero" +# define COMPILER_VERSION_MAJOR HEX(__CODEGEARC_VERSION__>>24 & 0x00FF) +# define COMPILER_VERSION_MINOR HEX(__CODEGEARC_VERSION__>>16 & 0x00FF) +# define COMPILER_VERSION_PATCH DEC(__CODEGEARC_VERSION__ & 0xFFFF) + +#elif defined(__BORLANDC__) +# define COMPILER_ID "Borland" + /* __BORLANDC__ = 0xVRR */ +# define COMPILER_VERSION_MAJOR HEX(__BORLANDC__>>8) +# define COMPILER_VERSION_MINOR HEX(__BORLANDC__ & 0xFF) + +#elif defined(__WATCOMC__) && __WATCOMC__ < 1200 +# define COMPILER_ID "Watcom" + /* __WATCOMC__ = VVRR */ +# define COMPILER_VERSION_MAJOR DEC(__WATCOMC__ / 100) +# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10) +# if (__WATCOMC__ % 10) > 0 +# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10) +# endif + +#elif defined(__WATCOMC__) +# define COMPILER_ID "OpenWatcom" + /* __WATCOMC__ = VVRP + 1100 */ +# define COMPILER_VERSION_MAJOR DEC((__WATCOMC__ - 1100) / 100) +# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10) +# if (__WATCOMC__ % 10) > 0 +# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10) +# endif + +#elif defined(__SUNPRO_CC) +# define COMPILER_ID "SunPro" +# if __SUNPRO_CC >= 0x5100 + /* __SUNPRO_CC = 0xVRRP */ +# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>12) +# define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xFF) +# define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC & 0xF) +# else + /* __SUNPRO_CC = 0xVRP */ +# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>8) +# define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xF) +# define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC & 0xF) +# endif + +#elif defined(__HP_aCC) +# define COMPILER_ID "HP" + /* __HP_aCC = VVRRPP */ +# define COMPILER_VERSION_MAJOR DEC(__HP_aCC/10000) +# define COMPILER_VERSION_MINOR DEC(__HP_aCC/100 % 100) +# define COMPILER_VERSION_PATCH DEC(__HP_aCC % 100) + +#elif defined(__DECCXX) +# define COMPILER_ID "Compaq" + /* __DECCXX_VER = VVRRTPPPP */ +# define COMPILER_VERSION_MAJOR DEC(__DECCXX_VER/10000000) +# define COMPILER_VERSION_MINOR DEC(__DECCXX_VER/100000 % 100) +# define COMPILER_VERSION_PATCH DEC(__DECCXX_VER % 10000) + +#elif defined(__IBMCPP__) && defined(__COMPILER_VER__) +# define COMPILER_ID "zOS" + /* __IBMCPP__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10) + +#elif defined(__ibmxl__) && defined(__clang__) +# define COMPILER_ID "XLClang" +# define COMPILER_VERSION_MAJOR DEC(__ibmxl_version__) +# define COMPILER_VERSION_MINOR DEC(__ibmxl_release__) +# define COMPILER_VERSION_PATCH DEC(__ibmxl_modification__) +# define COMPILER_VERSION_TWEAK DEC(__ibmxl_ptf_fix_level__) + + +#elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ >= 800 +# define COMPILER_ID "XL" + /* __IBMCPP__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10) + +#elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ < 800 +# define COMPILER_ID "VisualAge" + /* __IBMCPP__ = VRP */ +# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100) +# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10) +# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10) + +#elif defined(__NVCOMPILER) +# define COMPILER_ID "NVHPC" +# define COMPILER_VERSION_MAJOR DEC(__NVCOMPILER_MAJOR__) +# define COMPILER_VERSION_MINOR DEC(__NVCOMPILER_MINOR__) +# if defined(__NVCOMPILER_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__NVCOMPILER_PATCHLEVEL__) +# endif + +#elif defined(__PGI) +# define COMPILER_ID "PGI" +# define COMPILER_VERSION_MAJOR DEC(__PGIC__) +# define COMPILER_VERSION_MINOR DEC(__PGIC_MINOR__) +# if defined(__PGIC_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__PGIC_PATCHLEVEL__) +# endif + +#elif defined(_CRAYC) +# define COMPILER_ID "Cray" +# define COMPILER_VERSION_MAJOR DEC(_RELEASE_MAJOR) +# define COMPILER_VERSION_MINOR DEC(_RELEASE_MINOR) + +#elif defined(__TI_COMPILER_VERSION__) +# define COMPILER_ID "TI" + /* __TI_COMPILER_VERSION__ = VVVRRRPPP */ +# define COMPILER_VERSION_MAJOR DEC(__TI_COMPILER_VERSION__/1000000) +# define COMPILER_VERSION_MINOR DEC(__TI_COMPILER_VERSION__/1000 % 1000) +# define COMPILER_VERSION_PATCH DEC(__TI_COMPILER_VERSION__ % 1000) + +#elif defined(__CLANG_FUJITSU) +# define COMPILER_ID "FujitsuClang" +# define COMPILER_VERSION_MAJOR DEC(__FCC_major__) +# define COMPILER_VERSION_MINOR DEC(__FCC_minor__) +# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__) +# define COMPILER_VERSION_INTERNAL_STR __clang_version__ + + +#elif defined(__FUJITSU) +# define COMPILER_ID "Fujitsu" +# if defined(__FCC_version__) +# define COMPILER_VERSION __FCC_version__ +# elif defined(__FCC_major__) +# define COMPILER_VERSION_MAJOR DEC(__FCC_major__) +# define COMPILER_VERSION_MINOR DEC(__FCC_minor__) +# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__) +# endif +# if defined(__fcc_version) +# define COMPILER_VERSION_INTERNAL DEC(__fcc_version) +# elif defined(__FCC_VERSION) +# define COMPILER_VERSION_INTERNAL DEC(__FCC_VERSION) +# endif + + +#elif defined(__ghs__) +# define COMPILER_ID "GHS" +/* __GHS_VERSION_NUMBER = VVVVRP */ +# ifdef __GHS_VERSION_NUMBER +# define COMPILER_VERSION_MAJOR DEC(__GHS_VERSION_NUMBER / 100) +# define COMPILER_VERSION_MINOR DEC(__GHS_VERSION_NUMBER / 10 % 10) +# define COMPILER_VERSION_PATCH DEC(__GHS_VERSION_NUMBER % 10) +# endif + +#elif defined(__SCO_VERSION__) +# define COMPILER_ID "SCO" + +#elif defined(__ARMCC_VERSION) && !defined(__clang__) +# define COMPILER_ID "ARMCC" +#if __ARMCC_VERSION >= 1000000 + /* __ARMCC_VERSION = VRRPPPP */ + # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/1000000) + # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 100) + # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000) +#else + /* __ARMCC_VERSION = VRPPPP */ + # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/100000) + # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 10) + # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000) +#endif + + +#elif defined(__clang__) && defined(__apple_build_version__) +# define COMPILER_ID "AppleClang" +# if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +# endif +# define COMPILER_VERSION_MAJOR DEC(__clang_major__) +# define COMPILER_VERSION_MINOR DEC(__clang_minor__) +# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__) +# if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +# endif +# define COMPILER_VERSION_TWEAK DEC(__apple_build_version__) + +#elif defined(__clang__) && defined(__ARMCOMPILER_VERSION) +# define COMPILER_ID "ARMClang" + # define COMPILER_VERSION_MAJOR DEC(__ARMCOMPILER_VERSION/1000000) + # define COMPILER_VERSION_MINOR DEC(__ARMCOMPILER_VERSION/10000 % 100) + # define COMPILER_VERSION_PATCH DEC(__ARMCOMPILER_VERSION % 10000) +# define COMPILER_VERSION_INTERNAL DEC(__ARMCOMPILER_VERSION) + +#elif defined(__clang__) +# define COMPILER_ID "Clang" +# if defined(_MSC_VER) +# define SIMULATE_ID "MSVC" +# endif +# define COMPILER_VERSION_MAJOR DEC(__clang_major__) +# define COMPILER_VERSION_MINOR DEC(__clang_minor__) +# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__) +# if defined(_MSC_VER) + /* _MSC_VER = VVRR */ +# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) +# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) +# endif + +#elif defined(__GNUC__) || defined(__GNUG__) +# define COMPILER_ID "GNU" +# if defined(__GNUC__) +# define COMPILER_VERSION_MAJOR DEC(__GNUC__) +# else +# define COMPILER_VERSION_MAJOR DEC(__GNUG__) +# endif +# if defined(__GNUC_MINOR__) +# define COMPILER_VERSION_MINOR DEC(__GNUC_MINOR__) +# endif +# if defined(__GNUC_PATCHLEVEL__) +# define COMPILER_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) +# endif + +#elif defined(_MSC_VER) +# define COMPILER_ID "MSVC" + /* _MSC_VER = VVRR */ +# define COMPILER_VERSION_MAJOR DEC(_MSC_VER / 100) +# define COMPILER_VERSION_MINOR DEC(_MSC_VER % 100) +# if defined(_MSC_FULL_VER) +# if _MSC_VER >= 1400 + /* _MSC_FULL_VER = VVRRPPPPP */ +# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 100000) +# else + /* _MSC_FULL_VER = VVRRPPPP */ +# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 10000) +# endif +# endif +# if defined(_MSC_BUILD) +# define COMPILER_VERSION_TWEAK DEC(_MSC_BUILD) +# endif + +#elif defined(__VISUALDSPVERSION__) || defined(__ADSPBLACKFIN__) || defined(__ADSPTS__) || defined(__ADSP21000__) +# define COMPILER_ID "ADSP" +#if defined(__VISUALDSPVERSION__) + /* __VISUALDSPVERSION__ = 0xVVRRPP00 */ +# define COMPILER_VERSION_MAJOR HEX(__VISUALDSPVERSION__>>24) +# define COMPILER_VERSION_MINOR HEX(__VISUALDSPVERSION__>>16 & 0xFF) +# define COMPILER_VERSION_PATCH HEX(__VISUALDSPVERSION__>>8 & 0xFF) +#endif + +#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC) +# define COMPILER_ID "IAR" +# if defined(__VER__) && defined(__ICCARM__) +# define COMPILER_VERSION_MAJOR DEC((__VER__) / 1000000) +# define COMPILER_VERSION_MINOR DEC(((__VER__) / 1000) % 1000) +# define COMPILER_VERSION_PATCH DEC((__VER__) % 1000) +# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__) +# elif defined(__VER__) && (defined(__ICCAVR__) || defined(__ICCRX__) || defined(__ICCRH850__) || defined(__ICCRL78__) || defined(__ICC430__) || defined(__ICCRISCV__) || defined(__ICCV850__) || defined(__ICC8051__) || defined(__ICCSTM8__)) +# define COMPILER_VERSION_MAJOR DEC((__VER__) / 100) +# define COMPILER_VERSION_MINOR DEC((__VER__) - (((__VER__) / 100)*100)) +# define COMPILER_VERSION_PATCH DEC(__SUBVERSION__) +# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__) +# endif + + +/* These compilers are either not known or too old to define an + identification macro. Try to identify the platform and guess that + it is the native compiler. */ +#elif defined(__hpux) || defined(__hpua) +# define COMPILER_ID "HP" + +#else /* unknown compiler */ +# define COMPILER_ID "" +#endif + +/* Construct the string literal in pieces to prevent the source from + getting matched. Store it in a pointer rather than an array + because some compilers will just produce instructions to fill the + array rather than assigning a pointer to a static array. */ +char const* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]"; +#ifdef SIMULATE_ID +char const* info_simulate = "INFO" ":" "simulate[" SIMULATE_ID "]"; +#endif + +#ifdef __QNXNTO__ +char const* qnxnto = "INFO" ":" "qnxnto[]"; +#endif + +#if defined(__CRAYXT_COMPUTE_LINUX_TARGET) +char const *info_cray = "INFO" ":" "compiler_wrapper[CrayPrgEnv]"; +#endif + +#define STRINGIFY_HELPER(X) #X +#define STRINGIFY(X) STRINGIFY_HELPER(X) + +/* Identify known platforms by name. */ +#if defined(__linux) || defined(__linux__) || defined(linux) +# define PLATFORM_ID "Linux" + +#elif defined(__MSYS__) +# define PLATFORM_ID "MSYS" + +#elif defined(__CYGWIN__) +# define PLATFORM_ID "Cygwin" + +#elif defined(__MINGW32__) +# define PLATFORM_ID "MinGW" + +#elif defined(__APPLE__) +# define PLATFORM_ID "Darwin" + +#elif defined(_WIN32) || defined(__WIN32__) || defined(WIN32) +# define PLATFORM_ID "Windows" + +#elif defined(__FreeBSD__) || defined(__FreeBSD) +# define PLATFORM_ID "FreeBSD" + +#elif defined(__NetBSD__) || defined(__NetBSD) +# define PLATFORM_ID "NetBSD" + +#elif defined(__OpenBSD__) || defined(__OPENBSD) +# define PLATFORM_ID "OpenBSD" + +#elif defined(__sun) || defined(sun) +# define PLATFORM_ID "SunOS" + +#elif defined(_AIX) || defined(__AIX) || defined(__AIX__) || defined(__aix) || defined(__aix__) +# define PLATFORM_ID "AIX" + +#elif defined(__hpux) || defined(__hpux__) +# define PLATFORM_ID "HP-UX" + +#elif defined(__HAIKU__) +# define PLATFORM_ID "Haiku" + +#elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS) +# define PLATFORM_ID "BeOS" + +#elif defined(__QNX__) || defined(__QNXNTO__) +# define PLATFORM_ID "QNX" + +#elif defined(__tru64) || defined(_tru64) || defined(__TRU64__) +# define PLATFORM_ID "Tru64" + +#elif defined(__riscos) || defined(__riscos__) +# define PLATFORM_ID "RISCos" + +#elif defined(__sinix) || defined(__sinix__) || defined(__SINIX__) +# define PLATFORM_ID "SINIX" + +#elif defined(__UNIX_SV__) +# define PLATFORM_ID "UNIX_SV" + +#elif defined(__bsdos__) +# define PLATFORM_ID "BSDOS" + +#elif defined(_MPRAS) || defined(MPRAS) +# define PLATFORM_ID "MP-RAS" + +#elif defined(__osf) || defined(__osf__) +# define PLATFORM_ID "OSF1" + +#elif defined(_SCO_SV) || defined(SCO_SV) || defined(sco_sv) +# define PLATFORM_ID "SCO_SV" + +#elif defined(__ultrix) || defined(__ultrix__) || defined(_ULTRIX) +# define PLATFORM_ID "ULTRIX" + +#elif defined(__XENIX__) || defined(_XENIX) || defined(XENIX) +# define PLATFORM_ID "Xenix" + +#elif defined(__WATCOMC__) +# if defined(__LINUX__) +# define PLATFORM_ID "Linux" + +# elif defined(__DOS__) +# define PLATFORM_ID "DOS" + +# elif defined(__OS2__) +# define PLATFORM_ID "OS2" + +# elif defined(__WINDOWS__) +# define PLATFORM_ID "Windows3x" + +# elif defined(__VXWORKS__) +# define PLATFORM_ID "VxWorks" + +# else /* unknown platform */ +# define PLATFORM_ID +# endif + +#elif defined(__INTEGRITY) +# if defined(INT_178B) +# define PLATFORM_ID "Integrity178" + +# else /* regular Integrity */ +# define PLATFORM_ID "Integrity" +# endif + +#else /* unknown platform */ +# define PLATFORM_ID + +#endif + +/* For windows compilers MSVC and Intel we can determine + the architecture of the compiler being used. This is because + the compilers do not have flags that can change the architecture, + but rather depend on which compiler is being used +*/ +#if defined(_WIN32) && defined(_MSC_VER) +# if defined(_M_IA64) +# define ARCHITECTURE_ID "IA64" + +# elif defined(_M_ARM64EC) +# define ARCHITECTURE_ID "ARM64EC" + +# elif defined(_M_X64) || defined(_M_AMD64) +# define ARCHITECTURE_ID "x64" + +# elif defined(_M_IX86) +# define ARCHITECTURE_ID "X86" + +# elif defined(_M_ARM64) +# define ARCHITECTURE_ID "ARM64" + +# elif defined(_M_ARM) +# if _M_ARM == 4 +# define ARCHITECTURE_ID "ARMV4I" +# elif _M_ARM == 5 +# define ARCHITECTURE_ID "ARMV5I" +# else +# define ARCHITECTURE_ID "ARMV" STRINGIFY(_M_ARM) +# endif + +# elif defined(_M_MIPS) +# define ARCHITECTURE_ID "MIPS" + +# elif defined(_M_SH) +# define ARCHITECTURE_ID "SHx" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__WATCOMC__) +# if defined(_M_I86) +# define ARCHITECTURE_ID "I86" + +# elif defined(_M_IX86) +# define ARCHITECTURE_ID "X86" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC) +# if defined(__ICCARM__) +# define ARCHITECTURE_ID "ARM" + +# elif defined(__ICCRX__) +# define ARCHITECTURE_ID "RX" + +# elif defined(__ICCRH850__) +# define ARCHITECTURE_ID "RH850" + +# elif defined(__ICCRL78__) +# define ARCHITECTURE_ID "RL78" + +# elif defined(__ICCRISCV__) +# define ARCHITECTURE_ID "RISCV" + +# elif defined(__ICCAVR__) +# define ARCHITECTURE_ID "AVR" + +# elif defined(__ICC430__) +# define ARCHITECTURE_ID "MSP430" + +# elif defined(__ICCV850__) +# define ARCHITECTURE_ID "V850" + +# elif defined(__ICC8051__) +# define ARCHITECTURE_ID "8051" + +# elif defined(__ICCSTM8__) +# define ARCHITECTURE_ID "STM8" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__ghs__) +# if defined(__PPC64__) +# define ARCHITECTURE_ID "PPC64" + +# elif defined(__ppc__) +# define ARCHITECTURE_ID "PPC" + +# elif defined(__ARM__) +# define ARCHITECTURE_ID "ARM" + +# elif defined(__x86_64__) +# define ARCHITECTURE_ID "x64" + +# elif defined(__i386__) +# define ARCHITECTURE_ID "X86" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#elif defined(__TI_COMPILER_VERSION__) +# if defined(__TI_ARM__) +# define ARCHITECTURE_ID "ARM" + +# elif defined(__MSP430__) +# define ARCHITECTURE_ID "MSP430" + +# elif defined(__TMS320C28XX__) +# define ARCHITECTURE_ID "TMS320C28x" + +# elif defined(__TMS320C6X__) || defined(_TMS320C6X) +# define ARCHITECTURE_ID "TMS320C6x" + +# else /* unknown architecture */ +# define ARCHITECTURE_ID "" +# endif + +#else +# define ARCHITECTURE_ID +#endif + +/* Convert integer to decimal digit literals. */ +#define DEC(n) \ + ('0' + (((n) / 10000000)%10)), \ + ('0' + (((n) / 1000000)%10)), \ + ('0' + (((n) / 100000)%10)), \ + ('0' + (((n) / 10000)%10)), \ + ('0' + (((n) / 1000)%10)), \ + ('0' + (((n) / 100)%10)), \ + ('0' + (((n) / 10)%10)), \ + ('0' + ((n) % 10)) + +/* Convert integer to hex digit literals. */ +#define HEX(n) \ + ('0' + ((n)>>28 & 0xF)), \ + ('0' + ((n)>>24 & 0xF)), \ + ('0' + ((n)>>20 & 0xF)), \ + ('0' + ((n)>>16 & 0xF)), \ + ('0' + ((n)>>12 & 0xF)), \ + ('0' + ((n)>>8 & 0xF)), \ + ('0' + ((n)>>4 & 0xF)), \ + ('0' + ((n) & 0xF)) + +/* Construct a string literal encoding the version number. */ +#ifdef COMPILER_VERSION +char const* info_version = "INFO" ":" "compiler_version[" COMPILER_VERSION "]"; + +/* Construct a string literal encoding the version number components. */ +#elif defined(COMPILER_VERSION_MAJOR) +char const info_version[] = { + 'I', 'N', 'F', 'O', ':', + 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','[', + COMPILER_VERSION_MAJOR, +# ifdef COMPILER_VERSION_MINOR + '.', COMPILER_VERSION_MINOR, +# ifdef COMPILER_VERSION_PATCH + '.', COMPILER_VERSION_PATCH, +# ifdef COMPILER_VERSION_TWEAK + '.', COMPILER_VERSION_TWEAK, +# endif +# endif +# endif + ']','\0'}; +#endif + +/* Construct a string literal encoding the internal version number. */ +#ifdef COMPILER_VERSION_INTERNAL +char const info_version_internal[] = { + 'I', 'N', 'F', 'O', ':', + 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','_', + 'i','n','t','e','r','n','a','l','[', + COMPILER_VERSION_INTERNAL,']','\0'}; +#elif defined(COMPILER_VERSION_INTERNAL_STR) +char const* info_version_internal = "INFO" ":" "compiler_version_internal[" COMPILER_VERSION_INTERNAL_STR "]"; +#endif + +/* Construct a string literal encoding the version number components. */ +#ifdef SIMULATE_VERSION_MAJOR +char const info_simulate_version[] = { + 'I', 'N', 'F', 'O', ':', + 's','i','m','u','l','a','t','e','_','v','e','r','s','i','o','n','[', + SIMULATE_VERSION_MAJOR, +# ifdef SIMULATE_VERSION_MINOR + '.', SIMULATE_VERSION_MINOR, +# ifdef SIMULATE_VERSION_PATCH + '.', SIMULATE_VERSION_PATCH, +# ifdef SIMULATE_VERSION_TWEAK + '.', SIMULATE_VERSION_TWEAK, +# endif +# endif +# endif + ']','\0'}; +#endif + +/* Construct the string literal in pieces to prevent the source from + getting matched. Store it in a pointer rather than an array + because some compilers will just produce instructions to fill the + array rather than assigning a pointer to a static array. */ +char const* info_platform = "INFO" ":" "platform[" PLATFORM_ID "]"; +char const* info_arch = "INFO" ":" "arch[" ARCHITECTURE_ID "]"; + + + +#if defined(__INTEL_COMPILER) && defined(_MSVC_LANG) && _MSVC_LANG < 201403L +# if defined(__INTEL_CXX11_MODE__) +# if defined(__cpp_aggregate_nsdmi) +# define CXX_STD 201402L +# else +# define CXX_STD 201103L +# endif +# else +# define CXX_STD 199711L +# endif +#elif defined(_MSC_VER) && defined(_MSVC_LANG) +# define CXX_STD _MSVC_LANG +#else +# define CXX_STD __cplusplus +#endif + +const char* info_language_standard_default = "INFO" ":" "standard_default[" +#if CXX_STD > 202002L + "23" +#elif CXX_STD > 201703L + "20" +#elif CXX_STD >= 201703L + "17" +#elif CXX_STD >= 201402L + "14" +#elif CXX_STD >= 201103L + "11" +#else + "98" +#endif +"]"; + +const char* info_language_extensions_default = "INFO" ":" "extensions_default[" +/* !defined(_MSC_VER) to exclude Clang's MSVC compatibility mode. */ +#if (defined(__clang__) || defined(__GNUC__) || \ + defined(__TI_COMPILER_VERSION__)) && \ + !defined(__STRICT_ANSI__) && !defined(_MSC_VER) + "ON" +#else + "OFF" +#endif +"]"; + +/*--------------------------------------------------------------------------*/ + +int main(int argc, char* argv[]) +{ + int require = 0; + require += info_compiler[argc]; + require += info_platform[argc]; +#ifdef COMPILER_VERSION_MAJOR + require += info_version[argc]; +#endif +#ifdef COMPILER_VERSION_INTERNAL + require += info_version_internal[argc]; +#endif +#ifdef SIMULATE_ID + require += info_simulate[argc]; +#endif +#ifdef SIMULATE_VERSION_MAJOR + require += info_simulate_version[argc]; +#endif +#if defined(__CRAYXT_COMPUTE_LINUX_TARGET) + require += info_cray[argc]; +#endif + require += info_language_standard_default[argc]; + require += info_language_extensions_default[argc]; + (void)argv; + return require; +} diff --git a/src/main/cpp/jni/build/CMakeFiles/3.22.1/CompilerIdCXX/a.out b/src/main/cpp/jni/build/CMakeFiles/3.22.1/CompilerIdCXX/a.out new file mode 100755 index 0000000000000000000000000000000000000000..9fe81eee4abb75ec64309c98d682c547d65f12bc GIT binary patch literal 16096 zcmeHOYit}>6~4Q9ImC%KX+uI%nxV8+LhFg`JZgeM*0I+aBRfeGrv%b48hh9FihY>f zS!zen1_g>ulBy91_z_UmO7H_Afm9Vyk>XG&N>xzu0}%v5;ZYH!v~{5%Q=%;A+HEYG>;JCA$k+&i;(X6}6?)!QA9#T00P`k-PdnJ`FF6i?hI1!76nu9nmB z-Rd^AnB;{TGy0@qq&0LoK9@HLzJNIUt>r=;ew%@*2195ebM~8$Mz}#l;7ZPe{T8u8 z1Ja;y>l*iBrp4g!;eLM3bwJQ?l2^LO6mhg zJ~=1+-!AzK^A-sM9`+j%zcB9-KX9&t>EO$L`oF1fzxcgm=`bqH?=`RjM}7B`pLDHQ z+?=7C4@iCU^+Q7P4=(9dn{(NL?OQkJ(#^SSp)%Gy*1o-Y`&PSLwA*yW+%Aj$c}(ru zdq`23DaIs?Dt_F^h{w8HMbGvJ&MkYR@u{-|_f!`>_WCa_{rc&z??1;j+-~+^8zzp2 zA;L13xlXn*`S=W#WNZ_^l=*pH1M?g>{;E2~LR!uGHW>#z0qVaExu%P1oQ&Zb36OxW3;)5%DMkQ3j$6L>Y)O5M?0BK$L<1iwyj= z>Gn6B6W1D?lZ$?}St;jpQ+~X9(K+$shUazrs@t9<_%GGFo+8$?L9sna=d{$NwA}hi z&*Y_#Ig`J4PW*9te}AfVs`Y|%dgqH2pt`zDmTwH%O&dO|;}L$I5a;xwXPLc!#$QcU zKfqsb5pU@b;6&mha1DwtADbB zviZ!yL|}cko;5`|RS!Rzx_*?pC+NGNx420WMHz@P5M?0BK$L+f15pN|3`7}-G7x1T z%0QHXw`PF9f8C6F_IB^vF<8uxW^|GWeW-| zN0s&%&3XP%v6Mg3%U@Ro^h$#xN2E+21`BDgl%@}ULtZ84A8EZ$G?_6!Q{Y<4fo|Vk z-KyC71s~W*&ExM;{jXK44-!uk=Qj^Nae6JFj!svrXNmK-Sf<#q11dI_h^=p2((pKa z5M!Lz9Bd@}yV;;?iT;vzCl$BS|MaWXss>ghx>v0IP}8!98jh=7>vp_v%bolgQTubf zmtn^s5y$lD|N9j83gQA^Ew73Hra?s1{lN zjw~j`8o?2MXd~iviA?o`iq<7}kgXj}fsh)v`<=tUJXz zQ>-h+I?_Fzoja_JhXyJIzhcpYK0V<#w^p>+`fwXP_;0n_Hi_b9P2+A@s9vvzZMa`z zq&X!WYKg%u#Ov8}zs1!GH7es)%#|hh6Cr$y;J6N8-$R9%TC3WV2I2NG@oMZCJ>6qm zYmg3~qJORz*A?&yD#X++3fBqnZ&ION`=8VH36->rWt(9Xp}ze^!eg|Od*VG}Si|bY z|E;#Ct0gpE{-pg@2J7$<=1pz?&fq!%o}h%Rf>6Vo3Abuw6c1~BjZ#SUTz@{2j-k z^9tL)BJnqd;y1>FQ$=Xa?Mtv4?9hI7aIoaJ+C^G{ z?+s*K-y2p0l>N%kkUgkoSL?fe-W}xi`em|A7v14palp&DX}?%1yIy5X@jJ#`#?Pef zmiiXFcOdI}rII)9W(t03Tn&}He8x>z^7(OcsgYc=^yip%_IV%AbRIt3DQ_}+()Qr! zsB%Br+uD{b3>ER_lHzn9=;%wisl8n;?IY;=$li{=o=$@4)u)?sMC)`NQ0|`IeY-n) z-F@BN2UGoSf5-0L6nTXAH6*c{;ot3G$fP~rQ~E3^3JYdC0||5YHn{0>(H)`JqrC5- zXCGOmvjw+O&ZLz-6}($DQqC(3SG?hj`_}iSit;Evc*9GT4V24LvEG*9y0pbCz}?iV|Pz84@zx5;+02~ogObx6^8pIqmdWaa|D-krA*Fa2W9h+ zQub)h9PHsD6@1F6vUyyRWl{H^of(mlIFcrRNXFj`N#lVs1^4pVL23?nzfIX!HuXlH zhIpOJ^FM}oenz*3;4Oc6za8dh2+X#%^j;Ep4n>#0rup`ji8`3)LEcVg)fr}{Kvp-wFpA7l8 zhyomT2ml%UTOt3XD8P?}It+e@_uY^`<~87WzJh)D{J$su$iK40QuqZC!32h=en=&5 zBK%(x1MqtTOH&Bf|1*MX{b$4<{7WH!^grNVQi0aG2Kyp0AI5&nusvk(Kag)zjX&n! zGtC4N!OlptGVs?(!DCMzBWCBnw62zEO8Sq-KNI}WkKZ7SP2i8`%Bjt4tyEGUXAkfP zpCMJPf8fw!eA;JSbqRieZ%~0T)Q@>zyZDFg<#gb#77)OgmNQ%PbJq7i!#^xUjUk7SsQv}j!cm9- literal 0 HcmV?d00001 diff --git a/src/main/cpp/jni/build/CMakeFiles/CMakeDirectoryInformation.cmake b/src/main/cpp/jni/build/CMakeFiles/CMakeDirectoryInformation.cmake new file mode 100644 index 00000000000..b9b869f5a2e --- /dev/null +++ b/src/main/cpp/jni/build/CMakeFiles/CMakeDirectoryInformation.cmake @@ -0,0 +1,16 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# Relative path conversion top directories. +set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/home/rene/projects/systemds/src/main/cpp/jni") +set(CMAKE_RELATIVE_PATH_TOP_BINARY "/home/rene/projects/systemds/src/main/cpp/jni/build") + +# Force unix paths in dependencies. +set(CMAKE_FORCE_UNIX_PATHS 1) + + +# The C and CXX include file regular expressions for this directory. +set(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$") +set(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$") +set(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN}) +set(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN}) diff --git a/src/main/cpp/jni/build/CMakeFiles/CMakeOutput.log b/src/main/cpp/jni/build/CMakeFiles/CMakeOutput.log new file mode 100644 index 00000000000..1d93f613588 --- /dev/null +++ b/src/main/cpp/jni/build/CMakeFiles/CMakeOutput.log @@ -0,0 +1,278 @@ +The system is: Linux - 6.8.0-65-generic - x86_64 +Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" succeeded. +Compiler: /usr/bin/c++ +Build flags: +Id flags: + +The output was: +0 + + +Compilation of the CXX compiler identification source "CMakeCXXCompilerId.cpp" produced "a.out" + +The CXX compiler identification is GNU, found in "/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/3.22.1/CompilerIdCXX/a.out" + +Detecting CXX compiler ABI info compiled with the following output: +Change Dir: /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/CMakeTmp + +Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_084f2/fast && /usr/bin/gmake -f CMakeFiles/cmTC_084f2.dir/build.make CMakeFiles/cmTC_084f2.dir/build +gmake[1]: Entering directory '/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/CMakeTmp' +Building CXX object CMakeFiles/cmTC_084f2.dir/CMakeCXXCompilerABI.cpp.o +/usr/bin/c++ -v -o CMakeFiles/cmTC_084f2.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake-3.22/Modules/CMakeCXXCompilerABI.cpp +Using built-in specs. +COLLECT_GCC=/usr/bin/c++ +OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa +OFFLOAD_TARGET_DEFAULT=1 +Target: x86_64-linux-gnu +Configured with: ../src/configure -v --with-pkgversion='Ubuntu 12.3.0-1ubuntu1~22.04.2' --with-bugurl=file:///usr/share/doc/gcc-12/README.Bugs --enable-languages=c,ada,c++,go,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-12 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-12-dNWB6h/gcc-12-12.3.0/debian/tmp-nvptx/usr,amdgcn-amdhsa=/build/gcc-12-dNWB6h/gcc-12-12.3.0/debian/tmp-gcn/usr --enable-offload-defaulted --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu +Thread model: posix +Supported LTO compression algorithms: zlib zstd +gcc version 12.3.0 (Ubuntu 12.3.0-1ubuntu1~22.04.2) +COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_084f2.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_084f2.dir/' + /usr/lib/gcc/x86_64-linux-gnu/12/cc1plus -quiet -v -imultiarch x86_64-linux-gnu -D_GNU_SOURCE /usr/share/cmake-3.22/Modules/CMakeCXXCompilerABI.cpp -quiet -dumpdir CMakeFiles/cmTC_084f2.dir/ -dumpbase CMakeCXXCompilerABI.cpp.cpp -dumpbase-ext .cpp -mtune=generic -march=x86-64 -version -fasynchronous-unwind-tables -fstack-protector-strong -Wformat -Wformat-security -fstack-clash-protection -fcf-protection -o /tmp/cchztBoE.s +GNU C++17 (Ubuntu 12.3.0-1ubuntu1~22.04.2) version 12.3.0 (x86_64-linux-gnu) + compiled by GNU C version 12.3.0, GMP version 6.2.1, MPFR version 4.1.0, MPC version 1.2.1, isl version isl-0.24-GMP + +GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 +ignoring duplicate directory "/usr/include/x86_64-linux-gnu/c++/12" +ignoring nonexistent directory "/usr/local/include/x86_64-linux-gnu" +ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/12/include-fixed" +ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/12/../../../../x86_64-linux-gnu/include" +#include "..." search starts here: +#include <...> search starts here: + /usr/include/c++/12 + /usr/include/x86_64-linux-gnu/c++/12 + /usr/include/c++/12/backward + /usr/lib/gcc/x86_64-linux-gnu/12/include + /usr/local/include + /usr/include/x86_64-linux-gnu + /usr/include +End of search list. +GNU C++17 (Ubuntu 12.3.0-1ubuntu1~22.04.2) version 12.3.0 (x86_64-linux-gnu) + compiled by GNU C version 12.3.0, GMP version 6.2.1, MPFR version 4.1.0, MPC version 1.2.1, isl version isl-0.24-GMP + +GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 +Compiler executable checksum: 0d370165627a7e26039599c56dc32a7a +COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_084f2.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_084f2.dir/' + as -v --64 -o CMakeFiles/cmTC_084f2.dir/CMakeCXXCompilerABI.cpp.o /tmp/cchztBoE.s +GNU assembler version 2.38 (x86_64-linux-gnu) using BFD version (GNU Binutils for Ubuntu) 2.38 +COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/ +LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../:/lib/:/usr/lib/ +COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_084f2.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_084f2.dir/CMakeCXXCompilerABI.cpp.' +Linking CXX executable cmTC_084f2 +/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_084f2.dir/link.txt --verbose=1 +/usr/bin/c++ -v CMakeFiles/cmTC_084f2.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_084f2 +Using built-in specs. +COLLECT_GCC=/usr/bin/c++ +COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/12/lto-wrapper +OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa +OFFLOAD_TARGET_DEFAULT=1 +Target: x86_64-linux-gnu +Configured with: ../src/configure -v --with-pkgversion='Ubuntu 12.3.0-1ubuntu1~22.04.2' --with-bugurl=file:///usr/share/doc/gcc-12/README.Bugs --enable-languages=c,ada,c++,go,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-12 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-12-dNWB6h/gcc-12-12.3.0/debian/tmp-nvptx/usr,amdgcn-amdhsa=/build/gcc-12-dNWB6h/gcc-12-12.3.0/debian/tmp-gcn/usr --enable-offload-defaulted --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu +Thread model: posix +Supported LTO compression algorithms: zlib zstd +gcc version 12.3.0 (Ubuntu 12.3.0-1ubuntu1~22.04.2) +COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/ +LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../:/lib/:/usr/lib/ +COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_084f2' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_084f2.' + /usr/lib/gcc/x86_64-linux-gnu/12/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/12/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/12/lto-wrapper -plugin-opt=-fresolution=/tmp/ccJdiepA.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -z now -z relro -o cmTC_084f2 /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/12/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/12 -L/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/12/../../.. CMakeFiles/cmTC_084f2.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-linux-gnu/12/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crtn.o +COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_084f2' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_084f2.' +gmake[1]: Leaving directory '/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/CMakeTmp' + + + +Parsed CXX implicit include dir info from above output: rv=done + found start of include info + found start of implicit include info + add: [/usr/include/c++/12] + add: [/usr/include/x86_64-linux-gnu/c++/12] + add: [/usr/include/c++/12/backward] + add: [/usr/lib/gcc/x86_64-linux-gnu/12/include] + add: [/usr/local/include] + add: [/usr/include/x86_64-linux-gnu] + add: [/usr/include] + end of search list found + collapse include dir [/usr/include/c++/12] ==> [/usr/include/c++/12] + collapse include dir [/usr/include/x86_64-linux-gnu/c++/12] ==> [/usr/include/x86_64-linux-gnu/c++/12] + collapse include dir [/usr/include/c++/12/backward] ==> [/usr/include/c++/12/backward] + collapse include dir [/usr/lib/gcc/x86_64-linux-gnu/12/include] ==> [/usr/lib/gcc/x86_64-linux-gnu/12/include] + collapse include dir [/usr/local/include] ==> [/usr/local/include] + collapse include dir [/usr/include/x86_64-linux-gnu] ==> [/usr/include/x86_64-linux-gnu] + collapse include dir [/usr/include] ==> [/usr/include] + implicit include dirs: [/usr/include/c++/12;/usr/include/x86_64-linux-gnu/c++/12;/usr/include/c++/12/backward;/usr/lib/gcc/x86_64-linux-gnu/12/include;/usr/local/include;/usr/include/x86_64-linux-gnu;/usr/include] + + +Parsed CXX implicit link information from above output: + link line regex: [^( *|.*[/\])(ld|CMAKE_LINK_STARTFILE-NOTFOUND|([^/\]+-)?ld|collect2)[^/\]*( |$)] + ignore line: [Change Dir: /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/CMakeTmp] + ignore line: [] + ignore line: [Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_084f2/fast && /usr/bin/gmake -f CMakeFiles/cmTC_084f2.dir/build.make CMakeFiles/cmTC_084f2.dir/build] + ignore line: [gmake[1]: Entering directory '/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/CMakeTmp'] + ignore line: [Building CXX object CMakeFiles/cmTC_084f2.dir/CMakeCXXCompilerABI.cpp.o] + ignore line: [/usr/bin/c++ -v -o CMakeFiles/cmTC_084f2.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake-3.22/Modules/CMakeCXXCompilerABI.cpp] + ignore line: [Using built-in specs.] + ignore line: [COLLECT_GCC=/usr/bin/c++] + ignore line: [OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa] + ignore line: [OFFLOAD_TARGET_DEFAULT=1] + ignore line: [Target: x86_64-linux-gnu] + ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 12.3.0-1ubuntu1~22.04.2' --with-bugurl=file:///usr/share/doc/gcc-12/README.Bugs --enable-languages=c ada c++ go d fortran objc obj-c++ m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-12 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32 m64 mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-12-dNWB6h/gcc-12-12.3.0/debian/tmp-nvptx/usr amdgcn-amdhsa=/build/gcc-12-dNWB6h/gcc-12-12.3.0/debian/tmp-gcn/usr --enable-offload-defaulted --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu] + ignore line: [Thread model: posix] + ignore line: [Supported LTO compression algorithms: zlib zstd] + ignore line: [gcc version 12.3.0 (Ubuntu 12.3.0-1ubuntu1~22.04.2) ] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_084f2.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_084f2.dir/'] + ignore line: [ /usr/lib/gcc/x86_64-linux-gnu/12/cc1plus -quiet -v -imultiarch x86_64-linux-gnu -D_GNU_SOURCE /usr/share/cmake-3.22/Modules/CMakeCXXCompilerABI.cpp -quiet -dumpdir CMakeFiles/cmTC_084f2.dir/ -dumpbase CMakeCXXCompilerABI.cpp.cpp -dumpbase-ext .cpp -mtune=generic -march=x86-64 -version -fasynchronous-unwind-tables -fstack-protector-strong -Wformat -Wformat-security -fstack-clash-protection -fcf-protection -o /tmp/cchztBoE.s] + ignore line: [GNU C++17 (Ubuntu 12.3.0-1ubuntu1~22.04.2) version 12.3.0 (x86_64-linux-gnu)] + ignore line: [ compiled by GNU C version 12.3.0 GMP version 6.2.1 MPFR version 4.1.0 MPC version 1.2.1 isl version isl-0.24-GMP] + ignore line: [] + ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072] + ignore line: [ignoring duplicate directory "/usr/include/x86_64-linux-gnu/c++/12"] + ignore line: [ignoring nonexistent directory "/usr/local/include/x86_64-linux-gnu"] + ignore line: [ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/12/include-fixed"] + ignore line: [ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/12/../../../../x86_64-linux-gnu/include"] + ignore line: [#include "..." search starts here:] + ignore line: [#include <...> search starts here:] + ignore line: [ /usr/include/c++/12] + ignore line: [ /usr/include/x86_64-linux-gnu/c++/12] + ignore line: [ /usr/include/c++/12/backward] + ignore line: [ /usr/lib/gcc/x86_64-linux-gnu/12/include] + ignore line: [ /usr/local/include] + ignore line: [ /usr/include/x86_64-linux-gnu] + ignore line: [ /usr/include] + ignore line: [End of search list.] + ignore line: [GNU C++17 (Ubuntu 12.3.0-1ubuntu1~22.04.2) version 12.3.0 (x86_64-linux-gnu)] + ignore line: [ compiled by GNU C version 12.3.0 GMP version 6.2.1 MPFR version 4.1.0 MPC version 1.2.1 isl version isl-0.24-GMP] + ignore line: [] + ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072] + ignore line: [Compiler executable checksum: 0d370165627a7e26039599c56dc32a7a] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_084f2.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_084f2.dir/'] + ignore line: [ as -v --64 -o CMakeFiles/cmTC_084f2.dir/CMakeCXXCompilerABI.cpp.o /tmp/cchztBoE.s] + ignore line: [GNU assembler version 2.38 (x86_64-linux-gnu) using BFD version (GNU Binutils for Ubuntu) 2.38] + ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/] + ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../:/lib/:/usr/lib/] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_084f2.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_084f2.dir/CMakeCXXCompilerABI.cpp.'] + ignore line: [Linking CXX executable cmTC_084f2] + ignore line: [/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_084f2.dir/link.txt --verbose=1] + ignore line: [/usr/bin/c++ -v CMakeFiles/cmTC_084f2.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_084f2 ] + ignore line: [Using built-in specs.] + ignore line: [COLLECT_GCC=/usr/bin/c++] + ignore line: [COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/12/lto-wrapper] + ignore line: [OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa] + ignore line: [OFFLOAD_TARGET_DEFAULT=1] + ignore line: [Target: x86_64-linux-gnu] + ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 12.3.0-1ubuntu1~22.04.2' --with-bugurl=file:///usr/share/doc/gcc-12/README.Bugs --enable-languages=c ada c++ go d fortran objc obj-c++ m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-12 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32 m64 mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-12-dNWB6h/gcc-12-12.3.0/debian/tmp-nvptx/usr amdgcn-amdhsa=/build/gcc-12-dNWB6h/gcc-12-12.3.0/debian/tmp-gcn/usr --enable-offload-defaulted --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu] + ignore line: [Thread model: posix] + ignore line: [Supported LTO compression algorithms: zlib zstd] + ignore line: [gcc version 12.3.0 (Ubuntu 12.3.0-1ubuntu1~22.04.2) ] + ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/] + ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../:/lib/:/usr/lib/] + ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_084f2' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_084f2.'] + link line: [ /usr/lib/gcc/x86_64-linux-gnu/12/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/12/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/12/lto-wrapper -plugin-opt=-fresolution=/tmp/ccJdiepA.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -z now -z relro -o cmTC_084f2 /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/12/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/12 -L/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/12/../../.. CMakeFiles/cmTC_084f2.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-linux-gnu/12/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crtn.o] + arg [/usr/lib/gcc/x86_64-linux-gnu/12/collect2] ==> ignore + arg [-plugin] ==> ignore + arg [/usr/lib/gcc/x86_64-linux-gnu/12/liblto_plugin.so] ==> ignore + arg [-plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/12/lto-wrapper] ==> ignore + arg [-plugin-opt=-fresolution=/tmp/ccJdiepA.res] ==> ignore + arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore + arg [-plugin-opt=-pass-through=-lgcc] ==> ignore + arg [-plugin-opt=-pass-through=-lc] ==> ignore + arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore + arg [-plugin-opt=-pass-through=-lgcc] ==> ignore + arg [--build-id] ==> ignore + arg [--eh-frame-hdr] ==> ignore + arg [-m] ==> ignore + arg [elf_x86_64] ==> ignore + arg [--hash-style=gnu] ==> ignore + arg [--as-needed] ==> ignore + arg [-dynamic-linker] ==> ignore + arg [/lib64/ld-linux-x86-64.so.2] ==> ignore + arg [-pie] ==> ignore + arg [-znow] ==> ignore + arg [-zrelro] ==> ignore + arg [-o] ==> ignore + arg [cmTC_084f2] ==> ignore + arg [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/Scrt1.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/Scrt1.o] + arg [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crti.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crti.o] + arg [/usr/lib/gcc/x86_64-linux-gnu/12/crtbeginS.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/12/crtbeginS.o] + arg [-L/usr/lib/gcc/x86_64-linux-gnu/12] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/12] + arg [-L/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu] + arg [-L/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib] + arg [-L/lib/x86_64-linux-gnu] ==> dir [/lib/x86_64-linux-gnu] + arg [-L/lib/../lib] ==> dir [/lib/../lib] + arg [-L/usr/lib/x86_64-linux-gnu] ==> dir [/usr/lib/x86_64-linux-gnu] + arg [-L/usr/lib/../lib] ==> dir [/usr/lib/../lib] + arg [-L/usr/lib/gcc/x86_64-linux-gnu/12/../../..] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/12/../../..] + arg [CMakeFiles/cmTC_084f2.dir/CMakeCXXCompilerABI.cpp.o] ==> ignore + arg [-lstdc++] ==> lib [stdc++] + arg [-lm] ==> lib [m] + arg [-lgcc_s] ==> lib [gcc_s] + arg [-lgcc] ==> lib [gcc] + arg [-lc] ==> lib [c] + arg [-lgcc_s] ==> lib [gcc_s] + arg [-lgcc] ==> lib [gcc] + arg [/usr/lib/gcc/x86_64-linux-gnu/12/crtendS.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/12/crtendS.o] + arg [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crtn.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crtn.o] + collapse obj [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/Scrt1.o] ==> [/usr/lib/x86_64-linux-gnu/Scrt1.o] + collapse obj [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crti.o] ==> [/usr/lib/x86_64-linux-gnu/crti.o] + collapse obj [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crtn.o] ==> [/usr/lib/x86_64-linux-gnu/crtn.o] + collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/12] ==> [/usr/lib/gcc/x86_64-linux-gnu/12] + collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu] + collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib] ==> [/usr/lib] + collapse library dir [/lib/x86_64-linux-gnu] ==> [/lib/x86_64-linux-gnu] + collapse library dir [/lib/../lib] ==> [/lib] + collapse library dir [/usr/lib/x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu] + collapse library dir [/usr/lib/../lib] ==> [/usr/lib] + collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/12/../../..] ==> [/usr/lib] + implicit libs: [stdc++;m;gcc_s;gcc;c;gcc_s;gcc] + implicit objs: [/usr/lib/x86_64-linux-gnu/Scrt1.o;/usr/lib/x86_64-linux-gnu/crti.o;/usr/lib/gcc/x86_64-linux-gnu/12/crtbeginS.o;/usr/lib/gcc/x86_64-linux-gnu/12/crtendS.o;/usr/lib/x86_64-linux-gnu/crtn.o] + implicit dirs: [/usr/lib/gcc/x86_64-linux-gnu/12;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib] + implicit fwks: [] + + +Determining if the include file pthread.h exists passed with the following output: +Change Dir: /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/CMakeTmp + +Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_babb6/fast && /usr/bin/gmake -f CMakeFiles/cmTC_babb6.dir/build.make CMakeFiles/cmTC_babb6.dir/build +gmake[1]: Entering directory '/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/CMakeTmp' +Building CXX object CMakeFiles/cmTC_babb6.dir/CheckIncludeFile.cxx.o +/usr/bin/c++ -o CMakeFiles/cmTC_babb6.dir/CheckIncludeFile.cxx.o -c /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/CMakeTmp/CheckIncludeFile.cxx +Linking CXX executable cmTC_babb6 +/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_babb6.dir/link.txt --verbose=1 +/usr/bin/c++ CMakeFiles/cmTC_babb6.dir/CheckIncludeFile.cxx.o -o cmTC_babb6 +gmake[1]: Leaving directory '/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/CMakeTmp' + + + +Performing C++ SOURCE FILE Test CMAKE_HAVE_LIBC_PTHREAD succeeded with the following output: +Change Dir: /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/CMakeTmp + +Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_9353b/fast && /usr/bin/gmake -f CMakeFiles/cmTC_9353b.dir/build.make CMakeFiles/cmTC_9353b.dir/build +gmake[1]: Entering directory '/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/CMakeTmp' +Building CXX object CMakeFiles/cmTC_9353b.dir/src.cxx.o +/usr/bin/c++ -DCMAKE_HAVE_LIBC_PTHREAD -o CMakeFiles/cmTC_9353b.dir/src.cxx.o -c /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/CMakeTmp/src.cxx +Linking CXX executable cmTC_9353b +/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_9353b.dir/link.txt --verbose=1 +/usr/bin/c++ CMakeFiles/cmTC_9353b.dir/src.cxx.o -o cmTC_9353b +gmake[1]: Leaving directory '/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/CMakeTmp' + + +Source file was: +#include + +static void* test_func(void* data) +{ + return data; +} + +int main(void) +{ + pthread_t thread; + pthread_create(&thread, NULL, test_func, NULL); + pthread_detach(thread); + pthread_cancel(thread); + pthread_join(thread, NULL); + pthread_atfork(NULL, NULL, NULL); + pthread_exit(NULL); + + return 0; +} + diff --git a/src/main/cpp/jni/build/CMakeFiles/Makefile.cmake b/src/main/cpp/jni/build/CMakeFiles/Makefile.cmake new file mode 100644 index 00000000000..189f3dabb20 --- /dev/null +++ b/src/main/cpp/jni/build/CMakeFiles/Makefile.cmake @@ -0,0 +1,61 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# The generator used is: +set(CMAKE_DEPENDS_GENERATOR "Unix Makefiles") + +# The top level Makefile was generated from the following files: +set(CMAKE_MAKEFILE_DEPENDS + "CMakeCache.txt" + "../CMakeLists.txt" + "CMakeFiles/3.22.1/CMakeCXXCompiler.cmake" + "CMakeFiles/3.22.1/CMakeSystem.cmake" + "../common/CMakeLists.txt" + "../driver/CMakeLists.txt" + "../runtime/CMakeLists.txt" + "/usr/share/cmake-3.22/Modules/CMakeCXXInformation.cmake" + "/usr/share/cmake-3.22/Modules/CMakeCommonLanguageInclude.cmake" + "/usr/share/cmake-3.22/Modules/CMakeFindJavaCommon.cmake" + "/usr/share/cmake-3.22/Modules/CMakeGenericSystem.cmake" + "/usr/share/cmake-3.22/Modules/CMakeInitializeConfigs.cmake" + "/usr/share/cmake-3.22/Modules/CMakeLanguageInformation.cmake" + "/usr/share/cmake-3.22/Modules/CMakeSystemSpecificInformation.cmake" + "/usr/share/cmake-3.22/Modules/CMakeSystemSpecificInitialize.cmake" + "/usr/share/cmake-3.22/Modules/CheckCXXSourceCompiles.cmake" + "/usr/share/cmake-3.22/Modules/CheckIncludeFileCXX.cmake" + "/usr/share/cmake-3.22/Modules/CheckLibraryExists.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/CMakeCommonCompilerMacros.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/GNU-CXX.cmake" + "/usr/share/cmake-3.22/Modules/Compiler/GNU.cmake" + "/usr/share/cmake-3.22/Modules/FindCUDAToolkit.cmake" + "/usr/share/cmake-3.22/Modules/FindJNI.cmake" + "/usr/share/cmake-3.22/Modules/FindPackageHandleStandardArgs.cmake" + "/usr/share/cmake-3.22/Modules/FindPackageMessage.cmake" + "/usr/share/cmake-3.22/Modules/FindThreads.cmake" + "/usr/share/cmake-3.22/Modules/Internal/CheckSourceCompiles.cmake" + "/usr/share/cmake-3.22/Modules/Platform/Linux-GNU-CXX.cmake" + "/usr/share/cmake-3.22/Modules/Platform/Linux-GNU.cmake" + "/usr/share/cmake-3.22/Modules/Platform/Linux.cmake" + "/usr/share/cmake-3.22/Modules/Platform/UnixPaths.cmake" + ) + +# The corresponding makefile is: +set(CMAKE_MAKEFILE_OUTPUTS + "Makefile" + "CMakeFiles/cmake.check_cache" + ) + +# Byproducts of CMake generate step: +set(CMAKE_MAKEFILE_PRODUCTS + "CMakeFiles/CMakeDirectoryInformation.cmake" + "common/CMakeFiles/CMakeDirectoryInformation.cmake" + "runtime/CMakeFiles/CMakeDirectoryInformation.cmake" + "driver/CMakeFiles/CMakeDirectoryInformation.cmake" + ) + +# Dependency information for all targets: +set(CMAKE_DEPEND_INFO_FILES + "common/CMakeFiles/CuJavaCommonJNI.dir/DependInfo.cmake" + "runtime/CMakeFiles/CuJavaRuntime.dir/DependInfo.cmake" + "driver/CMakeFiles/CuJavaDriver.dir/DependInfo.cmake" + ) diff --git a/src/main/cpp/jni/build/CMakeFiles/Makefile2 b/src/main/cpp/jni/build/CMakeFiles/Makefile2 new file mode 100644 index 00000000000..e5c5f6a62b5 --- /dev/null +++ b/src/main/cpp/jni/build/CMakeFiles/Makefile2 @@ -0,0 +1,215 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# Default target executed when no arguments are given to make. +default_target: all +.PHONY : default_target + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + +# Disable VCS-based implicit rules. +% : %,v + +# Disable VCS-based implicit rules. +% : RCS/% + +# Disable VCS-based implicit rules. +% : RCS/%,v + +# Disable VCS-based implicit rules. +% : SCCS/s.% + +# Disable VCS-based implicit rules. +% : s.% + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /usr/bin/cmake + +# The command to remove a file. +RM = /usr/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /home/rene/projects/systemds/src/main/cpp/jni + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /home/rene/projects/systemds/src/main/cpp/jni/build + +#============================================================================= +# Directory level rules for the build root directory + +# The main recursive "all" target. +all: common/all +all: runtime/all +all: driver/all +.PHONY : all + +# The main recursive "preinstall" target. +preinstall: common/preinstall +preinstall: runtime/preinstall +preinstall: driver/preinstall +.PHONY : preinstall + +# The main recursive "clean" target. +clean: common/clean +clean: runtime/clean +clean: driver/clean +.PHONY : clean + +#============================================================================= +# Directory level rules for directory common + +# Recursive "all" directory target. +common/all: common/CMakeFiles/CuJavaCommonJNI.dir/all +.PHONY : common/all + +# Recursive "preinstall" directory target. +common/preinstall: +.PHONY : common/preinstall + +# Recursive "clean" directory target. +common/clean: common/CMakeFiles/CuJavaCommonJNI.dir/clean +.PHONY : common/clean + +#============================================================================= +# Directory level rules for directory driver + +# Recursive "all" directory target. +driver/all: driver/CMakeFiles/CuJavaDriver.dir/all +.PHONY : driver/all + +# Recursive "preinstall" directory target. +driver/preinstall: +.PHONY : driver/preinstall + +# Recursive "clean" directory target. +driver/clean: driver/CMakeFiles/CuJavaDriver.dir/clean +.PHONY : driver/clean + +#============================================================================= +# Directory level rules for directory runtime + +# Recursive "all" directory target. +runtime/all: runtime/CMakeFiles/CuJavaRuntime.dir/all +.PHONY : runtime/all + +# Recursive "preinstall" directory target. +runtime/preinstall: +.PHONY : runtime/preinstall + +# Recursive "clean" directory target. +runtime/clean: runtime/CMakeFiles/CuJavaRuntime.dir/clean +.PHONY : runtime/clean + +#============================================================================= +# Target rules for target common/CMakeFiles/CuJavaCommonJNI.dir + +# All Build rule for target. +common/CMakeFiles/CuJavaCommonJNI.dir/all: + $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/depend + $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles --progress-num=1,2,3,4 "Built target CuJavaCommonJNI" +.PHONY : common/CMakeFiles/CuJavaCommonJNI.dir/all + +# Build rule for subdir invocation for target. +common/CMakeFiles/CuJavaCommonJNI.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles 4 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 common/CMakeFiles/CuJavaCommonJNI.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles 0 +.PHONY : common/CMakeFiles/CuJavaCommonJNI.dir/rule + +# Convenience name for target. +CuJavaCommonJNI: common/CMakeFiles/CuJavaCommonJNI.dir/rule +.PHONY : CuJavaCommonJNI + +# clean rule for target. +common/CMakeFiles/CuJavaCommonJNI.dir/clean: + $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/clean +.PHONY : common/CMakeFiles/CuJavaCommonJNI.dir/clean + +#============================================================================= +# Target rules for target runtime/CMakeFiles/CuJavaRuntime.dir + +# All Build rule for target. +runtime/CMakeFiles/CuJavaRuntime.dir/all: common/CMakeFiles/CuJavaCommonJNI.dir/all + $(MAKE) $(MAKESILENT) -f runtime/CMakeFiles/CuJavaRuntime.dir/build.make runtime/CMakeFiles/CuJavaRuntime.dir/depend + $(MAKE) $(MAKESILENT) -f runtime/CMakeFiles/CuJavaRuntime.dir/build.make runtime/CMakeFiles/CuJavaRuntime.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles --progress-num=7,8 "Built target CuJavaRuntime" +.PHONY : runtime/CMakeFiles/CuJavaRuntime.dir/all + +# Build rule for subdir invocation for target. +runtime/CMakeFiles/CuJavaRuntime.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles 6 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 runtime/CMakeFiles/CuJavaRuntime.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles 0 +.PHONY : runtime/CMakeFiles/CuJavaRuntime.dir/rule + +# Convenience name for target. +CuJavaRuntime: runtime/CMakeFiles/CuJavaRuntime.dir/rule +.PHONY : CuJavaRuntime + +# clean rule for target. +runtime/CMakeFiles/CuJavaRuntime.dir/clean: + $(MAKE) $(MAKESILENT) -f runtime/CMakeFiles/CuJavaRuntime.dir/build.make runtime/CMakeFiles/CuJavaRuntime.dir/clean +.PHONY : runtime/CMakeFiles/CuJavaRuntime.dir/clean + +#============================================================================= +# Target rules for target driver/CMakeFiles/CuJavaDriver.dir + +# All Build rule for target. +driver/CMakeFiles/CuJavaDriver.dir/all: + $(MAKE) $(MAKESILENT) -f driver/CMakeFiles/CuJavaDriver.dir/build.make driver/CMakeFiles/CuJavaDriver.dir/depend + $(MAKE) $(MAKESILENT) -f driver/CMakeFiles/CuJavaDriver.dir/build.make driver/CMakeFiles/CuJavaDriver.dir/build + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles --progress-num=5,6 "Built target CuJavaDriver" +.PHONY : driver/CMakeFiles/CuJavaDriver.dir/all + +# Build rule for subdir invocation for target. +driver/CMakeFiles/CuJavaDriver.dir/rule: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles 2 + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 driver/CMakeFiles/CuJavaDriver.dir/all + $(CMAKE_COMMAND) -E cmake_progress_start /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles 0 +.PHONY : driver/CMakeFiles/CuJavaDriver.dir/rule + +# Convenience name for target. +CuJavaDriver: driver/CMakeFiles/CuJavaDriver.dir/rule +.PHONY : CuJavaDriver + +# clean rule for target. +driver/CMakeFiles/CuJavaDriver.dir/clean: + $(MAKE) $(MAKESILENT) -f driver/CMakeFiles/CuJavaDriver.dir/build.make driver/CMakeFiles/CuJavaDriver.dir/clean +.PHONY : driver/CMakeFiles/CuJavaDriver.dir/clean + +#============================================================================= +# Special targets to cleanup operation of make. + +# Special rule to run CMake to check the build system integrity. +# No rule that depends on this can have commands that come from listfiles +# because they might be regenerated. +cmake_check_build_system: + $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 +.PHONY : cmake_check_build_system + diff --git a/src/main/cpp/jni/build/CMakeFiles/TargetDirectories.txt b/src/main/cpp/jni/build/CMakeFiles/TargetDirectories.txt new file mode 100644 index 00000000000..f848889d5ed --- /dev/null +++ b/src/main/cpp/jni/build/CMakeFiles/TargetDirectories.txt @@ -0,0 +1,11 @@ +/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/edit_cache.dir +/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/rebuild_cache.dir +/home/rene/projects/systemds/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir +/home/rene/projects/systemds/src/main/cpp/jni/build/common/CMakeFiles/edit_cache.dir +/home/rene/projects/systemds/src/main/cpp/jni/build/common/CMakeFiles/rebuild_cache.dir +/home/rene/projects/systemds/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir +/home/rene/projects/systemds/src/main/cpp/jni/build/runtime/CMakeFiles/edit_cache.dir +/home/rene/projects/systemds/src/main/cpp/jni/build/runtime/CMakeFiles/rebuild_cache.dir +/home/rene/projects/systemds/src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir +/home/rene/projects/systemds/src/main/cpp/jni/build/driver/CMakeFiles/edit_cache.dir +/home/rene/projects/systemds/src/main/cpp/jni/build/driver/CMakeFiles/rebuild_cache.dir diff --git a/src/main/cpp/jni/build/CMakeFiles/cmake.check_cache b/src/main/cpp/jni/build/CMakeFiles/cmake.check_cache new file mode 100644 index 00000000000..3dccd731726 --- /dev/null +++ b/src/main/cpp/jni/build/CMakeFiles/cmake.check_cache @@ -0,0 +1 @@ +# This file is generated by cmake for dependency checking of the CMakeCache.txt file diff --git a/src/main/cpp/jni/build/CMakeFiles/progress.marks b/src/main/cpp/jni/build/CMakeFiles/progress.marks new file mode 100644 index 00000000000..45a4fb75db8 --- /dev/null +++ b/src/main/cpp/jni/build/CMakeFiles/progress.marks @@ -0,0 +1 @@ +8 diff --git a/src/main/cpp/jni/build/Makefile b/src/main/cpp/jni/build/Makefile new file mode 100644 index 00000000000..3a163defd2f --- /dev/null +++ b/src/main/cpp/jni/build/Makefile @@ -0,0 +1,182 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# Default target executed when no arguments are given to make. +default_target: all +.PHONY : default_target + +# Allow only one "make -f Makefile2" at a time, but pass parallelism. +.NOTPARALLEL: + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + +# Disable VCS-based implicit rules. +% : %,v + +# Disable VCS-based implicit rules. +% : RCS/% + +# Disable VCS-based implicit rules. +% : RCS/%,v + +# Disable VCS-based implicit rules. +% : SCCS/s.% + +# Disable VCS-based implicit rules. +% : s.% + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /usr/bin/cmake + +# The command to remove a file. +RM = /usr/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /home/rene/projects/systemds/src/main/cpp/jni + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /home/rene/projects/systemds/src/main/cpp/jni/build + +#============================================================================= +# Targets provided globally by CMake. + +# Special rule for the target edit_cache +edit_cache: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "No interactive CMake dialog available..." + /usr/bin/cmake -E echo No\ interactive\ CMake\ dialog\ available. +.PHONY : edit_cache + +# Special rule for the target edit_cache +edit_cache/fast: edit_cache +.PHONY : edit_cache/fast + +# Special rule for the target rebuild_cache +rebuild_cache: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..." + /usr/bin/cmake --regenerate-during-build -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) +.PHONY : rebuild_cache + +# Special rule for the target rebuild_cache +rebuild_cache/fast: rebuild_cache +.PHONY : rebuild_cache/fast + +# The main all target +all: cmake_check_build_system + $(CMAKE_COMMAND) -E cmake_progress_start /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles /home/rene/projects/systemds/src/main/cpp/jni/build//CMakeFiles/progress.marks + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 all + $(CMAKE_COMMAND) -E cmake_progress_start /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles 0 +.PHONY : all + +# The main clean target +clean: + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 clean +.PHONY : clean + +# The main clean target +clean/fast: clean +.PHONY : clean/fast + +# Prepare targets for installation. +preinstall: all + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 preinstall +.PHONY : preinstall + +# Prepare targets for installation. +preinstall/fast: + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 preinstall +.PHONY : preinstall/fast + +# clear depends +depend: + $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1 +.PHONY : depend + +#============================================================================= +# Target rules for targets named CuJavaCommonJNI + +# Build rule for target. +CuJavaCommonJNI: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 CuJavaCommonJNI +.PHONY : CuJavaCommonJNI + +# fast build rule for target. +CuJavaCommonJNI/fast: + $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/build +.PHONY : CuJavaCommonJNI/fast + +#============================================================================= +# Target rules for targets named CuJavaRuntime + +# Build rule for target. +CuJavaRuntime: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 CuJavaRuntime +.PHONY : CuJavaRuntime + +# fast build rule for target. +CuJavaRuntime/fast: + $(MAKE) $(MAKESILENT) -f runtime/CMakeFiles/CuJavaRuntime.dir/build.make runtime/CMakeFiles/CuJavaRuntime.dir/build +.PHONY : CuJavaRuntime/fast + +#============================================================================= +# Target rules for targets named CuJavaDriver + +# Build rule for target. +CuJavaDriver: cmake_check_build_system + $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 CuJavaDriver +.PHONY : CuJavaDriver + +# fast build rule for target. +CuJavaDriver/fast: + $(MAKE) $(MAKESILENT) -f driver/CMakeFiles/CuJavaDriver.dir/build.make driver/CMakeFiles/CuJavaDriver.dir/build +.PHONY : CuJavaDriver/fast + +# Help Target +help: + @echo "The following are some of the valid targets for this Makefile:" + @echo "... all (the default if no target is provided)" + @echo "... clean" + @echo "... depend" + @echo "... edit_cache" + @echo "... rebuild_cache" + @echo "... CuJavaCommonJNI" + @echo "... CuJavaDriver" + @echo "... CuJavaRuntime" +.PHONY : help + + + +#============================================================================= +# Special targets to cleanup operation of make. + +# Special rule to run CMake to check the build system integrity. +# No rule that depends on this can have commands that come from listfiles +# because they might be regenerated. +cmake_check_build_system: + $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 +.PHONY : cmake_check_build_system + diff --git a/src/main/cpp/jni/build/cmake_install.cmake b/src/main/cpp/jni/build/cmake_install.cmake new file mode 100644 index 00000000000..f402264ed15 --- /dev/null +++ b/src/main/cpp/jni/build/cmake_install.cmake @@ -0,0 +1,69 @@ +# Install script for directory: /home/rene/projects/systemds/src/main/cpp/jni + +# Set the install prefix +if(NOT DEFINED CMAKE_INSTALL_PREFIX) + set(CMAKE_INSTALL_PREFIX "/usr/local") +endif() +string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}") + +# Set the install configuration name. +if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME) + if(BUILD_TYPE) + string(REGEX REPLACE "^[^A-Za-z0-9_]+" "" + CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}") + else() + set(CMAKE_INSTALL_CONFIG_NAME "Release") + endif() + message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"") +endif() + +# Set the component getting installed. +if(NOT CMAKE_INSTALL_COMPONENT) + if(COMPONENT) + message(STATUS "Install component: \"${COMPONENT}\"") + set(CMAKE_INSTALL_COMPONENT "${COMPONENT}") + else() + set(CMAKE_INSTALL_COMPONENT) + endif() +endif() + +# Install shared libraries without execute permission? +if(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE) + set(CMAKE_INSTALL_SO_NO_EXE "1") +endif() + +# Is this installation the result of a crosscompile? +if(NOT DEFINED CMAKE_CROSSCOMPILING) + set(CMAKE_CROSSCOMPILING "FALSE") +endif() + +# Set default install directory permissions. +if(NOT DEFINED CMAKE_OBJDUMP) + set(CMAKE_OBJDUMP "/usr/bin/objdump") +endif() + +if(NOT CMAKE_INSTALL_LOCAL_ONLY) + # Include the install script for the subdirectory. + include("/home/rene/projects/systemds/src/main/cpp/jni/build/common/cmake_install.cmake") +endif() + +if(NOT CMAKE_INSTALL_LOCAL_ONLY) + # Include the install script for the subdirectory. + include("/home/rene/projects/systemds/src/main/cpp/jni/build/runtime/cmake_install.cmake") +endif() + +if(NOT CMAKE_INSTALL_LOCAL_ONLY) + # Include the install script for the subdirectory. + include("/home/rene/projects/systemds/src/main/cpp/jni/build/driver/cmake_install.cmake") +endif() + +if(CMAKE_INSTALL_COMPONENT) + set(CMAKE_INSTALL_MANIFEST "install_manifest_${CMAKE_INSTALL_COMPONENT}.txt") +else() + set(CMAKE_INSTALL_MANIFEST "install_manifest.txt") +endif() + +string(REPLACE ";" "\n" CMAKE_INSTALL_MANIFEST_CONTENT + "${CMAKE_INSTALL_MANIFEST_FILES}") +file(WRITE "/home/rene/projects/systemds/src/main/cpp/jni/build/${CMAKE_INSTALL_MANIFEST}" + "${CMAKE_INSTALL_MANIFEST_CONTENT}") diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CMakeDirectoryInformation.cmake b/src/main/cpp/jni/build/common/CMakeFiles/CMakeDirectoryInformation.cmake new file mode 100644 index 00000000000..b9b869f5a2e --- /dev/null +++ b/src/main/cpp/jni/build/common/CMakeFiles/CMakeDirectoryInformation.cmake @@ -0,0 +1,16 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# Relative path conversion top directories. +set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/home/rene/projects/systemds/src/main/cpp/jni") +set(CMAKE_RELATIVE_PATH_TOP_BINARY "/home/rene/projects/systemds/src/main/cpp/jni/build") + +# Force unix paths in dependencies. +set(CMAKE_FORCE_UNIX_PATHS 1) + + +# The C and CXX include file regular expressions for this directory. +set(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$") +set(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$") +set(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN}) +set(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN}) diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/DependInfo.cmake b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/DependInfo.cmake new file mode 100644 index 00000000000..16ff2a011d6 --- /dev/null +++ b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/DependInfo.cmake @@ -0,0 +1,21 @@ + +# Consider dependencies only in project. +set(CMAKE_DEPENDS_IN_PROJECT_ONLY OFF) + +# The set of languages for which implicit dependencies are needed: +set(CMAKE_DEPENDS_LANGUAGES + ) + +# The set of dependency files which are needed: +set(CMAKE_DEPENDS_DEPENDENCY_FILES + "/home/rene/projects/systemds/src/main/cpp/jni/common/cujava_jni_utils.cpp" "common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o" "gcc" "common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o.d" + "/home/rene/projects/systemds/src/main/cpp/jni/common/cujava_logger.cpp" "common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o" "gcc" "common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o.d" + "/home/rene/projects/systemds/src/main/cpp/jni/common/cujava_pointer_utils.cpp" "common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o" "gcc" "common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o.d" + ) + +# Targets to which this target links. +set(CMAKE_TARGET_LINKED_INFO_FILES + ) + +# Fortran module output directory. +set(CMAKE_Fortran_TARGET_MODULE_DIR "") diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/build.make b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/build.make new file mode 100644 index 00000000000..9999564f42a --- /dev/null +++ b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/build.make @@ -0,0 +1,143 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# Delete rule output on recipe failure. +.DELETE_ON_ERROR: + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + +# Disable VCS-based implicit rules. +% : %,v + +# Disable VCS-based implicit rules. +% : RCS/% + +# Disable VCS-based implicit rules. +% : RCS/%,v + +# Disable VCS-based implicit rules. +% : SCCS/s.% + +# Disable VCS-based implicit rules. +% : s.% + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /usr/bin/cmake + +# The command to remove a file. +RM = /usr/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /home/rene/projects/systemds/src/main/cpp/jni + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /home/rene/projects/systemds/src/main/cpp/jni/build + +# Include any dependencies generated for this target. +include common/CMakeFiles/CuJavaCommonJNI.dir/depend.make +# Include any dependencies generated by the compiler for this target. +include common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.make + +# Include the progress variables for this target. +include common/CMakeFiles/CuJavaCommonJNI.dir/progress.make + +# Include the compile flags for this target's objects. +include common/CMakeFiles/CuJavaCommonJNI.dir/flags.make + +common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o: common/CMakeFiles/CuJavaCommonJNI.dir/flags.make +common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o: ../common/cujava_logger.cpp +common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o: common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.ts + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building CXX object common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o" + cd /home/rene/projects/systemds/src/main/cpp/jni/build/common && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o -MF CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o.d -o CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o -c /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_logger.cpp + +common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.i" + cd /home/rene/projects/systemds/src/main/cpp/jni/build/common && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_logger.cpp > CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.i + +common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.s" + cd /home/rene/projects/systemds/src/main/cpp/jni/build/common && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_logger.cpp -o CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.s + +common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o: common/CMakeFiles/CuJavaCommonJNI.dir/flags.make +common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o: ../common/cujava_jni_utils.cpp +common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o: common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.ts + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Building CXX object common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o" + cd /home/rene/projects/systemds/src/main/cpp/jni/build/common && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o -MF CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o.d -o CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o -c /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_jni_utils.cpp + +common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.i" + cd /home/rene/projects/systemds/src/main/cpp/jni/build/common && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_jni_utils.cpp > CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.i + +common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.s" + cd /home/rene/projects/systemds/src/main/cpp/jni/build/common && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_jni_utils.cpp -o CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.s + +common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o: common/CMakeFiles/CuJavaCommonJNI.dir/flags.make +common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o: ../common/cujava_pointer_utils.cpp +common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o: common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.ts + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_3) "Building CXX object common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o" + cd /home/rene/projects/systemds/src/main/cpp/jni/build/common && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o -MF CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o.d -o CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o -c /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_pointer_utils.cpp + +common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.i" + cd /home/rene/projects/systemds/src/main/cpp/jni/build/common && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_pointer_utils.cpp > CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.i + +common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.s" + cd /home/rene/projects/systemds/src/main/cpp/jni/build/common && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_pointer_utils.cpp -o CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.s + +# Object files for target CuJavaCommonJNI +CuJavaCommonJNI_OBJECTS = \ +"CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o" \ +"CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o" \ +"CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o" + +# External object files for target CuJavaCommonJNI +CuJavaCommonJNI_EXTERNAL_OBJECTS = + +/home/rene/projects/systemds/src/main/cpp/lib/libCuJavaCommonJNI.a: common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o +/home/rene/projects/systemds/src/main/cpp/lib/libCuJavaCommonJNI.a: common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o +/home/rene/projects/systemds/src/main/cpp/lib/libCuJavaCommonJNI.a: common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o +/home/rene/projects/systemds/src/main/cpp/lib/libCuJavaCommonJNI.a: common/CMakeFiles/CuJavaCommonJNI.dir/build.make +/home/rene/projects/systemds/src/main/cpp/lib/libCuJavaCommonJNI.a: common/CMakeFiles/CuJavaCommonJNI.dir/link.txt + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_4) "Linking CXX static library /home/rene/projects/systemds/src/main/cpp/lib/libCuJavaCommonJNI.a" + cd /home/rene/projects/systemds/src/main/cpp/jni/build/common && $(CMAKE_COMMAND) -P CMakeFiles/CuJavaCommonJNI.dir/cmake_clean_target.cmake + cd /home/rene/projects/systemds/src/main/cpp/jni/build/common && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/CuJavaCommonJNI.dir/link.txt --verbose=$(VERBOSE) + +# Rule to build all files generated by this target. +common/CMakeFiles/CuJavaCommonJNI.dir/build: /home/rene/projects/systemds/src/main/cpp/lib/libCuJavaCommonJNI.a +.PHONY : common/CMakeFiles/CuJavaCommonJNI.dir/build + +common/CMakeFiles/CuJavaCommonJNI.dir/clean: + cd /home/rene/projects/systemds/src/main/cpp/jni/build/common && $(CMAKE_COMMAND) -P CMakeFiles/CuJavaCommonJNI.dir/cmake_clean.cmake +.PHONY : common/CMakeFiles/CuJavaCommonJNI.dir/clean + +common/CMakeFiles/CuJavaCommonJNI.dir/depend: + cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/rene/projects/systemds/src/main/cpp/jni /home/rene/projects/systemds/src/main/cpp/jni/common /home/rene/projects/systemds/src/main/cpp/jni/build /home/rene/projects/systemds/src/main/cpp/jni/build/common /home/rene/projects/systemds/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/DependInfo.cmake --color=$(COLOR) +.PHONY : common/CMakeFiles/CuJavaCommonJNI.dir/depend + diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cmake_clean.cmake b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cmake_clean.cmake new file mode 100644 index 00000000000..57aa3559e0f --- /dev/null +++ b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cmake_clean.cmake @@ -0,0 +1,15 @@ +file(REMOVE_RECURSE + "/home/rene/projects/systemds/src/main/cpp/lib/libCuJavaCommonJNI.a" + "/home/rene/projects/systemds/src/main/cpp/lib/libCuJavaCommonJNI.pdb" + "CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o" + "CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o.d" + "CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o" + "CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o.d" + "CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o" + "CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o.d" +) + +# Per-language clean rules from dependency scanning. +foreach(lang CXX) + include(CMakeFiles/CuJavaCommonJNI.dir/cmake_clean_${lang}.cmake OPTIONAL) +endforeach() diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cmake_clean_target.cmake b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cmake_clean_target.cmake new file mode 100644 index 00000000000..70103b5824a --- /dev/null +++ b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cmake_clean_target.cmake @@ -0,0 +1,3 @@ +file(REMOVE_RECURSE + "/home/rene/projects/systemds/src/main/cpp/lib/libCuJavaCommonJNI.a" +) diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.internal b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.internal new file mode 100644 index 00000000000..85c445a15a5 --- /dev/null +++ b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.internal @@ -0,0 +1,131 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o + /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_jni_utils.cpp + /usr/include/stdc-predef.h + /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_jni_utils.hpp + /usr/lib/jvm/java-11-openjdk-amd64/include/jni.h + /usr/include/stdio.h + /usr/include/x86_64-linux-gnu/bits/libc-header-start.h + /usr/include/features.h + /usr/include/features-time64.h + /usr/include/x86_64-linux-gnu/bits/wordsize.h + /usr/include/x86_64-linux-gnu/bits/timesize.h + /usr/include/x86_64-linux-gnu/sys/cdefs.h + /usr/include/x86_64-linux-gnu/bits/long-double.h + /usr/include/x86_64-linux-gnu/gnu/stubs.h + /usr/include/x86_64-linux-gnu/gnu/stubs-64.h + /usr/lib/gcc/x86_64-linux-gnu/12/include/stddef.h + /usr/lib/gcc/x86_64-linux-gnu/12/include/stdarg.h + /usr/include/x86_64-linux-gnu/bits/types.h + /usr/include/x86_64-linux-gnu/bits/typesizes.h + /usr/include/x86_64-linux-gnu/bits/time64.h + /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h + /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h + /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h + /usr/include/x86_64-linux-gnu/bits/types/__FILE.h + /usr/include/x86_64-linux-gnu/bits/types/FILE.h + /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h + /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h + /usr/include/x86_64-linux-gnu/bits/stdio_lim.h + /usr/include/x86_64-linux-gnu/bits/floatn.h + /usr/include/x86_64-linux-gnu/bits/floatn-common.h + /usr/include/x86_64-linux-gnu/bits/stdio.h + /usr/include/x86_64-linux-gnu/bits/stdio2.h + /usr/lib/jvm/java-11-openjdk-amd64/include/linux/jni_md.h + /usr/include/c++/12/new + /usr/include/x86_64-linux-gnu/c++/12/bits/c++config.h + /usr/include/x86_64-linux-gnu/c++/12/bits/os_defines.h + /usr/include/x86_64-linux-gnu/c++/12/bits/cpu_defines.h + /usr/include/c++/12/bits/exception.h + /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_logger.hpp + /usr/include/c++/12/cstdarg + /usr/include/c++/12/cstdio + +common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o + /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_logger.cpp + /usr/include/stdc-predef.h + /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_logger.hpp + /usr/include/c++/12/cstdarg + /usr/include/x86_64-linux-gnu/c++/12/bits/c++config.h + /usr/include/x86_64-linux-gnu/c++/12/bits/os_defines.h + /usr/include/features.h + /usr/include/features-time64.h + /usr/include/x86_64-linux-gnu/bits/wordsize.h + /usr/include/x86_64-linux-gnu/bits/timesize.h + /usr/include/x86_64-linux-gnu/sys/cdefs.h + /usr/include/x86_64-linux-gnu/bits/long-double.h + /usr/include/x86_64-linux-gnu/gnu/stubs.h + /usr/include/x86_64-linux-gnu/gnu/stubs-64.h + /usr/include/x86_64-linux-gnu/c++/12/bits/cpu_defines.h + /usr/lib/gcc/x86_64-linux-gnu/12/include/stdarg.h + /usr/include/c++/12/cstdio + /usr/include/stdio.h + /usr/include/x86_64-linux-gnu/bits/libc-header-start.h + /usr/lib/gcc/x86_64-linux-gnu/12/include/stddef.h + /usr/include/x86_64-linux-gnu/bits/types.h + /usr/include/x86_64-linux-gnu/bits/typesizes.h + /usr/include/x86_64-linux-gnu/bits/time64.h + /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h + /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h + /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h + /usr/include/x86_64-linux-gnu/bits/types/__FILE.h + /usr/include/x86_64-linux-gnu/bits/types/FILE.h + /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h + /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h + /usr/include/x86_64-linux-gnu/bits/stdio_lim.h + /usr/include/x86_64-linux-gnu/bits/floatn.h + /usr/include/x86_64-linux-gnu/bits/floatn-common.h + /usr/include/x86_64-linux-gnu/bits/stdio.h + /usr/include/x86_64-linux-gnu/bits/stdio2.h + +common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o + /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_pointer_utils.cpp + /usr/include/stdc-predef.h + /usr/lib/jvm/java-11-openjdk-amd64/include/jni.h + /usr/include/stdio.h + /usr/include/x86_64-linux-gnu/bits/libc-header-start.h + /usr/include/features.h + /usr/include/features-time64.h + /usr/include/x86_64-linux-gnu/bits/wordsize.h + /usr/include/x86_64-linux-gnu/bits/timesize.h + /usr/include/x86_64-linux-gnu/sys/cdefs.h + /usr/include/x86_64-linux-gnu/bits/long-double.h + /usr/include/x86_64-linux-gnu/gnu/stubs.h + /usr/include/x86_64-linux-gnu/gnu/stubs-64.h + /usr/lib/gcc/x86_64-linux-gnu/12/include/stddef.h + /usr/lib/gcc/x86_64-linux-gnu/12/include/stdarg.h + /usr/include/x86_64-linux-gnu/bits/types.h + /usr/include/x86_64-linux-gnu/bits/typesizes.h + /usr/include/x86_64-linux-gnu/bits/time64.h + /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h + /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h + /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h + /usr/include/x86_64-linux-gnu/bits/types/__FILE.h + /usr/include/x86_64-linux-gnu/bits/types/FILE.h + /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h + /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h + /usr/include/x86_64-linux-gnu/bits/stdio_lim.h + /usr/include/x86_64-linux-gnu/bits/floatn.h + /usr/include/x86_64-linux-gnu/bits/floatn-common.h + /usr/include/x86_64-linux-gnu/bits/stdio.h + /usr/include/x86_64-linux-gnu/bits/stdio2.h + /usr/lib/jvm/java-11-openjdk-amd64/include/linux/jni_md.h + /usr/include/c++/12/cstdint + /usr/include/x86_64-linux-gnu/c++/12/bits/c++config.h + /usr/include/x86_64-linux-gnu/c++/12/bits/os_defines.h + /usr/include/x86_64-linux-gnu/c++/12/bits/cpu_defines.h + /usr/lib/gcc/x86_64-linux-gnu/12/include/stdint.h + /usr/include/stdint.h + /usr/include/x86_64-linux-gnu/bits/wchar.h + /usr/include/x86_64-linux-gnu/bits/stdint-intn.h + /usr/include/x86_64-linux-gnu/bits/stdint-uintn.h + /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_logger.hpp + /usr/include/c++/12/cstdarg + /usr/include/c++/12/cstdio + /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_jni_utils.hpp + /usr/include/c++/12/new + /usr/include/c++/12/bits/exception.h + /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_pointer_utils.hpp + diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.make b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.make new file mode 100644 index 00000000000..09c383d6da5 --- /dev/null +++ b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.make @@ -0,0 +1,226 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o: ../common/cujava_jni_utils.cpp \ + /usr/include/stdc-predef.h \ + ../common/cujava_jni_utils.hpp \ + /usr/lib/jvm/java-11-openjdk-amd64/include/jni.h \ + /usr/include/stdio.h \ + /usr/include/x86_64-linux-gnu/bits/libc-header-start.h \ + /usr/include/features.h \ + /usr/include/features-time64.h \ + /usr/include/x86_64-linux-gnu/bits/wordsize.h \ + /usr/include/x86_64-linux-gnu/bits/timesize.h \ + /usr/include/x86_64-linux-gnu/sys/cdefs.h \ + /usr/include/x86_64-linux-gnu/bits/long-double.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ + /usr/lib/gcc/x86_64-linux-gnu/12/include/stddef.h \ + /usr/lib/gcc/x86_64-linux-gnu/12/include/stdarg.h \ + /usr/include/x86_64-linux-gnu/bits/types.h \ + /usr/include/x86_64-linux-gnu/bits/typesizes.h \ + /usr/include/x86_64-linux-gnu/bits/time64.h \ + /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h \ + /usr/include/x86_64-linux-gnu/bits/stdio_lim.h \ + /usr/include/x86_64-linux-gnu/bits/floatn.h \ + /usr/include/x86_64-linux-gnu/bits/floatn-common.h \ + /usr/include/x86_64-linux-gnu/bits/stdio.h \ + /usr/include/x86_64-linux-gnu/bits/stdio2.h \ + /usr/lib/jvm/java-11-openjdk-amd64/include/linux/jni_md.h \ + /usr/include/c++/12/new \ + /usr/include/x86_64-linux-gnu/c++/12/bits/c++config.h \ + /usr/include/x86_64-linux-gnu/c++/12/bits/os_defines.h \ + /usr/include/x86_64-linux-gnu/c++/12/bits/cpu_defines.h \ + /usr/include/c++/12/bits/exception.h \ + ../common/cujava_logger.hpp \ + /usr/include/c++/12/cstdarg \ + /usr/include/c++/12/cstdio + +common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o: ../common/cujava_logger.cpp \ + /usr/include/stdc-predef.h \ + ../common/cujava_logger.hpp \ + /usr/include/c++/12/cstdarg \ + /usr/include/x86_64-linux-gnu/c++/12/bits/c++config.h \ + /usr/include/x86_64-linux-gnu/c++/12/bits/os_defines.h \ + /usr/include/features.h \ + /usr/include/features-time64.h \ + /usr/include/x86_64-linux-gnu/bits/wordsize.h \ + /usr/include/x86_64-linux-gnu/bits/timesize.h \ + /usr/include/x86_64-linux-gnu/sys/cdefs.h \ + /usr/include/x86_64-linux-gnu/bits/long-double.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ + /usr/include/x86_64-linux-gnu/c++/12/bits/cpu_defines.h \ + /usr/lib/gcc/x86_64-linux-gnu/12/include/stdarg.h \ + /usr/include/c++/12/cstdio \ + /usr/include/stdio.h \ + /usr/include/x86_64-linux-gnu/bits/libc-header-start.h \ + /usr/lib/gcc/x86_64-linux-gnu/12/include/stddef.h \ + /usr/include/x86_64-linux-gnu/bits/types.h \ + /usr/include/x86_64-linux-gnu/bits/typesizes.h \ + /usr/include/x86_64-linux-gnu/bits/time64.h \ + /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h \ + /usr/include/x86_64-linux-gnu/bits/stdio_lim.h \ + /usr/include/x86_64-linux-gnu/bits/floatn.h \ + /usr/include/x86_64-linux-gnu/bits/floatn-common.h \ + /usr/include/x86_64-linux-gnu/bits/stdio.h \ + /usr/include/x86_64-linux-gnu/bits/stdio2.h + +common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o: ../common/cujava_pointer_utils.cpp \ + /usr/include/stdc-predef.h \ + /usr/lib/jvm/java-11-openjdk-amd64/include/jni.h \ + /usr/include/stdio.h \ + /usr/include/x86_64-linux-gnu/bits/libc-header-start.h \ + /usr/include/features.h \ + /usr/include/features-time64.h \ + /usr/include/x86_64-linux-gnu/bits/wordsize.h \ + /usr/include/x86_64-linux-gnu/bits/timesize.h \ + /usr/include/x86_64-linux-gnu/sys/cdefs.h \ + /usr/include/x86_64-linux-gnu/bits/long-double.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ + /usr/lib/gcc/x86_64-linux-gnu/12/include/stddef.h \ + /usr/lib/gcc/x86_64-linux-gnu/12/include/stdarg.h \ + /usr/include/x86_64-linux-gnu/bits/types.h \ + /usr/include/x86_64-linux-gnu/bits/typesizes.h \ + /usr/include/x86_64-linux-gnu/bits/time64.h \ + /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h \ + /usr/include/x86_64-linux-gnu/bits/stdio_lim.h \ + /usr/include/x86_64-linux-gnu/bits/floatn.h \ + /usr/include/x86_64-linux-gnu/bits/floatn-common.h \ + /usr/include/x86_64-linux-gnu/bits/stdio.h \ + /usr/include/x86_64-linux-gnu/bits/stdio2.h \ + /usr/lib/jvm/java-11-openjdk-amd64/include/linux/jni_md.h \ + /usr/include/c++/12/cstdint \ + /usr/include/x86_64-linux-gnu/c++/12/bits/c++config.h \ + /usr/include/x86_64-linux-gnu/c++/12/bits/os_defines.h \ + /usr/include/x86_64-linux-gnu/c++/12/bits/cpu_defines.h \ + /usr/lib/gcc/x86_64-linux-gnu/12/include/stdint.h \ + /usr/include/stdint.h \ + /usr/include/x86_64-linux-gnu/bits/wchar.h \ + /usr/include/x86_64-linux-gnu/bits/stdint-intn.h \ + /usr/include/x86_64-linux-gnu/bits/stdint-uintn.h \ + ../common/cujava_logger.hpp \ + /usr/include/c++/12/cstdarg \ + /usr/include/c++/12/cstdio \ + ../common/cujava_jni_utils.hpp \ + /usr/include/c++/12/new \ + /usr/include/c++/12/bits/exception.h \ + ../common/cujava_pointer_utils.hpp + + +/usr/include/x86_64-linux-gnu/bits/stdint-intn.h: + +/usr/lib/gcc/x86_64-linux-gnu/12/include/stdint.h: + +/usr/include/c++/12/cstdint: + +../common/cujava_pointer_utils.cpp: + +/usr/include/c++/12/cstdio: + +/usr/include/x86_64-linux-gnu/c++/12/bits/cpu_defines.h: + +/usr/include/x86_64-linux-gnu/c++/12/bits/os_defines.h: + +/usr/include/x86_64-linux-gnu/bits/stdio.h: + +/usr/include/stdint.h: + +/usr/include/x86_64-linux-gnu/bits/timesize.h: + +/usr/lib/gcc/x86_64-linux-gnu/12/include/stddef.h: + +/usr/lib/jvm/java-11-openjdk-amd64/include/jni.h: + +/usr/include/x86_64-linux-gnu/bits/libc-header-start.h: + +/usr/include/stdc-predef.h: + +/usr/include/x86_64-linux-gnu/bits/stdio2.h: + +/usr/include/x86_64-linux-gnu/sys/cdefs.h: + +/usr/include/stdio.h: + +/usr/include/x86_64-linux-gnu/bits/floatn-common.h: + +../common/cujava_logger.hpp: + +/usr/include/x86_64-linux-gnu/bits/long-double.h: + +../common/cujava_jni_utils.hpp: + +/usr/include/c++/12/bits/exception.h: + +/usr/include/x86_64-linux-gnu/bits/wordsize.h: + +../common/cujava_jni_utils.cpp: + +/usr/include/x86_64-linux-gnu/bits/stdint-uintn.h: + +/usr/include/x86_64-linux-gnu/bits/wchar.h: + +/usr/include/c++/12/new: + +/usr/include/x86_64-linux-gnu/gnu/stubs-64.h: + +/usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h: + +../common/cujava_pointer_utils.hpp: + +/usr/lib/gcc/x86_64-linux-gnu/12/include/stdarg.h: + +/usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h: + +/usr/include/x86_64-linux-gnu/bits/typesizes.h: + +/usr/include/x86_64-linux-gnu/bits/time64.h: + +/usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h: + +../common/cujava_logger.cpp: + +/usr/lib/jvm/java-11-openjdk-amd64/include/linux/jni_md.h: + +/usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h: + +/usr/include/x86_64-linux-gnu/bits/types/__FILE.h: + +/usr/include/x86_64-linux-gnu/c++/12/bits/c++config.h: + +/usr/include/features.h: + +/usr/include/x86_64-linux-gnu/bits/types/FILE.h: + +/usr/include/features-time64.h: + +/usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h: + +/usr/include/c++/12/cstdarg: + +/usr/include/x86_64-linux-gnu/bits/types.h: + +/usr/include/x86_64-linux-gnu/gnu/stubs.h: + +/usr/include/x86_64-linux-gnu/bits/stdio_lim.h: + +/usr/include/x86_64-linux-gnu/bits/floatn.h: diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.ts b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.ts new file mode 100644 index 00000000000..17eeca5619f --- /dev/null +++ b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.ts @@ -0,0 +1,2 @@ +# CMAKE generated file: DO NOT EDIT! +# Timestamp file for compiler generated dependencies management for CuJavaCommonJNI. diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o new file mode 100644 index 0000000000000000000000000000000000000000..e1e0ca671e8c79924a2be74b1d6d31db9fe24317 GIT binary patch literal 8864 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 TcaShXojx4B%-)I*C;$Hd7p2Sp literal 0 HcmV?d00001 diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o.d b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o.d new file mode 100644 index 00000000000..7ded0e0ccf0 --- /dev/null +++ b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o.d @@ -0,0 +1,38 @@ +common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o: \ + /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_jni_utils.cpp \ + /usr/include/stdc-predef.h \ + /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_jni_utils.hpp \ + /usr/lib/jvm/java-11-openjdk-amd64/include/jni.h /usr/include/stdio.h \ + /usr/include/x86_64-linux-gnu/bits/libc-header-start.h \ + /usr/include/features.h /usr/include/features-time64.h \ + /usr/include/x86_64-linux-gnu/bits/wordsize.h \ + /usr/include/x86_64-linux-gnu/bits/timesize.h \ + /usr/include/x86_64-linux-gnu/sys/cdefs.h \ + /usr/include/x86_64-linux-gnu/bits/long-double.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ + /usr/lib/gcc/x86_64-linux-gnu/12/include/stddef.h \ + /usr/lib/gcc/x86_64-linux-gnu/12/include/stdarg.h \ + /usr/include/x86_64-linux-gnu/bits/types.h \ + /usr/include/x86_64-linux-gnu/bits/typesizes.h \ + /usr/include/x86_64-linux-gnu/bits/time64.h \ + /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h \ + /usr/include/x86_64-linux-gnu/bits/stdio_lim.h \ + /usr/include/x86_64-linux-gnu/bits/floatn.h \ + /usr/include/x86_64-linux-gnu/bits/floatn-common.h \ + /usr/include/x86_64-linux-gnu/bits/stdio.h \ + /usr/include/x86_64-linux-gnu/bits/stdio2.h \ + /usr/lib/jvm/java-11-openjdk-amd64/include/linux/jni_md.h \ + /usr/include/c++/12/new \ + /usr/include/x86_64-linux-gnu/c++/12/bits/c++config.h \ + /usr/include/x86_64-linux-gnu/c++/12/bits/os_defines.h \ + /usr/include/x86_64-linux-gnu/c++/12/bits/cpu_defines.h \ + /usr/include/c++/12/bits/exception.h \ + /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_logger.hpp \ + /usr/include/c++/12/cstdarg /usr/include/c++/12/cstdio diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o new file mode 100644 index 0000000000000000000000000000000000000000..7229186d77db2f497a8b1c00c72b445c79b65508 GIT binary patch literal 2056 zcmbu9O-vI(6vwAfr2@7^J&=If!)mC?rUg_2i7C*+MmIpD7^5-kwrnX-+Ge{;fCC?q zgH1z%@nVbz4<0?3=+PJwOz_~rg9j52){`b06ZK|H@V(ucGTF2zU$Xtb`OUmHGjC?P z8k2|XTrR@QMJ|#37Ndl`aqs&P%Z-r3q?!Eoo%k~$t$%+9Oe)5OkW`d~Ubz?*A~JZ= z#mTrXqD`1Lf_-3KTWbDdMcm})UbO-BRZjjW3_QYdYYo7# zYB;ach5@uxc4hAy$0XsaHh#7SU#h{^YVdo&ah+vQv`QV4=B&D)Dw*8$w5E&6e4Z#b zMlZ-#vm0ov7kpV;&@$s!lFLLHk;euHWMyo4cp?^8;sb+nOyNSp=aZ(cYgvOu#Yn-J z%9#dHl!a7YpUE02C7GThsZ_=+q=6O;H93b!NvSg#K2^A&?Wd_M!(M;J7IFp@@66vl z+wODxAjjWQj(4hoM>qsJz`;L-cS=nEEu}2 zY3Au#MimWh(IDcKYN$j^6beL4=H}<2u0+h{3{8YL(rHzWwx_eEnAdZ8O*fW^Xl2mS zN=jGfH8$gaX#k?}ZD37#i_pdo9)j<@%Wc50_7V7adq5xf7KM$VI1io$TB|MOG$?ZR ze?Tz_Aq2zRygA$Fpc8XC<9ld4AB(;dhbap=2C{h3!C5@hzA8B}B*6yMh-dgRICyXQ zyM=ve8Xv$0XRLkWseyyxRG7&_c7i;Q3)Ji)ZIoZEl?E1D)SP pwFwxWkux6Op!4hikuu%Tb8K)%(^W_dc-7*s)Ah6e6Bgi%{|B2y0nY#c literal 0 HcmV?d00001 diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o.d b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o.d new file mode 100644 index 00000000000..cb81af50e50 --- /dev/null +++ b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o.d @@ -0,0 +1,34 @@ +common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o: \ + /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_logger.cpp \ + /usr/include/stdc-predef.h \ + /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_logger.hpp \ + /usr/include/c++/12/cstdarg \ + /usr/include/x86_64-linux-gnu/c++/12/bits/c++config.h \ + /usr/include/x86_64-linux-gnu/c++/12/bits/os_defines.h \ + /usr/include/features.h /usr/include/features-time64.h \ + /usr/include/x86_64-linux-gnu/bits/wordsize.h \ + /usr/include/x86_64-linux-gnu/bits/timesize.h \ + /usr/include/x86_64-linux-gnu/sys/cdefs.h \ + /usr/include/x86_64-linux-gnu/bits/long-double.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ + /usr/include/x86_64-linux-gnu/c++/12/bits/cpu_defines.h \ + /usr/lib/gcc/x86_64-linux-gnu/12/include/stdarg.h \ + /usr/include/c++/12/cstdio /usr/include/stdio.h \ + /usr/include/x86_64-linux-gnu/bits/libc-header-start.h \ + /usr/lib/gcc/x86_64-linux-gnu/12/include/stddef.h \ + /usr/include/x86_64-linux-gnu/bits/types.h \ + /usr/include/x86_64-linux-gnu/bits/typesizes.h \ + /usr/include/x86_64-linux-gnu/bits/time64.h \ + /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h \ + /usr/include/x86_64-linux-gnu/bits/stdio_lim.h \ + /usr/include/x86_64-linux-gnu/bits/floatn.h \ + /usr/include/x86_64-linux-gnu/bits/floatn-common.h \ + /usr/include/x86_64-linux-gnu/bits/stdio.h \ + /usr/include/x86_64-linux-gnu/bits/stdio2.h diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o new file mode 100644 index 0000000000000000000000000000000000000000..b5ad40f221ec6c959501145b58689fa2518cdd63 GIT binary patch literal 44536 zcmeHwe|%k4mG5b9X#>S1K-H)Smy&8KkmjZ-O({asB<)F?rh%qEq%BFB+%##^Bqlfg z0ki~@6t1BVkO5TGGV(BksP)Gi(Lo6mO5Y5h_wdIcI{4@yGqx15Dj+&Aowe3p>)dtE zJv%uO=ks}gy#499d!O%FzxLWc&))l_H&)dwojPTTBVmejg_F7y)Nx7&Qt2{EmN{Q_ z9wORH;l3HJ7PydiA;+a0FXH$zh_}Jj!S{uyEy$xhD>@t$LZ@KzJb#>LHsFB4?(<-(>HT`3&crI zf12ZAh;QZeevWU0_;yZ@aC`^EcXIkO9Nz`;-*EbFj_-l^UQT}&;?HsV^AO+1=`TS1 zMNWSS;scz%AL74-ONT$?ocHH7?*8{8w%Sephdc0UUW+?CZB79IZn82zD>mjP|IK}R zT0WAv$=8lyJUEs!*fbUHhl$f2F3ES3FV^fojfnQY2P2QL6bX$A;0HSI$$4Q#yfG!D zu4j-iP}jG@ib#efYz#}d&}!6&!-{wv92%UjU*MDB2p7Srkx{xg#gd%r4nawMS3%>J z6xPfTMVe?2LsS`t==?{fK_BG~*XL)oxEIZ$YS(v`JMd)QhE0cZ&UYR;1>uCLF*)a# zIapuI*SX2x$HvOnmanN!zTxg)09HHY^=q*HJ~kb*0F{{P*vg^bbIu<`)0~=Na;oR|>f!fECZ8e$E}|}iN)OdR z0S@P~_u;-A9S%h)`rZKQ^8UA{)w zviGq9u#{3@-h?Hc7g*9!%&lY%@&RRMjMLe1eRi4t5&Vo9@YjyVbq-%dv$$Rt-~%j+ z%KT_rHvbRQVpEv@93CG9>#%)g<{hgj<=vWbuSUC2*SVJajlG;YIw{6rV@<1+qMU6t z7JG-9sj) zzSidVZJCHVPnAsHB1@^94V@n}l}fCWrbjmg2c=6z(mGO;{57SjVlN+m`9Dvc;{3

#I&0L(+nvobB;^A5T>s5p*y0+%pA^>w793Z{06 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 Y`lW;4f4IyY#6Q|&xb{Q-bnx^47xETh1ONa4 literal 0 HcmV?d00001 diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o.d b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o.d new file mode 100644 index 00000000000..e4c67f047cc --- /dev/null +++ b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o.d @@ -0,0 +1,43 @@ +common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o: \ + /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_pointer_utils.cpp \ + /usr/include/stdc-predef.h \ + /usr/lib/jvm/java-11-openjdk-amd64/include/jni.h /usr/include/stdio.h \ + /usr/include/x86_64-linux-gnu/bits/libc-header-start.h \ + /usr/include/features.h /usr/include/features-time64.h \ + /usr/include/x86_64-linux-gnu/bits/wordsize.h \ + /usr/include/x86_64-linux-gnu/bits/timesize.h \ + /usr/include/x86_64-linux-gnu/sys/cdefs.h \ + /usr/include/x86_64-linux-gnu/bits/long-double.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ + /usr/lib/gcc/x86_64-linux-gnu/12/include/stddef.h \ + /usr/lib/gcc/x86_64-linux-gnu/12/include/stdarg.h \ + /usr/include/x86_64-linux-gnu/bits/types.h \ + /usr/include/x86_64-linux-gnu/bits/typesizes.h \ + /usr/include/x86_64-linux-gnu/bits/time64.h \ + /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h \ + /usr/include/x86_64-linux-gnu/bits/stdio_lim.h \ + /usr/include/x86_64-linux-gnu/bits/floatn.h \ + /usr/include/x86_64-linux-gnu/bits/floatn-common.h \ + /usr/include/x86_64-linux-gnu/bits/stdio.h \ + /usr/include/x86_64-linux-gnu/bits/stdio2.h \ + /usr/lib/jvm/java-11-openjdk-amd64/include/linux/jni_md.h \ + /usr/include/c++/12/cstdint \ + /usr/include/x86_64-linux-gnu/c++/12/bits/c++config.h \ + /usr/include/x86_64-linux-gnu/c++/12/bits/os_defines.h \ + /usr/include/x86_64-linux-gnu/c++/12/bits/cpu_defines.h \ + /usr/lib/gcc/x86_64-linux-gnu/12/include/stdint.h /usr/include/stdint.h \ + /usr/include/x86_64-linux-gnu/bits/wchar.h \ + /usr/include/x86_64-linux-gnu/bits/stdint-intn.h \ + /usr/include/x86_64-linux-gnu/bits/stdint-uintn.h \ + /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_logger.hpp \ + /usr/include/c++/12/cstdarg /usr/include/c++/12/cstdio \ + /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_jni_utils.hpp \ + /usr/include/c++/12/new /usr/include/c++/12/bits/exception.h \ + /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_pointer_utils.hpp diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/depend.make b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/depend.make new file mode 100644 index 00000000000..4918cb226bc --- /dev/null +++ b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/depend.make @@ -0,0 +1,2 @@ +# Empty dependencies file for CuJavaCommonJNI. +# This may be replaced when dependencies are built. diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/flags.make b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/flags.make new file mode 100644 index 00000000000..ce0eb24447c --- /dev/null +++ b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/flags.make @@ -0,0 +1,10 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# compile CXX with /usr/bin/c++ +CXX_DEFINES = + +CXX_INCLUDES = -I/usr/lib/jvm/java-11-openjdk-amd64/include -I/usr/lib/jvm/java-11-openjdk-amd64/include/linux -I/home/rene/projects/systemds/src/main/cpp/jni/common + +CXX_FLAGS = -O3 -DNDEBUG -fPIC -std=gnu++11 + diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/link.txt b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/link.txt new file mode 100644 index 00000000000..abb08b36493 --- /dev/null +++ b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/link.txt @@ -0,0 +1,2 @@ +/usr/bin/ar qc /home/rene/projects/systemds/src/main/cpp/lib/libCuJavaCommonJNI.a CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o +/usr/bin/ranlib /home/rene/projects/systemds/src/main/cpp/lib/libCuJavaCommonJNI.a diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/progress.make b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/progress.make new file mode 100644 index 00000000000..a69a57e8e4f --- /dev/null +++ b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/progress.make @@ -0,0 +1,5 @@ +CMAKE_PROGRESS_1 = 1 +CMAKE_PROGRESS_2 = 2 +CMAKE_PROGRESS_3 = 3 +CMAKE_PROGRESS_4 = 4 + diff --git a/src/main/cpp/jni/build/common/CMakeFiles/progress.marks b/src/main/cpp/jni/build/common/CMakeFiles/progress.marks new file mode 100644 index 00000000000..b8626c4cff2 --- /dev/null +++ b/src/main/cpp/jni/build/common/CMakeFiles/progress.marks @@ -0,0 +1 @@ +4 diff --git a/src/main/cpp/jni/build/common/Makefile b/src/main/cpp/jni/build/common/Makefile new file mode 100644 index 00000000000..28447921416 --- /dev/null +++ b/src/main/cpp/jni/build/common/Makefile @@ -0,0 +1,236 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# Default target executed when no arguments are given to make. +default_target: all +.PHONY : default_target + +# Allow only one "make -f Makefile2" at a time, but pass parallelism. +.NOTPARALLEL: + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + +# Disable VCS-based implicit rules. +% : %,v + +# Disable VCS-based implicit rules. +% : RCS/% + +# Disable VCS-based implicit rules. +% : RCS/%,v + +# Disable VCS-based implicit rules. +% : SCCS/s.% + +# Disable VCS-based implicit rules. +% : s.% + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /usr/bin/cmake + +# The command to remove a file. +RM = /usr/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /home/rene/projects/systemds/src/main/cpp/jni + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /home/rene/projects/systemds/src/main/cpp/jni/build + +#============================================================================= +# Targets provided globally by CMake. + +# Special rule for the target edit_cache +edit_cache: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "No interactive CMake dialog available..." + /usr/bin/cmake -E echo No\ interactive\ CMake\ dialog\ available. +.PHONY : edit_cache + +# Special rule for the target edit_cache +edit_cache/fast: edit_cache +.PHONY : edit_cache/fast + +# Special rule for the target rebuild_cache +rebuild_cache: + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..." + /usr/bin/cmake --regenerate-during-build -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) +.PHONY : rebuild_cache + +# Special rule for the target rebuild_cache +rebuild_cache/fast: rebuild_cache +.PHONY : rebuild_cache/fast + +# The main all target +all: cmake_check_build_system + cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(CMAKE_COMMAND) -E cmake_progress_start /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles /home/rene/projects/systemds/src/main/cpp/jni/build/common//CMakeFiles/progress.marks + cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 common/all + $(CMAKE_COMMAND) -E cmake_progress_start /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles 0 +.PHONY : all + +# The main clean target +clean: + cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 common/clean +.PHONY : clean + +# The main clean target +clean/fast: clean +.PHONY : clean/fast + +# Prepare targets for installation. +preinstall: all + cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 common/preinstall +.PHONY : preinstall + +# Prepare targets for installation. +preinstall/fast: + cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 common/preinstall +.PHONY : preinstall/fast + +# clear depends +depend: + cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1 +.PHONY : depend + +# Convenience name for target. +common/CMakeFiles/CuJavaCommonJNI.dir/rule: + cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 common/CMakeFiles/CuJavaCommonJNI.dir/rule +.PHONY : common/CMakeFiles/CuJavaCommonJNI.dir/rule + +# Convenience name for target. +CuJavaCommonJNI: common/CMakeFiles/CuJavaCommonJNI.dir/rule +.PHONY : CuJavaCommonJNI + +# fast build rule for target. +CuJavaCommonJNI/fast: + cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/build +.PHONY : CuJavaCommonJNI/fast + +cujava_jni_utils.o: cujava_jni_utils.cpp.o +.PHONY : cujava_jni_utils.o + +# target to build an object file +cujava_jni_utils.cpp.o: + cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o +.PHONY : cujava_jni_utils.cpp.o + +cujava_jni_utils.i: cujava_jni_utils.cpp.i +.PHONY : cujava_jni_utils.i + +# target to preprocess a source file +cujava_jni_utils.cpp.i: + cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.i +.PHONY : cujava_jni_utils.cpp.i + +cujava_jni_utils.s: cujava_jni_utils.cpp.s +.PHONY : cujava_jni_utils.s + +# target to generate assembly for a file +cujava_jni_utils.cpp.s: + cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.s +.PHONY : cujava_jni_utils.cpp.s + +cujava_logger.o: cujava_logger.cpp.o +.PHONY : cujava_logger.o + +# target to build an object file +cujava_logger.cpp.o: + cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o +.PHONY : cujava_logger.cpp.o + +cujava_logger.i: cujava_logger.cpp.i +.PHONY : cujava_logger.i + +# target to preprocess a source file +cujava_logger.cpp.i: + cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.i +.PHONY : cujava_logger.cpp.i + +cujava_logger.s: cujava_logger.cpp.s +.PHONY : cujava_logger.s + +# target to generate assembly for a file +cujava_logger.cpp.s: + cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.s +.PHONY : cujava_logger.cpp.s + +cujava_pointer_utils.o: cujava_pointer_utils.cpp.o +.PHONY : cujava_pointer_utils.o + +# target to build an object file +cujava_pointer_utils.cpp.o: + cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o +.PHONY : cujava_pointer_utils.cpp.o + +cujava_pointer_utils.i: cujava_pointer_utils.cpp.i +.PHONY : cujava_pointer_utils.i + +# target to preprocess a source file +cujava_pointer_utils.cpp.i: + cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.i +.PHONY : cujava_pointer_utils.cpp.i + +cujava_pointer_utils.s: cujava_pointer_utils.cpp.s +.PHONY : cujava_pointer_utils.s + +# target to generate assembly for a file +cujava_pointer_utils.cpp.s: + cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.s +.PHONY : cujava_pointer_utils.cpp.s + +# Help Target +help: + @echo "The following are some of the valid targets for this Makefile:" + @echo "... all (the default if no target is provided)" + @echo "... clean" + @echo "... depend" + @echo "... edit_cache" + @echo "... rebuild_cache" + @echo "... CuJavaCommonJNI" + @echo "... cujava_jni_utils.o" + @echo "... cujava_jni_utils.i" + @echo "... cujava_jni_utils.s" + @echo "... cujava_logger.o" + @echo "... cujava_logger.i" + @echo "... cujava_logger.s" + @echo "... cujava_pointer_utils.o" + @echo "... cujava_pointer_utils.i" + @echo "... cujava_pointer_utils.s" +.PHONY : help + + + +#============================================================================= +# Special targets to cleanup operation of make. + +# Special rule to run CMake to check the build system integrity. +# No rule that depends on this can have commands that come from listfiles +# because they might be regenerated. +cmake_check_build_system: + cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 +.PHONY : cmake_check_build_system + diff --git a/src/main/cpp/jni/build/common/cmake_install.cmake b/src/main/cpp/jni/build/common/cmake_install.cmake new file mode 100644 index 00000000000..bad033eb317 --- /dev/null +++ b/src/main/cpp/jni/build/common/cmake_install.cmake @@ -0,0 +1,44 @@ +# Install script for directory: /home/rene/projects/systemds/src/main/cpp/jni/common + +# Set the install prefix +if(NOT DEFINED CMAKE_INSTALL_PREFIX) + set(CMAKE_INSTALL_PREFIX "/usr/local") +endif() +string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}") + +# Set the install configuration name. +if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME) + if(BUILD_TYPE) + string(REGEX REPLACE "^[^A-Za-z0-9_]+" "" + CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}") + else() + set(CMAKE_INSTALL_CONFIG_NAME "Release") + endif() + message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"") +endif() + +# Set the component getting installed. +if(NOT CMAKE_INSTALL_COMPONENT) + if(COMPONENT) + message(STATUS "Install component: \"${COMPONENT}\"") + set(CMAKE_INSTALL_COMPONENT "${COMPONENT}") + else() + set(CMAKE_INSTALL_COMPONENT) + endif() +endif() + +# Install shared libraries without execute permission? +if(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE) + set(CMAKE_INSTALL_SO_NO_EXE "1") +endif() + +# Is this installation the result of a crosscompile? +if(NOT DEFINED CMAKE_CROSSCOMPILING) + set(CMAKE_CROSSCOMPILING "FALSE") +endif() + +# Set default install directory permissions. +if(NOT DEFINED CMAKE_OBJDUMP) + set(CMAKE_OBJDUMP "/usr/bin/objdump") +endif() + diff --git a/src/main/cpp/jni/build/driver/CMakeFiles/CMakeDirectoryInformation.cmake b/src/main/cpp/jni/build/driver/CMakeFiles/CMakeDirectoryInformation.cmake new file mode 100644 index 00000000000..b9b869f5a2e --- /dev/null +++ b/src/main/cpp/jni/build/driver/CMakeFiles/CMakeDirectoryInformation.cmake @@ -0,0 +1,16 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# Relative path conversion top directories. +set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/home/rene/projects/systemds/src/main/cpp/jni") +set(CMAKE_RELATIVE_PATH_TOP_BINARY "/home/rene/projects/systemds/src/main/cpp/jni/build") + +# Force unix paths in dependencies. +set(CMAKE_FORCE_UNIX_PATHS 1) + + +# The C and CXX include file regular expressions for this directory. +set(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$") +set(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$") +set(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN}) +set(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN}) diff --git a/src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/DependInfo.cmake b/src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/DependInfo.cmake new file mode 100644 index 00000000000..0cf295b8cef --- /dev/null +++ b/src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/DependInfo.cmake @@ -0,0 +1,19 @@ + +# Consider dependencies only in project. +set(CMAKE_DEPENDS_IN_PROJECT_ONLY OFF) + +# The set of languages for which implicit dependencies are needed: +set(CMAKE_DEPENDS_LANGUAGES + ) + +# The set of dependency files which are needed: +set(CMAKE_DEPENDS_DEPENDENCY_FILES + "/home/rene/projects/systemds/src/main/cpp/jni/driver/cujava_driver.cpp" "driver/CMakeFiles/CuJavaDriver.dir/cujava_driver.cpp.o" "gcc" "driver/CMakeFiles/CuJavaDriver.dir/cujava_driver.cpp.o.d" + ) + +# Targets to which this target links. +set(CMAKE_TARGET_LINKED_INFO_FILES + ) + +# Fortran module output directory. +set(CMAKE_Fortran_TARGET_MODULE_DIR "") diff --git a/src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/build.make b/src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/build.make new file mode 100644 index 00000000000..3749984656d --- /dev/null +++ b/src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/build.make @@ -0,0 +1,110 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +# Delete rule output on recipe failure. +.DELETE_ON_ERROR: + +#============================================================================= +# Special targets provided by cmake. + +# Disable implicit rules so canonical targets will work. +.SUFFIXES: + +# Disable VCS-based implicit rules. +% : %,v + +# Disable VCS-based implicit rules. +% : RCS/% + +# Disable VCS-based implicit rules. +% : RCS/%,v + +# Disable VCS-based implicit rules. +% : SCCS/s.% + +# Disable VCS-based implicit rules. +% : s.% + +.SUFFIXES: .hpux_make_needs_suffix_list + +# Command-line flag to silence nested $(MAKE). +$(VERBOSE)MAKESILENT = -s + +#Suppress display of executed commands. +$(VERBOSE).SILENT: + +# A target that is always out of date. +cmake_force: +.PHONY : cmake_force + +#============================================================================= +# Set environment variables for the build. + +# The shell in which to execute make rules. +SHELL = /bin/sh + +# The CMake executable. +CMAKE_COMMAND = /usr/bin/cmake + +# The command to remove a file. +RM = /usr/bin/cmake -E rm -f + +# Escaping for special characters. +EQUALS = = + +# The top-level source directory on which CMake was run. +CMAKE_SOURCE_DIR = /home/rene/projects/systemds/src/main/cpp/jni + +# The top-level build directory on which CMake was run. +CMAKE_BINARY_DIR = /home/rene/projects/systemds/src/main/cpp/jni/build + +# Include any dependencies generated for this target. +include driver/CMakeFiles/CuJavaDriver.dir/depend.make +# Include any dependencies generated by the compiler for this target. +include driver/CMakeFiles/CuJavaDriver.dir/compiler_depend.make + +# Include the progress variables for this target. +include driver/CMakeFiles/CuJavaDriver.dir/progress.make + +# Include the compile flags for this target's objects. +include driver/CMakeFiles/CuJavaDriver.dir/flags.make + +driver/CMakeFiles/CuJavaDriver.dir/cujava_driver.cpp.o: driver/CMakeFiles/CuJavaDriver.dir/flags.make +driver/CMakeFiles/CuJavaDriver.dir/cujava_driver.cpp.o: ../driver/cujava_driver.cpp +driver/CMakeFiles/CuJavaDriver.dir/cujava_driver.cpp.o: driver/CMakeFiles/CuJavaDriver.dir/compiler_depend.ts + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building CXX object driver/CMakeFiles/CuJavaDriver.dir/cujava_driver.cpp.o" + cd /home/rene/projects/systemds/src/main/cpp/jni/build/driver && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT driver/CMakeFiles/CuJavaDriver.dir/cujava_driver.cpp.o -MF CMakeFiles/CuJavaDriver.dir/cujava_driver.cpp.o.d -o CMakeFiles/CuJavaDriver.dir/cujava_driver.cpp.o -c /home/rene/projects/systemds/src/main/cpp/jni/driver/cujava_driver.cpp + +driver/CMakeFiles/CuJavaDriver.dir/cujava_driver.cpp.i: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/CuJavaDriver.dir/cujava_driver.cpp.i" + cd /home/rene/projects/systemds/src/main/cpp/jni/build/driver && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/rene/projects/systemds/src/main/cpp/jni/driver/cujava_driver.cpp > CMakeFiles/CuJavaDriver.dir/cujava_driver.cpp.i + +driver/CMakeFiles/CuJavaDriver.dir/cujava_driver.cpp.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/CuJavaDriver.dir/cujava_driver.cpp.s" + cd /home/rene/projects/systemds/src/main/cpp/jni/build/driver && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/rene/projects/systemds/src/main/cpp/jni/driver/cujava_driver.cpp -o CMakeFiles/CuJavaDriver.dir/cujava_driver.cpp.s + +# Object files for target CuJavaDriver +CuJavaDriver_OBJECTS = \ +"CMakeFiles/CuJavaDriver.dir/cujava_driver.cpp.o" + +# External object files for target CuJavaDriver +CuJavaDriver_EXTERNAL_OBJECTS = + +/home/rene/projects/systemds/src/main/cpp/lib/libcujava_driver.so: driver/CMakeFiles/CuJavaDriver.dir/cujava_driver.cpp.o +/home/rene/projects/systemds/src/main/cpp/lib/libcujava_driver.so: driver/CMakeFiles/CuJavaDriver.dir/build.make +/home/rene/projects/systemds/src/main/cpp/lib/libcujava_driver.so: driver/CMakeFiles/CuJavaDriver.dir/link.txt + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Linking CXX shared library /home/rene/projects/systemds/src/main/cpp/lib/libcujava_driver.so" + cd /home/rene/projects/systemds/src/main/cpp/jni/build/driver && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/CuJavaDriver.dir/link.txt --verbose=$(VERBOSE) + +# Rule to build all files generated by this target. +driver/CMakeFiles/CuJavaDriver.dir/build: /home/rene/projects/systemds/src/main/cpp/lib/libcujava_driver.so +.PHONY : driver/CMakeFiles/CuJavaDriver.dir/build + +driver/CMakeFiles/CuJavaDriver.dir/clean: + cd /home/rene/projects/systemds/src/main/cpp/jni/build/driver && $(CMAKE_COMMAND) -P CMakeFiles/CuJavaDriver.dir/cmake_clean.cmake +.PHONY : driver/CMakeFiles/CuJavaDriver.dir/clean + +driver/CMakeFiles/CuJavaDriver.dir/depend: + cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/rene/projects/systemds/src/main/cpp/jni /home/rene/projects/systemds/src/main/cpp/jni/driver /home/rene/projects/systemds/src/main/cpp/jni/build /home/rene/projects/systemds/src/main/cpp/jni/build/driver /home/rene/projects/systemds/src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/DependInfo.cmake --color=$(COLOR) +.PHONY : driver/CMakeFiles/CuJavaDriver.dir/depend + diff --git a/src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/cmake_clean.cmake b/src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/cmake_clean.cmake new file mode 100644 index 00000000000..08445c055f9 --- /dev/null +++ b/src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/cmake_clean.cmake @@ -0,0 +1,11 @@ +file(REMOVE_RECURSE + "/home/rene/projects/systemds/src/main/cpp/lib/libcujava_driver.pdb" + "/home/rene/projects/systemds/src/main/cpp/lib/libcujava_driver.so" + "CMakeFiles/CuJavaDriver.dir/cujava_driver.cpp.o" + "CMakeFiles/CuJavaDriver.dir/cujava_driver.cpp.o.d" +) + +# Per-language clean rules from dependency scanning. +foreach(lang CXX) + include(CMakeFiles/CuJavaDriver.dir/cmake_clean_${lang}.cmake OPTIONAL) +endforeach() diff --git a/src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/compiler_depend.internal b/src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/compiler_depend.internal new file mode 100644 index 00000000000..bf8d3267de3 --- /dev/null +++ b/src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/compiler_depend.internal @@ -0,0 +1,92 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +driver/CMakeFiles/CuJavaDriver.dir/cujava_driver.cpp.o + /home/rene/projects/systemds/src/main/cpp/jni/driver/cujava_driver.cpp + /usr/include/stdc-predef.h + /home/rene/projects/systemds/src/main/cpp/jni/driver/cujava_driver.hpp + /usr/lib/jvm/java-11-openjdk-amd64/include/jni.h + /usr/include/stdio.h + /usr/include/x86_64-linux-gnu/bits/libc-header-start.h + /usr/include/features.h + /usr/include/features-time64.h + /usr/include/x86_64-linux-gnu/bits/wordsize.h + /usr/include/x86_64-linux-gnu/bits/timesize.h + /usr/include/x86_64-linux-gnu/sys/cdefs.h + /usr/include/x86_64-linux-gnu/bits/long-double.h + /usr/include/x86_64-linux-gnu/gnu/stubs.h + /usr/include/x86_64-linux-gnu/gnu/stubs-64.h + /usr/lib/gcc/x86_64-linux-gnu/12/include/stddef.h + /usr/lib/gcc/x86_64-linux-gnu/12/include/stdarg.h + /usr/include/x86_64-linux-gnu/bits/types.h + /usr/include/x86_64-linux-gnu/bits/typesizes.h + /usr/include/x86_64-linux-gnu/bits/time64.h + /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h + /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h + /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h + /usr/include/x86_64-linux-gnu/bits/types/__FILE.h + /usr/include/x86_64-linux-gnu/bits/types/FILE.h + /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h + /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h + /usr/include/x86_64-linux-gnu/bits/stdio_lim.h + /usr/include/x86_64-linux-gnu/bits/floatn.h + /usr/include/x86_64-linux-gnu/bits/floatn-common.h + /usr/include/x86_64-linux-gnu/bits/stdio.h + /usr/include/x86_64-linux-gnu/bits/stdio2.h + /usr/lib/jvm/java-11-openjdk-amd64/include/linux/jni_md.h + /home/rene/projects/systemds/src/main/cpp/jni/driver/cujava_driver_common.hpp + /usr/include/c++/12/cstdint + /usr/include/x86_64-linux-gnu/c++/12/bits/c++config.h + /usr/include/x86_64-linux-gnu/c++/12/bits/os_defines.h + /usr/include/x86_64-linux-gnu/c++/12/bits/cpu_defines.h + /usr/lib/gcc/x86_64-linux-gnu/12/include/stdint.h + /usr/include/stdint.h + /usr/include/x86_64-linux-gnu/bits/wchar.h + /usr/include/x86_64-linux-gnu/bits/stdint-intn.h + /usr/include/x86_64-linux-gnu/bits/stdint-uintn.h + /usr/local/cuda-12.6/include/cuda.h + /usr/include/c++/12/stdlib.h + /usr/include/c++/12/cstdlib + /usr/include/stdlib.h + /usr/include/x86_64-linux-gnu/bits/waitflags.h + /usr/include/x86_64-linux-gnu/bits/waitstatus.h + /usr/include/x86_64-linux-gnu/bits/types/locale_t.h + /usr/include/x86_64-linux-gnu/bits/types/__locale_t.h + /usr/include/x86_64-linux-gnu/sys/types.h + /usr/include/x86_64-linux-gnu/bits/types/clock_t.h + /usr/include/x86_64-linux-gnu/bits/types/clockid_t.h + /usr/include/x86_64-linux-gnu/bits/types/time_t.h + /usr/include/x86_64-linux-gnu/bits/types/timer_t.h + /usr/include/endian.h + /usr/include/x86_64-linux-gnu/bits/endian.h + /usr/include/x86_64-linux-gnu/bits/endianness.h + /usr/include/x86_64-linux-gnu/bits/byteswap.h + /usr/include/x86_64-linux-gnu/bits/uintn-identity.h + /usr/include/x86_64-linux-gnu/sys/select.h + /usr/include/x86_64-linux-gnu/bits/select.h + /usr/include/x86_64-linux-gnu/bits/types/sigset_t.h + /usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h + /usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h + /usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h + /usr/include/x86_64-linux-gnu/bits/select2.h + /usr/include/x86_64-linux-gnu/bits/pthreadtypes.h + /usr/include/x86_64-linux-gnu/bits/thread-shared-types.h + /usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h + /usr/include/x86_64-linux-gnu/bits/atomic_wide_counter.h + /usr/include/x86_64-linux-gnu/bits/struct_mutex.h + /usr/include/x86_64-linux-gnu/bits/struct_rwlock.h + /usr/include/alloca.h + /usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h + /usr/include/x86_64-linux-gnu/bits/stdlib-float.h + /usr/include/x86_64-linux-gnu/bits/stdlib.h + /usr/include/c++/12/bits/std_abs.h + /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_logger.hpp + /usr/include/c++/12/cstdarg + /usr/include/c++/12/cstdio + /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_jni_utils.hpp + /usr/include/c++/12/new + /usr/include/c++/12/bits/exception.h + /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_pointer_utils.hpp + /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_jni_utils.hpp + /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_logger.hpp + diff --git a/src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/compiler_depend.make b/src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/compiler_depend.make new file mode 100644 index 00000000000..8fdc6da4c7b --- /dev/null +++ b/src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/compiler_depend.make @@ -0,0 +1,261 @@ +# CMAKE generated file: DO NOT EDIT! +# Generated by "Unix Makefiles" Generator, CMake Version 3.22 + +driver/CMakeFiles/CuJavaDriver.dir/cujava_driver.cpp.o: ../driver/cujava_driver.cpp \ + /usr/include/stdc-predef.h \ + ../driver/cujava_driver.hpp \ + /usr/lib/jvm/java-11-openjdk-amd64/include/jni.h \ + /usr/include/stdio.h \ + /usr/include/x86_64-linux-gnu/bits/libc-header-start.h \ + /usr/include/features.h \ + /usr/include/features-time64.h \ + /usr/include/x86_64-linux-gnu/bits/wordsize.h \ + /usr/include/x86_64-linux-gnu/bits/timesize.h \ + /usr/include/x86_64-linux-gnu/sys/cdefs.h \ + /usr/include/x86_64-linux-gnu/bits/long-double.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs.h \ + /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ + /usr/lib/gcc/x86_64-linux-gnu/12/include/stddef.h \ + /usr/lib/gcc/x86_64-linux-gnu/12/include/stdarg.h \ + /usr/include/x86_64-linux-gnu/bits/types.h \ + /usr/include/x86_64-linux-gnu/bits/typesizes.h \ + /usr/include/x86_64-linux-gnu/bits/time64.h \ + /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \ + /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h \ + /usr/include/x86_64-linux-gnu/bits/stdio_lim.h \ + /usr/include/x86_64-linux-gnu/bits/floatn.h \ + /usr/include/x86_64-linux-gnu/bits/floatn-common.h \ + /usr/include/x86_64-linux-gnu/bits/stdio.h \ + /usr/include/x86_64-linux-gnu/bits/stdio2.h \ + /usr/lib/jvm/java-11-openjdk-amd64/include/linux/jni_md.h \ + ../driver/cujava_driver_common.hpp \ + /usr/include/c++/12/cstdint \ + /usr/include/x86_64-linux-gnu/c++/12/bits/c++config.h \ + /usr/include/x86_64-linux-gnu/c++/12/bits/os_defines.h \ + /usr/include/x86_64-linux-gnu/c++/12/bits/cpu_defines.h \ + /usr/lib/gcc/x86_64-linux-gnu/12/include/stdint.h \ + /usr/include/stdint.h \ + /usr/include/x86_64-linux-gnu/bits/wchar.h \ + /usr/include/x86_64-linux-gnu/bits/stdint-intn.h \ + /usr/include/x86_64-linux-gnu/bits/stdint-uintn.h \ + /usr/local/cuda-12.6/include/cuda.h \ + /usr/include/c++/12/stdlib.h \ + /usr/include/c++/12/cstdlib \ + /usr/include/stdlib.h \ + /usr/include/x86_64-linux-gnu/bits/waitflags.h \ + /usr/include/x86_64-linux-gnu/bits/waitstatus.h \ + /usr/include/x86_64-linux-gnu/bits/types/locale_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__locale_t.h \ + /usr/include/x86_64-linux-gnu/sys/types.h \ + /usr/include/x86_64-linux-gnu/bits/types/clock_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/clockid_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/time_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/timer_t.h \ + /usr/include/endian.h \ + /usr/include/x86_64-linux-gnu/bits/endian.h \ + /usr/include/x86_64-linux-gnu/bits/endianness.h \ + /usr/include/x86_64-linux-gnu/bits/byteswap.h \ + /usr/include/x86_64-linux-gnu/bits/uintn-identity.h \ + /usr/include/x86_64-linux-gnu/sys/select.h \ + /usr/include/x86_64-linux-gnu/bits/select.h \ + /usr/include/x86_64-linux-gnu/bits/types/sigset_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h \ + /usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h \ + /usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h \ + /usr/include/x86_64-linux-gnu/bits/select2.h \ + /usr/include/x86_64-linux-gnu/bits/pthreadtypes.h \ + /usr/include/x86_64-linux-gnu/bits/thread-shared-types.h \ + /usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h \ + /usr/include/x86_64-linux-gnu/bits/atomic_wide_counter.h \ + /usr/include/x86_64-linux-gnu/bits/struct_mutex.h \ + /usr/include/x86_64-linux-gnu/bits/struct_rwlock.h \ + /usr/include/alloca.h \ + /usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h \ + /usr/include/x86_64-linux-gnu/bits/stdlib-float.h \ + /usr/include/x86_64-linux-gnu/bits/stdlib.h \ + /usr/include/c++/12/bits/std_abs.h \ + ../common/cujava_logger.hpp \ + /usr/include/c++/12/cstdarg \ + /usr/include/c++/12/cstdio \ + ../common/cujava_jni_utils.hpp \ + /usr/include/c++/12/new \ + /usr/include/c++/12/bits/exception.h \ + ../common/cujava_pointer_utils.hpp \ + ../common/cujava_jni_utils.hpp \ + ../common/cujava_logger.hpp + + +../common/cujava_pointer_utils.hpp: + +/usr/include/c++/12/new: + +../common/cujava_jni_utils.hpp: + +../common/cujava_logger.hpp: + +/usr/include/alloca.h: + +/usr/include/x86_64-linux-gnu/bits/struct_rwlock.h: + +/usr/include/x86_64-linux-gnu/bits/struct_mutex.h: + +/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h: + +/usr/include/x86_64-linux-gnu/bits/select.h: + +/usr/include/x86_64-linux-gnu/sys/select.h: + +/usr/include/x86_64-linux-gnu/bits/uintn-identity.h: + +/usr/include/x86_64-linux-gnu/bits/floatn.h: + +/usr/include/c++/12/bits/exception.h: + +/usr/include/x86_64-linux-gnu/bits/stdio_lim.h: + +/usr/include/x86_64-linux-gnu/gnu/stubs.h: + +/usr/include/x86_64-linux-gnu/bits/atomic_wide_counter.h: + +/usr/include/x86_64-linux-gnu/bits/types.h: + +/usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h: + +/usr/include/features-time64.h: + +/usr/include/features.h: + +/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h: + +/usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h: + +/usr/lib/jvm/java-11-openjdk-amd64/include/linux/jni_md.h: + +/usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h: + +/usr/include/x86_64-linux-gnu/bits/stdlib.h: + +/usr/include/x86_64-linux-gnu/gnu/stubs-64.h: + +/usr/include/x86_64-linux-gnu/bits/wchar.h: + +/usr/include/x86_64-linux-gnu/bits/stdint-uintn.h: + +/usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h: + +/usr/include/x86_64-linux-gnu/bits/types/sigset_t.h: + +/usr/include/x86_64-linux-gnu/bits/time64.h: + +/usr/include/x86_64-linux-gnu/bits/typesizes.h: + +/usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h: + +/usr/include/x86_64-linux-gnu/bits/endianness.h: + +/usr/include/x86_64-linux-gnu/sys/types.h: + +/usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h: + +/usr/include/x86_64-linux-gnu/bits/types/time_t.h: + +../driver/cujava_driver.hpp: + +/usr/include/x86_64-linux-gnu/bits/select2.h: + +../driver/cujava_driver.cpp: + +/usr/include/x86_64-linux-gnu/bits/stdlib-float.h: + +/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h: + +/usr/include/stdc-predef.h: + +/usr/include/x86_64-linux-gnu/bits/types/clockid_t.h: + +/usr/include/x86_64-linux-gnu/c++/12/bits/c++config.h: + +/usr/include/x86_64-linux-gnu/bits/wordsize.h: + +/usr/include/stdlib.h: + +/usr/include/x86_64-linux-gnu/bits/floatn-common.h: + +/usr/include/x86_64-linux-gnu/bits/types/__locale_t.h: + +/usr/include/stdio.h: + +/usr/include/c++/12/cstdarg: + +/usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h: + +/usr/include/x86_64-linux-gnu/sys/cdefs.h: + +/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h: + +/usr/include/x86_64-linux-gnu/bits/stdio2.h: + +/usr/include/x86_64-linux-gnu/bits/types/__FILE.h: + +/usr/include/x86_64-linux-gnu/bits/types/clock_t.h: + +/usr/include/x86_64-linux-gnu/bits/libc-header-start.h: + +/usr/lib/jvm/java-11-openjdk-amd64/include/jni.h: + +/usr/include/x86_64-linux-gnu/bits/types/locale_t.h: + +/usr/lib/gcc/x86_64-linux-gnu/12/include/stddef.h: + +/usr/include/stdint.h: + +/usr/include/x86_64-linux-gnu/bits/types/FILE.h: + +/usr/include/x86_64-linux-gnu/bits/stdio.h: + +/usr/lib/gcc/x86_64-linux-gnu/12/include/stdarg.h: + +/usr/include/c++/12/cstdint: + +/usr/include/x86_64-linux-gnu/c++/12/bits/os_defines.h: + +/usr/include/x86_64-linux-gnu/c++/12/bits/cpu_defines.h: + +/usr/include/x86_64-linux-gnu/bits/endian.h: + +/usr/lib/gcc/x86_64-linux-gnu/12/include/stdint.h: + +/usr/include/c++/12/bits/std_abs.h: + +/usr/include/x86_64-linux-gnu/bits/stdint-intn.h: + +/usr/local/cuda-12.6/include/cuda.h: + +/usr/include/c++/12/stdlib.h: + +/usr/include/c++/12/cstdio: + +/usr/include/x86_64-linux-gnu/bits/timesize.h: + +/usr/include/c++/12/cstdlib: + +../driver/cujava_driver_common.hpp: + +/usr/include/x86_64-linux-gnu/bits/waitflags.h: + +/usr/include/x86_64-linux-gnu/bits/waitstatus.h: + +/usr/include/endian.h: + +/usr/include/x86_64-linux-gnu/bits/types/timer_t.h: + +/usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h: + +/usr/include/x86_64-linux-gnu/bits/long-double.h: + +/usr/include/x86_64-linux-gnu/bits/byteswap.h: diff --git a/src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/compiler_depend.ts b/src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/compiler_depend.ts new file mode 100644 index 00000000000..be58ad60fe0 --- /dev/null +++ b/src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/compiler_depend.ts @@ -0,0 +1,2 @@ +# CMAKE generated file: DO NOT EDIT! +# Timestamp file for compiler generated dependencies management for CuJavaDriver. diff --git a/src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/cujava_driver.cpp.o b/src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/cujava_driver.cpp.o new file mode 100644 index 0000000000000000000000000000000000000000..99ab1e541d116cefc2a4860a4920295550cfb517 GIT binary patch literal 14832 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 CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.i + +runtime/CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.s: cmake_force + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.s" + cd /home/rene/projects/systemds/src/main/cpp/jni/build/runtime && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/rene/projects/systemds/src/main/cpp/jni/runtime/cujava_runtime.cpp -o CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.s + +# Object files for target CuJavaRuntime +CuJavaRuntime_OBJECTS = \ +"CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.o" + +# External object files for target CuJavaRuntime +CuJavaRuntime_EXTERNAL_OBJECTS = + +/home/rene/projects/systemds/src/main/cpp/lib/libcujava_runtime.so: runtime/CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.o +/home/rene/projects/systemds/src/main/cpp/lib/libcujava_runtime.so: runtime/CMakeFiles/CuJavaRuntime.dir/build.make +/home/rene/projects/systemds/src/main/cpp/lib/libcujava_runtime.so: /home/rene/projects/systemds/src/main/cpp/lib/libCuJavaCommonJNI.a +/home/rene/projects/systemds/src/main/cpp/lib/libcujava_runtime.so: /usr/local/cuda-12.6/lib64/libcudart.so +/home/rene/projects/systemds/src/main/cpp/lib/libcujava_runtime.so: /usr/lib/jvm/java-11-openjdk-amd64/lib/libjawt.so +/home/rene/projects/systemds/src/main/cpp/lib/libcujava_runtime.so: /usr/lib/jvm/java-11-openjdk-amd64/lib/server/libjvm.so +/home/rene/projects/systemds/src/main/cpp/lib/libcujava_runtime.so: /home/rene/projects/systemds/src/main/cpp/lib/libCuJavaCommonJNI.a +/home/rene/projects/systemds/src/main/cpp/lib/libcujava_runtime.so: /usr/lib/x86_64-linux-gnu/libcuda.so +/home/rene/projects/systemds/src/main/cpp/lib/libcujava_runtime.so: /usr/lib/jvm/java-11-openjdk-amd64/lib/libjawt.so +/home/rene/projects/systemds/src/main/cpp/lib/libcujava_runtime.so: /usr/lib/jvm/java-11-openjdk-amd64/lib/server/libjvm.so +/home/rene/projects/systemds/src/main/cpp/lib/libcujava_runtime.so: runtime/CMakeFiles/CuJavaRuntime.dir/link.txt + @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Linking CXX shared library /home/rene/projects/systemds/src/main/cpp/lib/libcujava_runtime.so" + cd /home/rene/projects/systemds/src/main/cpp/jni/build/runtime && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/CuJavaRuntime.dir/link.txt --verbose=$(VERBOSE) + +# Rule to build all files generated by this target. +runtime/CMakeFiles/CuJavaRuntime.dir/build: /home/rene/projects/systemds/src/main/cpp/lib/libcujava_runtime.so +.PHONY : runtime/CMakeFiles/CuJavaRuntime.dir/build + +runtime/CMakeFiles/CuJavaRuntime.dir/clean: + cd /home/rene/projects/systemds/src/main/cpp/jni/build/runtime && $(CMAKE_COMMAND) -P CMakeFiles/CuJavaRuntime.dir/cmake_clean.cmake +.PHONY : runtime/CMakeFiles/CuJavaRuntime.dir/clean + +runtime/CMakeFiles/CuJavaRuntime.dir/depend: + cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/rene/projects/systemds/src/main/cpp/jni /home/rene/projects/systemds/src/main/cpp/jni/runtime /home/rene/projects/systemds/src/main/cpp/jni/build /home/rene/projects/systemds/src/main/cpp/jni/build/runtime /home/rene/projects/systemds/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/DependInfo.cmake --color=$(COLOR) +.PHONY : runtime/CMakeFiles/CuJavaRuntime.dir/depend + diff --git a/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/cmake_clean.cmake b/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/cmake_clean.cmake new file mode 100644 index 00000000000..d9adbdc4504 --- /dev/null +++ b/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/cmake_clean.cmake @@ -0,0 +1,11 @@ +file(REMOVE_RECURSE + "/home/rene/projects/systemds/src/main/cpp/lib/libcujava_runtime.pdb" + "/home/rene/projects/systemds/src/main/cpp/lib/libcujava_runtime.so" + "CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.o" + "CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.o.d" +) + +# Per-language clean rules from dependency scanning. +foreach(lang CXX) + include(CMakeFiles/CuJavaRuntime.dir/cmake_clean_${lang}.cmake OPTIONAL) +endforeach() diff --git a/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/compiler_depend.make b/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/compiler_depend.make new file mode 100644 index 00000000000..600905e15ea --- /dev/null +++ b/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/compiler_depend.make @@ -0,0 +1,2 @@ +# Empty compiler generated dependencies file for CuJavaRuntime. +# This may be replaced when dependencies are built. diff --git a/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/compiler_depend.ts b/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/compiler_depend.ts new file mode 100644 index 00000000000..607cea7b755 --- /dev/null +++ b/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/compiler_depend.ts @@ -0,0 +1,2 @@ +# CMAKE generated file: DO NOT EDIT! +# Timestamp file for compiler generated dependencies management for CuJavaRuntime. diff --git a/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.o b/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.o new file mode 100644 index 0000000000000000000000000000000000000000..436496ae31a5a69b4f5c2407e692aee591ae51e5 GIT binary patch literal 32832 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 pW4oIjJA}O1jrf=D*YvwGIgetPointer(env); + PointerData *dstHostPD = initPointerData(env, dstHost); + if (dstHostPD == nullptr) return CUJAVA_INTERNAL_ERROR; - int result = cuMemcpyDtoH(nativeDstHost, nativeSrcDevice, (size_t)ByteCount); + // Correct: CUdeviceptr from CUdeviceptr wrapper + CUdeviceptr nativeSrcDevice = (CUdeviceptr)(uintptr_t)getNativePointerValue(env, srcDevice); + void *nativeDstHost = dstHostPD->getPointer(env); - if (!releasePointerData(env, dstHostPointerData, 0)) return CUJAVA_INTERNAL_ERROR; + int result = cuMemcpyDtoH(nativeDstHost, nativeSrcDevice, (size_t)ByteCount); + if (!releasePointerData(env, dstHostPD, 0)) return CUJAVA_INTERNAL_ERROR; // commit host writes return result; } + JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_driver_CuJavaDriver_cuCtxSynchronizeNative (JNIEnv *env, jclass cls) { Logger::log(LOG_TRACE, "Executing cuCtxSynchronize\n"); diff --git a/src/main/cpp/lib/libcujava_driver.so b/src/main/cpp/lib/libcujava_driver.so index 519f1fbf43b780a34b60bc64b8d37d0b15ff1596..a3e488b7722a9ce872839f08127fce79c5554049 100755 GIT binary patch delta 57 zcmV-90LK52(gBdt0kGHt6b?PmV_ "CUSPARSE_STATUS_SUCCESS"; + case CUSPARSE_STATUS_NOT_INITIALIZED -> "CUSPARSE_STATUS_NOT_INITIALIZED"; + case CUSPARSE_STATUS_ALLOC_FAILED -> "CUSPARSE_STATUS_ALLOC_FAILED"; + case CUSPARSE_STATUS_INVALID_VALUE -> "CUSPARSE_STATUS_INVALID_VALUE"; + case CUSPARSE_STATUS_ARCH_MISMATCH -> "CUSPARSE_STATUS_ARCH_MISMATCH"; + case CUSPARSE_STATUS_MAPPING_ERROR -> "CUSPARSE_STATUS_MAPPING_ERROR"; + case CUSPARSE_STATUS_EXECUTION_FAILED -> "CUSPARSE_STATUS_EXECUTION_FAILED"; + case CUSPARSE_STATUS_INTERNAL_ERROR -> "CUSPARSE_STATUS_INTERNAL_ERROR"; + case CUSPARSE_STATUS_MATRIX_TYPE_NOT_SUPPORTED -> "CUSPARSE_STATUS_MATRIX_TYPE_NOT_SUPPORTED"; + case CUSPARSE_STATUS_ZERO_PIVOT -> "CUSPARSE_STATUS_ZERO_PIVOT"; + case CUSPARSE_STATUS_NOT_SUPPORTED -> "CUSPARSE_STATUS_NOT_SUPPORTED"; + case CUSPARSE_STATUS_INSUFFICIENT_RESOURCES -> "CUSPARSE_STATUS_INSUFFICIENT_RESOURCES"; + default -> "Invalid error"; + }; + } + +} From 1c1afb496c85af3289dd1e3d062fb3f1bc5614e9 Mon Sep 17 00:00:00 2001 From: ReneEnjilian Date: Thu, 28 Aug 2025 21:58:43 +0200 Subject: [PATCH 48/57] delete no-op build --- src/main/cpp/jni/build/CMakeCache.txt | 661 --------------- .../CMakeFiles/3.22.1/CMakeCXXCompiler.cmake | 83 -- .../3.22.1/CMakeDetermineCompilerABI_CXX.bin | Bin 15992 -> 0 bytes .../build/CMakeFiles/3.22.1/CMakeSystem.cmake | 15 - .../CompilerIdCXX/CMakeCXXCompilerId.cpp | 791 ------------------ .../CMakeFiles/3.22.1/CompilerIdCXX/a.out | Bin 16096 -> 0 bytes .../CMakeDirectoryInformation.cmake | 16 - .../cpp/jni/build/CMakeFiles/CMakeOutput.log | 278 ------ .../cpp/jni/build/CMakeFiles/Makefile.cmake | 61 -- src/main/cpp/jni/build/CMakeFiles/Makefile2 | 215 ----- .../build/CMakeFiles/TargetDirectories.txt | 11 - .../jni/build/CMakeFiles/cmake.check_cache | 1 - .../cpp/jni/build/CMakeFiles/progress.marks | 1 - src/main/cpp/jni/build/Makefile | 182 ---- src/main/cpp/jni/build/cmake_install.cmake | 69 -- .../CMakeDirectoryInformation.cmake | 16 - .../CuJavaCommonJNI.dir/DependInfo.cmake | 21 - .../CMakeFiles/CuJavaCommonJNI.dir/build.make | 143 ---- .../CuJavaCommonJNI.dir/cmake_clean.cmake | 15 - .../cmake_clean_target.cmake | 3 - .../compiler_depend.internal | 131 --- .../CuJavaCommonJNI.dir/compiler_depend.make | 226 ----- .../CuJavaCommonJNI.dir/compiler_depend.ts | 2 - .../cujava_jni_utils.cpp.o | Bin 8864 -> 0 bytes .../cujava_jni_utils.cpp.o.d | 38 - .../CuJavaCommonJNI.dir/cujava_logger.cpp.o | Bin 2056 -> 0 bytes .../CuJavaCommonJNI.dir/cujava_logger.cpp.o.d | 34 - .../cujava_pointer_utils.cpp.o | Bin 44536 -> 0 bytes .../cujava_pointer_utils.cpp.o.d | 43 - .../CuJavaCommonJNI.dir/depend.make | 2 - .../CMakeFiles/CuJavaCommonJNI.dir/flags.make | 10 - .../CMakeFiles/CuJavaCommonJNI.dir/link.txt | 2 - .../CuJavaCommonJNI.dir/progress.make | 5 - .../build/common/CMakeFiles/progress.marks | 1 - src/main/cpp/jni/build/common/Makefile | 236 ------ .../cpp/jni/build/common/cmake_install.cmake | 44 - .../CMakeDirectoryInformation.cmake | 16 - .../CuJavaDriver.dir/DependInfo.cmake | 19 - .../CMakeFiles/CuJavaDriver.dir/build.make | 110 --- .../CuJavaDriver.dir/cmake_clean.cmake | 11 - .../CuJavaDriver.dir/compiler_depend.internal | 92 -- .../CuJavaDriver.dir/compiler_depend.make | 261 ------ .../CuJavaDriver.dir/compiler_depend.ts | 2 - .../CuJavaDriver.dir/cujava_driver.cpp.o | Bin 14832 -> 0 bytes .../CuJavaDriver.dir/cujava_driver.cpp.o.d | 79 -- .../CMakeFiles/CuJavaDriver.dir/depend.make | 2 - .../CMakeFiles/CuJavaDriver.dir/flags.make | 10 - .../CMakeFiles/CuJavaDriver.dir/link.txt | 1 - .../CMakeFiles/CuJavaDriver.dir/progress.make | 3 - .../build/driver/CMakeFiles/progress.marks | 1 - src/main/cpp/jni/build/driver/Makefile | 182 ---- .../cpp/jni/build/driver/cmake_install.cmake | 44 - .../CMakeDirectoryInformation.cmake | 16 - .../CuJavaRuntime.dir/DependInfo.cmake | 20 - .../CMakeFiles/CuJavaRuntime.dir/build.make | 118 --- .../CuJavaRuntime.dir/cmake_clean.cmake | 11 - .../CuJavaRuntime.dir/compiler_depend.make | 2 - .../CuJavaRuntime.dir/compiler_depend.ts | 2 - .../CuJavaRuntime.dir/cujava_runtime.cpp.o | Bin 32832 -> 0 bytes .../CuJavaRuntime.dir/cujava_runtime.cpp.o.d | 65 -- .../CMakeFiles/CuJavaRuntime.dir/depend.make | 2 - .../CMakeFiles/CuJavaRuntime.dir/flags.make | 10 - .../CMakeFiles/CuJavaRuntime.dir/link.txt | 1 - .../CuJavaRuntime.dir/progress.make | 3 - .../build/runtime/CMakeFiles/progress.marks | 1 - src/main/cpp/jni/build/runtime/Makefile | 182 ---- .../cpp/jni/build/runtime/cmake_install.cmake | 44 - 67 files changed, 4666 deletions(-) delete mode 100644 src/main/cpp/jni/build/CMakeCache.txt delete mode 100644 src/main/cpp/jni/build/CMakeFiles/3.22.1/CMakeCXXCompiler.cmake delete mode 100755 src/main/cpp/jni/build/CMakeFiles/3.22.1/CMakeDetermineCompilerABI_CXX.bin delete mode 100644 src/main/cpp/jni/build/CMakeFiles/3.22.1/CMakeSystem.cmake delete mode 100644 src/main/cpp/jni/build/CMakeFiles/3.22.1/CompilerIdCXX/CMakeCXXCompilerId.cpp delete mode 100755 src/main/cpp/jni/build/CMakeFiles/3.22.1/CompilerIdCXX/a.out delete mode 100644 src/main/cpp/jni/build/CMakeFiles/CMakeDirectoryInformation.cmake delete mode 100644 src/main/cpp/jni/build/CMakeFiles/CMakeOutput.log delete mode 100644 src/main/cpp/jni/build/CMakeFiles/Makefile.cmake delete mode 100644 src/main/cpp/jni/build/CMakeFiles/Makefile2 delete mode 100644 src/main/cpp/jni/build/CMakeFiles/TargetDirectories.txt delete mode 100644 src/main/cpp/jni/build/CMakeFiles/cmake.check_cache delete mode 100644 src/main/cpp/jni/build/CMakeFiles/progress.marks delete mode 100644 src/main/cpp/jni/build/Makefile delete mode 100644 src/main/cpp/jni/build/cmake_install.cmake delete mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CMakeDirectoryInformation.cmake delete mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/DependInfo.cmake delete mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/build.make delete mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cmake_clean.cmake delete mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cmake_clean_target.cmake delete mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.internal delete mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.make delete mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.ts delete mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o delete mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o.d delete mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o delete mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o.d delete mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o delete mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o.d delete mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/depend.make delete mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/flags.make delete mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/link.txt delete mode 100644 src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/progress.make delete mode 100644 src/main/cpp/jni/build/common/CMakeFiles/progress.marks delete mode 100644 src/main/cpp/jni/build/common/Makefile delete mode 100644 src/main/cpp/jni/build/common/cmake_install.cmake delete mode 100644 src/main/cpp/jni/build/driver/CMakeFiles/CMakeDirectoryInformation.cmake delete mode 100644 src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/DependInfo.cmake delete mode 100644 src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/build.make delete mode 100644 src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/cmake_clean.cmake delete mode 100644 src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/compiler_depend.internal delete mode 100644 src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/compiler_depend.make delete mode 100644 src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/compiler_depend.ts delete mode 100644 src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/cujava_driver.cpp.o delete mode 100644 src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/cujava_driver.cpp.o.d delete mode 100644 src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/depend.make delete mode 100644 src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/flags.make delete mode 100644 src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/link.txt delete mode 100644 src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/progress.make delete mode 100644 src/main/cpp/jni/build/driver/CMakeFiles/progress.marks delete mode 100644 src/main/cpp/jni/build/driver/Makefile delete mode 100644 src/main/cpp/jni/build/driver/cmake_install.cmake delete mode 100644 src/main/cpp/jni/build/runtime/CMakeFiles/CMakeDirectoryInformation.cmake delete mode 100644 src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/DependInfo.cmake delete mode 100644 src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/build.make delete mode 100644 src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/cmake_clean.cmake delete mode 100644 src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/compiler_depend.make delete mode 100644 src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/compiler_depend.ts delete mode 100644 src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.o delete mode 100644 src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.o.d delete mode 100644 src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/depend.make delete mode 100644 src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/flags.make delete mode 100644 src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/link.txt delete mode 100644 src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/progress.make delete mode 100644 src/main/cpp/jni/build/runtime/CMakeFiles/progress.marks delete mode 100644 src/main/cpp/jni/build/runtime/Makefile delete mode 100644 src/main/cpp/jni/build/runtime/cmake_install.cmake diff --git a/src/main/cpp/jni/build/CMakeCache.txt b/src/main/cpp/jni/build/CMakeCache.txt deleted file mode 100644 index 7881fdd031a..00000000000 --- a/src/main/cpp/jni/build/CMakeCache.txt +++ /dev/null @@ -1,661 +0,0 @@ -# This is the CMakeCache file. -# For build in directory: /home/rene/projects/systemds/src/main/cpp/jni/build -# It was generated by CMake: /usr/bin/cmake -# You can edit this file to change values found and used by cmake. -# If you do not want to change any of the values, simply exit the editor. -# If you do want to change a value, simply edit, save, and exit the editor. -# The syntax for the file is as follows: -# KEY:TYPE=VALUE -# KEY is the name of a variable in the cache. -# TYPE is a hint to GUIs for the type of VALUE, DO NOT EDIT TYPE!. -# VALUE is the current value for the KEY. - -######################## -# EXTERNAL cache entries -######################## - -//Path to a program. -CMAKE_ADDR2LINE:FILEPATH=/usr/bin/addr2line - -//Path to a program. -CMAKE_AR:FILEPATH=/usr/bin/ar - -//Choose the type of build, options are: None Debug Release RelWithDebInfo -// MinSizeRel ... -CMAKE_BUILD_TYPE:STRING=Release - -//Enable/Disable color output during build. -CMAKE_COLOR_MAKEFILE:BOOL=ON - -//CXX compiler -CMAKE_CXX_COMPILER:FILEPATH=/usr/bin/c++ - -//A wrapper around 'ar' adding the appropriate '--plugin' option -// for the GCC compiler -CMAKE_CXX_COMPILER_AR:FILEPATH=/usr/bin/gcc-ar-12 - -//A wrapper around 'ranlib' adding the appropriate '--plugin' option -// for the GCC compiler -CMAKE_CXX_COMPILER_RANLIB:FILEPATH=/usr/bin/gcc-ranlib-12 - -//Flags used by the CXX compiler during all build types. -CMAKE_CXX_FLAGS:STRING= - -//Flags used by the CXX compiler during DEBUG builds. -CMAKE_CXX_FLAGS_DEBUG:STRING=-g - -//Flags used by the CXX compiler during MINSIZEREL builds. -CMAKE_CXX_FLAGS_MINSIZEREL:STRING=-Os -DNDEBUG - -//Flags used by the CXX compiler during RELEASE builds. -CMAKE_CXX_FLAGS_RELEASE:STRING=-O3 -DNDEBUG - -//Flags used by the CXX compiler during RELWITHDEBINFO builds. -CMAKE_CXX_FLAGS_RELWITHDEBINFO:STRING=-O2 -g -DNDEBUG - -//Path to a program. -CMAKE_DLLTOOL:FILEPATH=CMAKE_DLLTOOL-NOTFOUND - -//Flags used by the linker during all build types. -CMAKE_EXE_LINKER_FLAGS:STRING= - -//Flags used by the linker during DEBUG builds. -CMAKE_EXE_LINKER_FLAGS_DEBUG:STRING= - -//Flags used by the linker during MINSIZEREL builds. -CMAKE_EXE_LINKER_FLAGS_MINSIZEREL:STRING= - -//Flags used by the linker during RELEASE builds. -CMAKE_EXE_LINKER_FLAGS_RELEASE:STRING= - -//Flags used by the linker during RELWITHDEBINFO builds. -CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO:STRING= - -//Enable/Disable output of compile commands during generation. -CMAKE_EXPORT_COMPILE_COMMANDS:BOOL= - -//Install path prefix, prepended onto install directories. -CMAKE_INSTALL_PREFIX:PATH=/usr/local - -//Path to a program. -CMAKE_LINKER:FILEPATH=/usr/bin/ld - -//Path to a program. -CMAKE_MAKE_PROGRAM:FILEPATH=/usr/bin/gmake - -//Flags used by the linker during the creation of modules during -// all build types. -CMAKE_MODULE_LINKER_FLAGS:STRING= - -//Flags used by the linker during the creation of modules during -// DEBUG builds. -CMAKE_MODULE_LINKER_FLAGS_DEBUG:STRING= - -//Flags used by the linker during the creation of modules during -// MINSIZEREL builds. -CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL:STRING= - -//Flags used by the linker during the creation of modules during -// RELEASE builds. -CMAKE_MODULE_LINKER_FLAGS_RELEASE:STRING= - -//Flags used by the linker during the creation of modules during -// RELWITHDEBINFO builds. -CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO:STRING= - -//Path to a program. -CMAKE_NM:FILEPATH=/usr/bin/nm - -//Path to a program. -CMAKE_OBJCOPY:FILEPATH=/usr/bin/objcopy - -//Path to a program. -CMAKE_OBJDUMP:FILEPATH=/usr/bin/objdump - -//Value Computed by CMake -CMAKE_PROJECT_DESCRIPTION:STATIC= - -//Value Computed by CMake -CMAKE_PROJECT_HOMEPAGE_URL:STATIC= - -//Value Computed by CMake -CMAKE_PROJECT_NAME:STATIC=cujava_jni - -//Path to a program. -CMAKE_RANLIB:FILEPATH=/usr/bin/ranlib - -//Path to a program. -CMAKE_READELF:FILEPATH=/usr/bin/readelf - -//Flags used by the linker during the creation of shared libraries -// during all build types. -CMAKE_SHARED_LINKER_FLAGS:STRING= - -//Flags used by the linker during the creation of shared libraries -// during DEBUG builds. -CMAKE_SHARED_LINKER_FLAGS_DEBUG:STRING= - -//Flags used by the linker during the creation of shared libraries -// during MINSIZEREL builds. -CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL:STRING= - -//Flags used by the linker during the creation of shared libraries -// during RELEASE builds. -CMAKE_SHARED_LINKER_FLAGS_RELEASE:STRING= - -//Flags used by the linker during the creation of shared libraries -// during RELWITHDEBINFO builds. -CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO:STRING= - -//If set, runtime paths are not added when installing shared libraries, -// but are added when building. -CMAKE_SKIP_INSTALL_RPATH:BOOL=NO - -//If set, runtime paths are not added when using shared libraries. -CMAKE_SKIP_RPATH:BOOL=NO - -//Flags used by the linker during the creation of static libraries -// during all build types. -CMAKE_STATIC_LINKER_FLAGS:STRING= - -//Flags used by the linker during the creation of static libraries -// during DEBUG builds. -CMAKE_STATIC_LINKER_FLAGS_DEBUG:STRING= - -//Flags used by the linker during the creation of static libraries -// during MINSIZEREL builds. -CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL:STRING= - -//Flags used by the linker during the creation of static libraries -// during RELEASE builds. -CMAKE_STATIC_LINKER_FLAGS_RELEASE:STRING= - -//Flags used by the linker during the creation of static libraries -// during RELWITHDEBINFO builds. -CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO:STRING= - -//Path to a program. -CMAKE_STRIP:FILEPATH=/usr/bin/strip - -//If this value is on, makefiles will be generated without the -// .SILENT directive, and all commands will be echoed to the console -// during the make. This is useful for debugging only. With Visual -// Studio IDE projects all commands are done without /nologo. -CMAKE_VERBOSE_MAKEFILE:BOOL=FALSE - -CUDAToolkit_BIN_DIR:PATH=/usr/local/cuda-12.6/bin - -//Path to a program. -CUDAToolkit_NVCC_EXECUTABLE:FILEPATH=/usr/local/cuda-12.6/bin/nvcc - -//Path to a library. -CUDAToolkit_rt_LIBRARY:FILEPATH=/usr/lib/x86_64-linux-gnu/librt.a - -//Path to a library. -CUDA_CUDART:FILEPATH=/usr/local/cuda-12.6/lib64/libcudart.so - -//Path to a library. -CUDA_OpenCL_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libOpenCL.so - -//Path to a library. -CUDA_cublasLt_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcublasLt.so - -//Path to a library. -CUDA_cublasLt_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcublasLt_static.a - -//Path to a library. -CUDA_cublas_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcublas.so - -//Path to a library. -CUDA_cublas_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcublas_static.a - -//Path to a library. -CUDA_cuda_driver_LIBRARY:FILEPATH=/usr/lib/x86_64-linux-gnu/libcuda.so - -//Path to a library. -CUDA_cudart_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcudart.so - -//Path to a library. -CUDA_cudart_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcudart_static.a - -//Path to a library. -CUDA_cufft_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcufft.so - -//Path to a library. -CUDA_cufft_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcufft_static.a - -//Path to a library. -CUDA_cufftw_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcufftw.so - -//Path to a library. -CUDA_culibos_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libculibos.a - -//Path to a library. -CUDA_cupti_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcupti.so - -//Path to a library. -CUDA_cupti_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcupti_static.a - -//Path to a library. -CUDA_curand_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcurand.so - -//Path to a library. -CUDA_curand_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcurand_static.a - -//Path to a library. -CUDA_cusolver_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcusolver.so - -//Path to a library. -CUDA_cusolver_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcusolver_static.a - -//Path to a library. -CUDA_cusparse_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcusparse.so - -//Path to a library. -CUDA_cusparse_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libcusparse_static.a - -//Path to a library. -CUDA_nppc_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppc.so - -//Path to a library. -CUDA_nppc_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppc_static.a - -//Path to a library. -CUDA_nppial_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppial.so - -//Path to a library. -CUDA_nppial_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppial_static.a - -//Path to a library. -CUDA_nppicc_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppicc.so - -//Path to a library. -CUDA_nppicc_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppicc_static.a - -//Path to a library. -CUDA_nppicom_LIBRARY:FILEPATH=CUDA_nppicom_LIBRARY-NOTFOUND - -//Path to a library. -CUDA_nppicom_static_LIBRARY:FILEPATH=CUDA_nppicom_static_LIBRARY-NOTFOUND - -//Path to a library. -CUDA_nppidei_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppidei.so - -//Path to a library. -CUDA_nppidei_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppidei_static.a - -//Path to a library. -CUDA_nppif_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppif.so - -//Path to a library. -CUDA_nppif_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppif_static.a - -//Path to a library. -CUDA_nppig_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppig.so - -//Path to a library. -CUDA_nppig_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppig_static.a - -//Path to a library. -CUDA_nppim_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppim.so - -//Path to a library. -CUDA_nppim_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppim_static.a - -//Path to a library. -CUDA_nppist_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppist.so - -//Path to a library. -CUDA_nppist_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppist_static.a - -//Path to a library. -CUDA_nppisu_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppisu.so - -//Path to a library. -CUDA_nppisu_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppisu_static.a - -//Path to a library. -CUDA_nppitc_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppitc.so - -//Path to a library. -CUDA_nppitc_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnppitc_static.a - -//Path to a library. -CUDA_npps_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnpps.so - -//Path to a library. -CUDA_npps_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnpps_static.a - -//Path to a library. -CUDA_nvToolsExt_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnvToolsExt.so - -//Path to a library. -CUDA_nvgraph_LIBRARY:FILEPATH=CUDA_nvgraph_LIBRARY-NOTFOUND - -//Path to a library. -CUDA_nvgraph_static_LIBRARY:FILEPATH=CUDA_nvgraph_static_LIBRARY-NOTFOUND - -//Path to a library. -CUDA_nvjpeg_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnvjpeg.so - -//Path to a library. -CUDA_nvjpeg_static_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnvjpeg_static.a - -//Path to a library. -CUDA_nvml_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/stubs/libnvidia-ml.so - -//Path to a library. -CUDA_nvrtc_LIBRARY:FILEPATH=/usr/local/cuda-12.6/lib64/libnvrtc.so - -//Value Computed by CMake -CuJavaCommonJNI_BINARY_DIR:STATIC=/home/rene/projects/systemds/src/main/cpp/jni/build/common - -//Value Computed by CMake -CuJavaCommonJNI_IS_TOP_LEVEL:STATIC=OFF - -//Value Computed by CMake -CuJavaCommonJNI_SOURCE_DIR:STATIC=/home/rene/projects/systemds/src/main/cpp/jni/common - -//Value Computed by CMake -CuJavaDriver_BINARY_DIR:STATIC=/home/rene/projects/systemds/src/main/cpp/jni/build/driver - -//Value Computed by CMake -CuJavaDriver_IS_TOP_LEVEL:STATIC=OFF - -//Value Computed by CMake -CuJavaDriver_SOURCE_DIR:STATIC=/home/rene/projects/systemds/src/main/cpp/jni/driver - -//Value Computed by CMake -CuJavaRuntime_BINARY_DIR:STATIC=/home/rene/projects/systemds/src/main/cpp/jni/build/runtime - -//Value Computed by CMake -CuJavaRuntime_IS_TOP_LEVEL:STATIC=OFF - -//Value Computed by CMake -CuJavaRuntime_SOURCE_DIR:STATIC=/home/rene/projects/systemds/src/main/cpp/jni/runtime - -//Path to a file. -JAVA_AWT_INCLUDE_PATH:PATH=/usr/lib/jvm/java-11-openjdk-amd64/include - -//Path to a library. -JAVA_AWT_LIBRARY:FILEPATH=/usr/lib/jvm/java-11-openjdk-amd64/lib/libjawt.so - -//Path to a file. -JAVA_INCLUDE_PATH:PATH=/usr/lib/jvm/java-11-openjdk-amd64/include - -//Path to a file. -JAVA_INCLUDE_PATH2:PATH=/usr/lib/jvm/java-11-openjdk-amd64/include/linux - -//Path to a library. -JAVA_JVM_LIBRARY:FILEPATH=/usr/lib/jvm/java-11-openjdk-amd64/lib/server/libjvm.so - -//Value Computed by CMake -cujava_jni_BINARY_DIR:STATIC=/home/rene/projects/systemds/src/main/cpp/jni/build - -//Value Computed by CMake -cujava_jni_IS_TOP_LEVEL:STATIC=ON - -//Value Computed by CMake -cujava_jni_SOURCE_DIR:STATIC=/home/rene/projects/systemds/src/main/cpp/jni - - -######################## -# INTERNAL cache entries -######################## - -//ADVANCED property for variable: CMAKE_ADDR2LINE -CMAKE_ADDR2LINE-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_AR -CMAKE_AR-ADVANCED:INTERNAL=1 -//This is the directory where this CMakeCache.txt was created -CMAKE_CACHEFILE_DIR:INTERNAL=/home/rene/projects/systemds/src/main/cpp/jni/build -//Major version of cmake used to create the current loaded cache -CMAKE_CACHE_MAJOR_VERSION:INTERNAL=3 -//Minor version of cmake used to create the current loaded cache -CMAKE_CACHE_MINOR_VERSION:INTERNAL=22 -//Patch version of cmake used to create the current loaded cache -CMAKE_CACHE_PATCH_VERSION:INTERNAL=1 -//ADVANCED property for variable: CMAKE_COLOR_MAKEFILE -CMAKE_COLOR_MAKEFILE-ADVANCED:INTERNAL=1 -//Path to CMake executable. -CMAKE_COMMAND:INTERNAL=/usr/bin/cmake -//Path to cpack program executable. -CMAKE_CPACK_COMMAND:INTERNAL=/usr/bin/cpack -//Path to ctest program executable. -CMAKE_CTEST_COMMAND:INTERNAL=/usr/bin/ctest -//ADVANCED property for variable: CMAKE_CXX_COMPILER -CMAKE_CXX_COMPILER-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_CXX_COMPILER_AR -CMAKE_CXX_COMPILER_AR-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_CXX_COMPILER_RANLIB -CMAKE_CXX_COMPILER_RANLIB-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_CXX_FLAGS -CMAKE_CXX_FLAGS-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_CXX_FLAGS_DEBUG -CMAKE_CXX_FLAGS_DEBUG-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_CXX_FLAGS_MINSIZEREL -CMAKE_CXX_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELEASE -CMAKE_CXX_FLAGS_RELEASE-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_CXX_FLAGS_RELWITHDEBINFO -CMAKE_CXX_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_DLLTOOL -CMAKE_DLLTOOL-ADVANCED:INTERNAL=1 -//Executable file format -CMAKE_EXECUTABLE_FORMAT:INTERNAL=ELF -//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS -CMAKE_EXE_LINKER_FLAGS-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_DEBUG -CMAKE_EXE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_MINSIZEREL -CMAKE_EXE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELEASE -CMAKE_EXE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO -CMAKE_EXE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_EXPORT_COMPILE_COMMANDS -CMAKE_EXPORT_COMPILE_COMMANDS-ADVANCED:INTERNAL=1 -//Name of external makefile project generator. -CMAKE_EXTRA_GENERATOR:INTERNAL= -//Name of generator. -CMAKE_GENERATOR:INTERNAL=Unix Makefiles -//Generator instance identifier. -CMAKE_GENERATOR_INSTANCE:INTERNAL= -//Name of generator platform. -CMAKE_GENERATOR_PLATFORM:INTERNAL= -//Name of generator toolset. -CMAKE_GENERATOR_TOOLSET:INTERNAL= -//Test CMAKE_HAVE_LIBC_PTHREAD -CMAKE_HAVE_LIBC_PTHREAD:INTERNAL=1 -//Have include pthread.h -CMAKE_HAVE_PTHREAD_H:INTERNAL=1 -//Source directory with the top level CMakeLists.txt file for this -// project -CMAKE_HOME_DIRECTORY:INTERNAL=/home/rene/projects/systemds/src/main/cpp/jni -//Install .so files without execute permission. -CMAKE_INSTALL_SO_NO_EXE:INTERNAL=1 -//ADVANCED property for variable: CMAKE_LINKER -CMAKE_LINKER-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_MAKE_PROGRAM -CMAKE_MAKE_PROGRAM-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS -CMAKE_MODULE_LINKER_FLAGS-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_DEBUG -CMAKE_MODULE_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL -CMAKE_MODULE_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELEASE -CMAKE_MODULE_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO -CMAKE_MODULE_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_NM -CMAKE_NM-ADVANCED:INTERNAL=1 -//number of local generators -CMAKE_NUMBER_OF_MAKEFILES:INTERNAL=4 -//ADVANCED property for variable: CMAKE_OBJCOPY -CMAKE_OBJCOPY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_OBJDUMP -CMAKE_OBJDUMP-ADVANCED:INTERNAL=1 -//Platform information initialized -CMAKE_PLATFORM_INFO_INITIALIZED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_RANLIB -CMAKE_RANLIB-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_READELF -CMAKE_READELF-ADVANCED:INTERNAL=1 -//Path to CMake installation. -CMAKE_ROOT:INTERNAL=/usr/share/cmake-3.22 -//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS -CMAKE_SHARED_LINKER_FLAGS-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_DEBUG -CMAKE_SHARED_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL -CMAKE_SHARED_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELEASE -CMAKE_SHARED_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO -CMAKE_SHARED_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_SKIP_INSTALL_RPATH -CMAKE_SKIP_INSTALL_RPATH-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_SKIP_RPATH -CMAKE_SKIP_RPATH-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS -CMAKE_STATIC_LINKER_FLAGS-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_DEBUG -CMAKE_STATIC_LINKER_FLAGS_DEBUG-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL -CMAKE_STATIC_LINKER_FLAGS_MINSIZEREL-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELEASE -CMAKE_STATIC_LINKER_FLAGS_RELEASE-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO -CMAKE_STATIC_LINKER_FLAGS_RELWITHDEBINFO-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CMAKE_STRIP -CMAKE_STRIP-ADVANCED:INTERNAL=1 -//uname command -CMAKE_UNAME:INTERNAL=/usr/bin/uname -//ADVANCED property for variable: CMAKE_VERBOSE_MAKEFILE -CMAKE_VERBOSE_MAKEFILE-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDAToolkit_NVCC_EXECUTABLE -CUDAToolkit_NVCC_EXECUTABLE-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDAToolkit_rt_LIBRARY -CUDAToolkit_rt_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_CUDART -CUDA_CUDART-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_OpenCL_LIBRARY -CUDA_OpenCL_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_cublasLt_LIBRARY -CUDA_cublasLt_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_cublasLt_static_LIBRARY -CUDA_cublasLt_static_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_cublas_LIBRARY -CUDA_cublas_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_cublas_static_LIBRARY -CUDA_cublas_static_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_cuda_driver_LIBRARY -CUDA_cuda_driver_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_cudart_LIBRARY -CUDA_cudart_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_cudart_static_LIBRARY -CUDA_cudart_static_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_cufft_LIBRARY -CUDA_cufft_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_cufft_static_LIBRARY -CUDA_cufft_static_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_cufftw_LIBRARY -CUDA_cufftw_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_culibos_LIBRARY -CUDA_culibos_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_cupti_LIBRARY -CUDA_cupti_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_cupti_static_LIBRARY -CUDA_cupti_static_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_curand_LIBRARY -CUDA_curand_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_curand_static_LIBRARY -CUDA_curand_static_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_cusolver_LIBRARY -CUDA_cusolver_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_cusolver_static_LIBRARY -CUDA_cusolver_static_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_cusparse_LIBRARY -CUDA_cusparse_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_cusparse_static_LIBRARY -CUDA_cusparse_static_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nppc_LIBRARY -CUDA_nppc_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nppc_static_LIBRARY -CUDA_nppc_static_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nppial_LIBRARY -CUDA_nppial_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nppial_static_LIBRARY -CUDA_nppial_static_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nppicc_LIBRARY -CUDA_nppicc_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nppicc_static_LIBRARY -CUDA_nppicc_static_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nppicom_LIBRARY -CUDA_nppicom_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nppicom_static_LIBRARY -CUDA_nppicom_static_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nppidei_LIBRARY -CUDA_nppidei_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nppidei_static_LIBRARY -CUDA_nppidei_static_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nppif_LIBRARY -CUDA_nppif_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nppif_static_LIBRARY -CUDA_nppif_static_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nppig_LIBRARY -CUDA_nppig_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nppig_static_LIBRARY -CUDA_nppig_static_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nppim_LIBRARY -CUDA_nppim_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nppim_static_LIBRARY -CUDA_nppim_static_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nppist_LIBRARY -CUDA_nppist_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nppist_static_LIBRARY -CUDA_nppist_static_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nppisu_LIBRARY -CUDA_nppisu_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nppisu_static_LIBRARY -CUDA_nppisu_static_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nppitc_LIBRARY -CUDA_nppitc_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nppitc_static_LIBRARY -CUDA_nppitc_static_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_npps_LIBRARY -CUDA_npps_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_npps_static_LIBRARY -CUDA_npps_static_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nvToolsExt_LIBRARY -CUDA_nvToolsExt_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nvgraph_LIBRARY -CUDA_nvgraph_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nvgraph_static_LIBRARY -CUDA_nvgraph_static_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nvjpeg_LIBRARY -CUDA_nvjpeg_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nvjpeg_static_LIBRARY -CUDA_nvjpeg_static_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nvml_LIBRARY -CUDA_nvml_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: CUDA_nvrtc_LIBRARY -CUDA_nvrtc_LIBRARY-ADVANCED:INTERNAL=1 -//Details about finding CUDAToolkit -FIND_PACKAGE_MESSAGE_DETAILS_CUDAToolkit:INTERNAL=[/usr/local/cuda-12.6/include][/usr/local/cuda-12.6/lib64/libcudart.so][/usr/local/cuda-12.6/bin][v12.6.85()] -//Details about finding JNI -FIND_PACKAGE_MESSAGE_DETAILS_JNI:INTERNAL=[/usr/lib/jvm/java-11-openjdk-amd64/lib/libjawt.so][/usr/lib/jvm/java-11-openjdk-amd64/lib/server/libjvm.so][/usr/lib/jvm/java-11-openjdk-amd64/include][/usr/lib/jvm/java-11-openjdk-amd64/include/linux][/usr/lib/jvm/java-11-openjdk-amd64/include][v()] -//Details about finding Threads -FIND_PACKAGE_MESSAGE_DETAILS_Threads:INTERNAL=[TRUE][v()] -//ADVANCED property for variable: JAVA_AWT_INCLUDE_PATH -JAVA_AWT_INCLUDE_PATH-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: JAVA_AWT_LIBRARY -JAVA_AWT_LIBRARY-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: JAVA_INCLUDE_PATH -JAVA_INCLUDE_PATH-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: JAVA_INCLUDE_PATH2 -JAVA_INCLUDE_PATH2-ADVANCED:INTERNAL=1 -//ADVANCED property for variable: JAVA_JVM_LIBRARY -JAVA_JVM_LIBRARY-ADVANCED:INTERNAL=1 - diff --git a/src/main/cpp/jni/build/CMakeFiles/3.22.1/CMakeCXXCompiler.cmake b/src/main/cpp/jni/build/CMakeFiles/3.22.1/CMakeCXXCompiler.cmake deleted file mode 100644 index 08880e71e24..00000000000 --- a/src/main/cpp/jni/build/CMakeFiles/3.22.1/CMakeCXXCompiler.cmake +++ /dev/null @@ -1,83 +0,0 @@ -set(CMAKE_CXX_COMPILER "/usr/bin/c++") -set(CMAKE_CXX_COMPILER_ARG1 "") -set(CMAKE_CXX_COMPILER_ID "GNU") -set(CMAKE_CXX_COMPILER_VERSION "12.3.0") -set(CMAKE_CXX_COMPILER_VERSION_INTERNAL "") -set(CMAKE_CXX_COMPILER_WRAPPER "") -set(CMAKE_CXX_STANDARD_COMPUTED_DEFAULT "17") -set(CMAKE_CXX_EXTENSIONS_COMPUTED_DEFAULT "ON") -set(CMAKE_CXX_COMPILE_FEATURES "cxx_std_98;cxx_template_template_parameters;cxx_std_11;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates;cxx_std_14;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates;cxx_std_17;cxx_std_20;cxx_std_23") -set(CMAKE_CXX98_COMPILE_FEATURES "cxx_std_98;cxx_template_template_parameters") -set(CMAKE_CXX11_COMPILE_FEATURES "cxx_std_11;cxx_alias_templates;cxx_alignas;cxx_alignof;cxx_attributes;cxx_auto_type;cxx_constexpr;cxx_decltype;cxx_decltype_incomplete_return_types;cxx_default_function_template_args;cxx_defaulted_functions;cxx_defaulted_move_initializers;cxx_delegating_constructors;cxx_deleted_functions;cxx_enum_forward_declarations;cxx_explicit_conversions;cxx_extended_friend_declarations;cxx_extern_templates;cxx_final;cxx_func_identifier;cxx_generalized_initializers;cxx_inheriting_constructors;cxx_inline_namespaces;cxx_lambdas;cxx_local_type_template_args;cxx_long_long_type;cxx_noexcept;cxx_nonstatic_member_init;cxx_nullptr;cxx_override;cxx_range_for;cxx_raw_string_literals;cxx_reference_qualified_functions;cxx_right_angle_brackets;cxx_rvalue_references;cxx_sizeof_member;cxx_static_assert;cxx_strong_enums;cxx_thread_local;cxx_trailing_return_types;cxx_unicode_literals;cxx_uniform_initialization;cxx_unrestricted_unions;cxx_user_literals;cxx_variadic_macros;cxx_variadic_templates") -set(CMAKE_CXX14_COMPILE_FEATURES "cxx_std_14;cxx_aggregate_default_initializers;cxx_attribute_deprecated;cxx_binary_literals;cxx_contextual_conversions;cxx_decltype_auto;cxx_digit_separators;cxx_generic_lambdas;cxx_lambda_init_captures;cxx_relaxed_constexpr;cxx_return_type_deduction;cxx_variable_templates") -set(CMAKE_CXX17_COMPILE_FEATURES "cxx_std_17") -set(CMAKE_CXX20_COMPILE_FEATURES "cxx_std_20") -set(CMAKE_CXX23_COMPILE_FEATURES "cxx_std_23") - -set(CMAKE_CXX_PLATFORM_ID "Linux") -set(CMAKE_CXX_SIMULATE_ID "") -set(CMAKE_CXX_COMPILER_FRONTEND_VARIANT "") -set(CMAKE_CXX_SIMULATE_VERSION "") - - - - -set(CMAKE_AR "/usr/bin/ar") -set(CMAKE_CXX_COMPILER_AR "/usr/bin/gcc-ar-12") -set(CMAKE_RANLIB "/usr/bin/ranlib") -set(CMAKE_CXX_COMPILER_RANLIB "/usr/bin/gcc-ranlib-12") -set(CMAKE_LINKER "/usr/bin/ld") -set(CMAKE_MT "") -set(CMAKE_COMPILER_IS_GNUCXX 1) -set(CMAKE_CXX_COMPILER_LOADED 1) -set(CMAKE_CXX_COMPILER_WORKS TRUE) -set(CMAKE_CXX_ABI_COMPILED TRUE) - -set(CMAKE_CXX_COMPILER_ENV_VAR "CXX") - -set(CMAKE_CXX_COMPILER_ID_RUN 1) -set(CMAKE_CXX_SOURCE_FILE_EXTENSIONS C;M;c++;cc;cpp;cxx;m;mm;mpp;CPP;ixx;cppm) -set(CMAKE_CXX_IGNORE_EXTENSIONS inl;h;hpp;HPP;H;o;O;obj;OBJ;def;DEF;rc;RC) - -foreach (lang C OBJC OBJCXX) - if (CMAKE_${lang}_COMPILER_ID_RUN) - foreach(extension IN LISTS CMAKE_${lang}_SOURCE_FILE_EXTENSIONS) - list(REMOVE_ITEM CMAKE_CXX_SOURCE_FILE_EXTENSIONS ${extension}) - endforeach() - endif() -endforeach() - -set(CMAKE_CXX_LINKER_PREFERENCE 30) -set(CMAKE_CXX_LINKER_PREFERENCE_PROPAGATES 1) - -# Save compiler ABI information. -set(CMAKE_CXX_SIZEOF_DATA_PTR "8") -set(CMAKE_CXX_COMPILER_ABI "ELF") -set(CMAKE_CXX_BYTE_ORDER "LITTLE_ENDIAN") -set(CMAKE_CXX_LIBRARY_ARCHITECTURE "x86_64-linux-gnu") - -if(CMAKE_CXX_SIZEOF_DATA_PTR) - set(CMAKE_SIZEOF_VOID_P "${CMAKE_CXX_SIZEOF_DATA_PTR}") -endif() - -if(CMAKE_CXX_COMPILER_ABI) - set(CMAKE_INTERNAL_PLATFORM_ABI "${CMAKE_CXX_COMPILER_ABI}") -endif() - -if(CMAKE_CXX_LIBRARY_ARCHITECTURE) - set(CMAKE_LIBRARY_ARCHITECTURE "x86_64-linux-gnu") -endif() - -set(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX "") -if(CMAKE_CXX_CL_SHOWINCLUDES_PREFIX) - set(CMAKE_CL_SHOWINCLUDES_PREFIX "${CMAKE_CXX_CL_SHOWINCLUDES_PREFIX}") -endif() - - - - - -set(CMAKE_CXX_IMPLICIT_INCLUDE_DIRECTORIES "/usr/include/c++/12;/usr/include/x86_64-linux-gnu/c++/12;/usr/include/c++/12/backward;/usr/lib/gcc/x86_64-linux-gnu/12/include;/usr/local/include;/usr/include/x86_64-linux-gnu;/usr/include") -set(CMAKE_CXX_IMPLICIT_LINK_LIBRARIES "stdc++;m;gcc_s;gcc;c;gcc_s;gcc") -set(CMAKE_CXX_IMPLICIT_LINK_DIRECTORIES "/usr/lib/gcc/x86_64-linux-gnu/12;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib") -set(CMAKE_CXX_IMPLICIT_LINK_FRAMEWORK_DIRECTORIES "") diff --git a/src/main/cpp/jni/build/CMakeFiles/3.22.1/CMakeDetermineCompilerABI_CXX.bin b/src/main/cpp/jni/build/CMakeFiles/3.22.1/CMakeDetermineCompilerABI_CXX.bin deleted file mode 100755 index be4688452097ca7d724b10c7ea18ff3d8978dbbc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15992 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 diff --git a/src/main/cpp/jni/build/CMakeFiles/3.22.1/CMakeSystem.cmake b/src/main/cpp/jni/build/CMakeFiles/3.22.1/CMakeSystem.cmake deleted file mode 100644 index c1d7ea84b21..00000000000 --- a/src/main/cpp/jni/build/CMakeFiles/3.22.1/CMakeSystem.cmake +++ /dev/null @@ -1,15 +0,0 @@ -set(CMAKE_HOST_SYSTEM "Linux-6.8.0-65-generic") -set(CMAKE_HOST_SYSTEM_NAME "Linux") -set(CMAKE_HOST_SYSTEM_VERSION "6.8.0-65-generic") -set(CMAKE_HOST_SYSTEM_PROCESSOR "x86_64") - - - -set(CMAKE_SYSTEM "Linux-6.8.0-65-generic") -set(CMAKE_SYSTEM_NAME "Linux") -set(CMAKE_SYSTEM_VERSION "6.8.0-65-generic") -set(CMAKE_SYSTEM_PROCESSOR "x86_64") - -set(CMAKE_CROSSCOMPILING "FALSE") - -set(CMAKE_SYSTEM_LOADED 1) diff --git a/src/main/cpp/jni/build/CMakeFiles/3.22.1/CompilerIdCXX/CMakeCXXCompilerId.cpp b/src/main/cpp/jni/build/CMakeFiles/3.22.1/CompilerIdCXX/CMakeCXXCompilerId.cpp deleted file mode 100644 index 25c62a8c3cb..00000000000 --- a/src/main/cpp/jni/build/CMakeFiles/3.22.1/CompilerIdCXX/CMakeCXXCompilerId.cpp +++ /dev/null @@ -1,791 +0,0 @@ -/* This source file must have a .cpp extension so that all C++ compilers - recognize the extension without flags. Borland does not know .cxx for - example. */ -#ifndef __cplusplus -# error "A C compiler has been selected for C++." -#endif - -#if !defined(__has_include) -/* If the compiler does not have __has_include, pretend the answer is - always no. */ -# define __has_include(x) 0 -#endif - - -/* Version number components: V=Version, R=Revision, P=Patch - Version date components: YYYY=Year, MM=Month, DD=Day */ - -#if defined(__COMO__) -# define COMPILER_ID "Comeau" - /* __COMO_VERSION__ = VRR */ -# define COMPILER_VERSION_MAJOR DEC(__COMO_VERSION__ / 100) -# define COMPILER_VERSION_MINOR DEC(__COMO_VERSION__ % 100) - -#elif defined(__INTEL_COMPILER) || defined(__ICC) -# define COMPILER_ID "Intel" -# if defined(_MSC_VER) -# define SIMULATE_ID "MSVC" -# endif -# if defined(__GNUC__) -# define SIMULATE_ID "GNU" -# endif - /* __INTEL_COMPILER = VRP prior to 2021, and then VVVV for 2021 and later, - except that a few beta releases use the old format with V=2021. */ -# if __INTEL_COMPILER < 2021 || __INTEL_COMPILER == 202110 || __INTEL_COMPILER == 202111 -# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER/100) -# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER/10 % 10) -# if defined(__INTEL_COMPILER_UPDATE) -# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER_UPDATE) -# else -# define COMPILER_VERSION_PATCH DEC(__INTEL_COMPILER % 10) -# endif -# else -# define COMPILER_VERSION_MAJOR DEC(__INTEL_COMPILER) -# define COMPILER_VERSION_MINOR DEC(__INTEL_COMPILER_UPDATE) - /* The third version component from --version is an update index, - but no macro is provided for it. */ -# define COMPILER_VERSION_PATCH DEC(0) -# endif -# if defined(__INTEL_COMPILER_BUILD_DATE) - /* __INTEL_COMPILER_BUILD_DATE = YYYYMMDD */ -# define COMPILER_VERSION_TWEAK DEC(__INTEL_COMPILER_BUILD_DATE) -# endif -# if defined(_MSC_VER) - /* _MSC_VER = VVRR */ -# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) -# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) -# endif -# if defined(__GNUC__) -# define SIMULATE_VERSION_MAJOR DEC(__GNUC__) -# elif defined(__GNUG__) -# define SIMULATE_VERSION_MAJOR DEC(__GNUG__) -# endif -# if defined(__GNUC_MINOR__) -# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__) -# endif -# if defined(__GNUC_PATCHLEVEL__) -# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) -# endif - -#elif (defined(__clang__) && defined(__INTEL_CLANG_COMPILER)) || defined(__INTEL_LLVM_COMPILER) -# define COMPILER_ID "IntelLLVM" -#if defined(_MSC_VER) -# define SIMULATE_ID "MSVC" -#endif -#if defined(__GNUC__) -# define SIMULATE_ID "GNU" -#endif -/* __INTEL_LLVM_COMPILER = VVVVRP prior to 2021.2.0, VVVVRRPP for 2021.2.0 and - * later. Look for 6 digit vs. 8 digit version number to decide encoding. - * VVVV is no smaller than the current year when a version is released. - */ -#if __INTEL_LLVM_COMPILER < 1000000L -# define COMPILER_VERSION_MAJOR DEC(__INTEL_LLVM_COMPILER/100) -# define COMPILER_VERSION_MINOR DEC(__INTEL_LLVM_COMPILER/10 % 10) -# define COMPILER_VERSION_PATCH DEC(__INTEL_LLVM_COMPILER % 10) -#else -# define COMPILER_VERSION_MAJOR DEC(__INTEL_LLVM_COMPILER/10000) -# define COMPILER_VERSION_MINOR DEC(__INTEL_LLVM_COMPILER/100 % 100) -# define COMPILER_VERSION_PATCH DEC(__INTEL_LLVM_COMPILER % 100) -#endif -#if defined(_MSC_VER) - /* _MSC_VER = VVRR */ -# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) -# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) -#endif -#if defined(__GNUC__) -# define SIMULATE_VERSION_MAJOR DEC(__GNUC__) -#elif defined(__GNUG__) -# define SIMULATE_VERSION_MAJOR DEC(__GNUG__) -#endif -#if defined(__GNUC_MINOR__) -# define SIMULATE_VERSION_MINOR DEC(__GNUC_MINOR__) -#endif -#if defined(__GNUC_PATCHLEVEL__) -# define SIMULATE_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) -#endif - -#elif defined(__PATHCC__) -# define COMPILER_ID "PathScale" -# define COMPILER_VERSION_MAJOR DEC(__PATHCC__) -# define COMPILER_VERSION_MINOR DEC(__PATHCC_MINOR__) -# if defined(__PATHCC_PATCHLEVEL__) -# define COMPILER_VERSION_PATCH DEC(__PATHCC_PATCHLEVEL__) -# endif - -#elif defined(__BORLANDC__) && defined(__CODEGEARC_VERSION__) -# define COMPILER_ID "Embarcadero" -# define COMPILER_VERSION_MAJOR HEX(__CODEGEARC_VERSION__>>24 & 0x00FF) -# define COMPILER_VERSION_MINOR HEX(__CODEGEARC_VERSION__>>16 & 0x00FF) -# define COMPILER_VERSION_PATCH DEC(__CODEGEARC_VERSION__ & 0xFFFF) - -#elif defined(__BORLANDC__) -# define COMPILER_ID "Borland" - /* __BORLANDC__ = 0xVRR */ -# define COMPILER_VERSION_MAJOR HEX(__BORLANDC__>>8) -# define COMPILER_VERSION_MINOR HEX(__BORLANDC__ & 0xFF) - -#elif defined(__WATCOMC__) && __WATCOMC__ < 1200 -# define COMPILER_ID "Watcom" - /* __WATCOMC__ = VVRR */ -# define COMPILER_VERSION_MAJOR DEC(__WATCOMC__ / 100) -# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10) -# if (__WATCOMC__ % 10) > 0 -# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10) -# endif - -#elif defined(__WATCOMC__) -# define COMPILER_ID "OpenWatcom" - /* __WATCOMC__ = VVRP + 1100 */ -# define COMPILER_VERSION_MAJOR DEC((__WATCOMC__ - 1100) / 100) -# define COMPILER_VERSION_MINOR DEC((__WATCOMC__ / 10) % 10) -# if (__WATCOMC__ % 10) > 0 -# define COMPILER_VERSION_PATCH DEC(__WATCOMC__ % 10) -# endif - -#elif defined(__SUNPRO_CC) -# define COMPILER_ID "SunPro" -# if __SUNPRO_CC >= 0x5100 - /* __SUNPRO_CC = 0xVRRP */ -# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>12) -# define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xFF) -# define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC & 0xF) -# else - /* __SUNPRO_CC = 0xVRP */ -# define COMPILER_VERSION_MAJOR HEX(__SUNPRO_CC>>8) -# define COMPILER_VERSION_MINOR HEX(__SUNPRO_CC>>4 & 0xF) -# define COMPILER_VERSION_PATCH HEX(__SUNPRO_CC & 0xF) -# endif - -#elif defined(__HP_aCC) -# define COMPILER_ID "HP" - /* __HP_aCC = VVRRPP */ -# define COMPILER_VERSION_MAJOR DEC(__HP_aCC/10000) -# define COMPILER_VERSION_MINOR DEC(__HP_aCC/100 % 100) -# define COMPILER_VERSION_PATCH DEC(__HP_aCC % 100) - -#elif defined(__DECCXX) -# define COMPILER_ID "Compaq" - /* __DECCXX_VER = VVRRTPPPP */ -# define COMPILER_VERSION_MAJOR DEC(__DECCXX_VER/10000000) -# define COMPILER_VERSION_MINOR DEC(__DECCXX_VER/100000 % 100) -# define COMPILER_VERSION_PATCH DEC(__DECCXX_VER % 10000) - -#elif defined(__IBMCPP__) && defined(__COMPILER_VER__) -# define COMPILER_ID "zOS" - /* __IBMCPP__ = VRP */ -# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100) -# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10) -# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10) - -#elif defined(__ibmxl__) && defined(__clang__) -# define COMPILER_ID "XLClang" -# define COMPILER_VERSION_MAJOR DEC(__ibmxl_version__) -# define COMPILER_VERSION_MINOR DEC(__ibmxl_release__) -# define COMPILER_VERSION_PATCH DEC(__ibmxl_modification__) -# define COMPILER_VERSION_TWEAK DEC(__ibmxl_ptf_fix_level__) - - -#elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ >= 800 -# define COMPILER_ID "XL" - /* __IBMCPP__ = VRP */ -# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100) -# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10) -# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10) - -#elif defined(__IBMCPP__) && !defined(__COMPILER_VER__) && __IBMCPP__ < 800 -# define COMPILER_ID "VisualAge" - /* __IBMCPP__ = VRP */ -# define COMPILER_VERSION_MAJOR DEC(__IBMCPP__/100) -# define COMPILER_VERSION_MINOR DEC(__IBMCPP__/10 % 10) -# define COMPILER_VERSION_PATCH DEC(__IBMCPP__ % 10) - -#elif defined(__NVCOMPILER) -# define COMPILER_ID "NVHPC" -# define COMPILER_VERSION_MAJOR DEC(__NVCOMPILER_MAJOR__) -# define COMPILER_VERSION_MINOR DEC(__NVCOMPILER_MINOR__) -# if defined(__NVCOMPILER_PATCHLEVEL__) -# define COMPILER_VERSION_PATCH DEC(__NVCOMPILER_PATCHLEVEL__) -# endif - -#elif defined(__PGI) -# define COMPILER_ID "PGI" -# define COMPILER_VERSION_MAJOR DEC(__PGIC__) -# define COMPILER_VERSION_MINOR DEC(__PGIC_MINOR__) -# if defined(__PGIC_PATCHLEVEL__) -# define COMPILER_VERSION_PATCH DEC(__PGIC_PATCHLEVEL__) -# endif - -#elif defined(_CRAYC) -# define COMPILER_ID "Cray" -# define COMPILER_VERSION_MAJOR DEC(_RELEASE_MAJOR) -# define COMPILER_VERSION_MINOR DEC(_RELEASE_MINOR) - -#elif defined(__TI_COMPILER_VERSION__) -# define COMPILER_ID "TI" - /* __TI_COMPILER_VERSION__ = VVVRRRPPP */ -# define COMPILER_VERSION_MAJOR DEC(__TI_COMPILER_VERSION__/1000000) -# define COMPILER_VERSION_MINOR DEC(__TI_COMPILER_VERSION__/1000 % 1000) -# define COMPILER_VERSION_PATCH DEC(__TI_COMPILER_VERSION__ % 1000) - -#elif defined(__CLANG_FUJITSU) -# define COMPILER_ID "FujitsuClang" -# define COMPILER_VERSION_MAJOR DEC(__FCC_major__) -# define COMPILER_VERSION_MINOR DEC(__FCC_minor__) -# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__) -# define COMPILER_VERSION_INTERNAL_STR __clang_version__ - - -#elif defined(__FUJITSU) -# define COMPILER_ID "Fujitsu" -# if defined(__FCC_version__) -# define COMPILER_VERSION __FCC_version__ -# elif defined(__FCC_major__) -# define COMPILER_VERSION_MAJOR DEC(__FCC_major__) -# define COMPILER_VERSION_MINOR DEC(__FCC_minor__) -# define COMPILER_VERSION_PATCH DEC(__FCC_patchlevel__) -# endif -# if defined(__fcc_version) -# define COMPILER_VERSION_INTERNAL DEC(__fcc_version) -# elif defined(__FCC_VERSION) -# define COMPILER_VERSION_INTERNAL DEC(__FCC_VERSION) -# endif - - -#elif defined(__ghs__) -# define COMPILER_ID "GHS" -/* __GHS_VERSION_NUMBER = VVVVRP */ -# ifdef __GHS_VERSION_NUMBER -# define COMPILER_VERSION_MAJOR DEC(__GHS_VERSION_NUMBER / 100) -# define COMPILER_VERSION_MINOR DEC(__GHS_VERSION_NUMBER / 10 % 10) -# define COMPILER_VERSION_PATCH DEC(__GHS_VERSION_NUMBER % 10) -# endif - -#elif defined(__SCO_VERSION__) -# define COMPILER_ID "SCO" - -#elif defined(__ARMCC_VERSION) && !defined(__clang__) -# define COMPILER_ID "ARMCC" -#if __ARMCC_VERSION >= 1000000 - /* __ARMCC_VERSION = VRRPPPP */ - # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/1000000) - # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 100) - # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000) -#else - /* __ARMCC_VERSION = VRPPPP */ - # define COMPILER_VERSION_MAJOR DEC(__ARMCC_VERSION/100000) - # define COMPILER_VERSION_MINOR DEC(__ARMCC_VERSION/10000 % 10) - # define COMPILER_VERSION_PATCH DEC(__ARMCC_VERSION % 10000) -#endif - - -#elif defined(__clang__) && defined(__apple_build_version__) -# define COMPILER_ID "AppleClang" -# if defined(_MSC_VER) -# define SIMULATE_ID "MSVC" -# endif -# define COMPILER_VERSION_MAJOR DEC(__clang_major__) -# define COMPILER_VERSION_MINOR DEC(__clang_minor__) -# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__) -# if defined(_MSC_VER) - /* _MSC_VER = VVRR */ -# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) -# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) -# endif -# define COMPILER_VERSION_TWEAK DEC(__apple_build_version__) - -#elif defined(__clang__) && defined(__ARMCOMPILER_VERSION) -# define COMPILER_ID "ARMClang" - # define COMPILER_VERSION_MAJOR DEC(__ARMCOMPILER_VERSION/1000000) - # define COMPILER_VERSION_MINOR DEC(__ARMCOMPILER_VERSION/10000 % 100) - # define COMPILER_VERSION_PATCH DEC(__ARMCOMPILER_VERSION % 10000) -# define COMPILER_VERSION_INTERNAL DEC(__ARMCOMPILER_VERSION) - -#elif defined(__clang__) -# define COMPILER_ID "Clang" -# if defined(_MSC_VER) -# define SIMULATE_ID "MSVC" -# endif -# define COMPILER_VERSION_MAJOR DEC(__clang_major__) -# define COMPILER_VERSION_MINOR DEC(__clang_minor__) -# define COMPILER_VERSION_PATCH DEC(__clang_patchlevel__) -# if defined(_MSC_VER) - /* _MSC_VER = VVRR */ -# define SIMULATE_VERSION_MAJOR DEC(_MSC_VER / 100) -# define SIMULATE_VERSION_MINOR DEC(_MSC_VER % 100) -# endif - -#elif defined(__GNUC__) || defined(__GNUG__) -# define COMPILER_ID "GNU" -# if defined(__GNUC__) -# define COMPILER_VERSION_MAJOR DEC(__GNUC__) -# else -# define COMPILER_VERSION_MAJOR DEC(__GNUG__) -# endif -# if defined(__GNUC_MINOR__) -# define COMPILER_VERSION_MINOR DEC(__GNUC_MINOR__) -# endif -# if defined(__GNUC_PATCHLEVEL__) -# define COMPILER_VERSION_PATCH DEC(__GNUC_PATCHLEVEL__) -# endif - -#elif defined(_MSC_VER) -# define COMPILER_ID "MSVC" - /* _MSC_VER = VVRR */ -# define COMPILER_VERSION_MAJOR DEC(_MSC_VER / 100) -# define COMPILER_VERSION_MINOR DEC(_MSC_VER % 100) -# if defined(_MSC_FULL_VER) -# if _MSC_VER >= 1400 - /* _MSC_FULL_VER = VVRRPPPPP */ -# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 100000) -# else - /* _MSC_FULL_VER = VVRRPPPP */ -# define COMPILER_VERSION_PATCH DEC(_MSC_FULL_VER % 10000) -# endif -# endif -# if defined(_MSC_BUILD) -# define COMPILER_VERSION_TWEAK DEC(_MSC_BUILD) -# endif - -#elif defined(__VISUALDSPVERSION__) || defined(__ADSPBLACKFIN__) || defined(__ADSPTS__) || defined(__ADSP21000__) -# define COMPILER_ID "ADSP" -#if defined(__VISUALDSPVERSION__) - /* __VISUALDSPVERSION__ = 0xVVRRPP00 */ -# define COMPILER_VERSION_MAJOR HEX(__VISUALDSPVERSION__>>24) -# define COMPILER_VERSION_MINOR HEX(__VISUALDSPVERSION__>>16 & 0xFF) -# define COMPILER_VERSION_PATCH HEX(__VISUALDSPVERSION__>>8 & 0xFF) -#endif - -#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC) -# define COMPILER_ID "IAR" -# if defined(__VER__) && defined(__ICCARM__) -# define COMPILER_VERSION_MAJOR DEC((__VER__) / 1000000) -# define COMPILER_VERSION_MINOR DEC(((__VER__) / 1000) % 1000) -# define COMPILER_VERSION_PATCH DEC((__VER__) % 1000) -# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__) -# elif defined(__VER__) && (defined(__ICCAVR__) || defined(__ICCRX__) || defined(__ICCRH850__) || defined(__ICCRL78__) || defined(__ICC430__) || defined(__ICCRISCV__) || defined(__ICCV850__) || defined(__ICC8051__) || defined(__ICCSTM8__)) -# define COMPILER_VERSION_MAJOR DEC((__VER__) / 100) -# define COMPILER_VERSION_MINOR DEC((__VER__) - (((__VER__) / 100)*100)) -# define COMPILER_VERSION_PATCH DEC(__SUBVERSION__) -# define COMPILER_VERSION_INTERNAL DEC(__IAR_SYSTEMS_ICC__) -# endif - - -/* These compilers are either not known or too old to define an - identification macro. Try to identify the platform and guess that - it is the native compiler. */ -#elif defined(__hpux) || defined(__hpua) -# define COMPILER_ID "HP" - -#else /* unknown compiler */ -# define COMPILER_ID "" -#endif - -/* Construct the string literal in pieces to prevent the source from - getting matched. Store it in a pointer rather than an array - because some compilers will just produce instructions to fill the - array rather than assigning a pointer to a static array. */ -char const* info_compiler = "INFO" ":" "compiler[" COMPILER_ID "]"; -#ifdef SIMULATE_ID -char const* info_simulate = "INFO" ":" "simulate[" SIMULATE_ID "]"; -#endif - -#ifdef __QNXNTO__ -char const* qnxnto = "INFO" ":" "qnxnto[]"; -#endif - -#if defined(__CRAYXT_COMPUTE_LINUX_TARGET) -char const *info_cray = "INFO" ":" "compiler_wrapper[CrayPrgEnv]"; -#endif - -#define STRINGIFY_HELPER(X) #X -#define STRINGIFY(X) STRINGIFY_HELPER(X) - -/* Identify known platforms by name. */ -#if defined(__linux) || defined(__linux__) || defined(linux) -# define PLATFORM_ID "Linux" - -#elif defined(__MSYS__) -# define PLATFORM_ID "MSYS" - -#elif defined(__CYGWIN__) -# define PLATFORM_ID "Cygwin" - -#elif defined(__MINGW32__) -# define PLATFORM_ID "MinGW" - -#elif defined(__APPLE__) -# define PLATFORM_ID "Darwin" - -#elif defined(_WIN32) || defined(__WIN32__) || defined(WIN32) -# define PLATFORM_ID "Windows" - -#elif defined(__FreeBSD__) || defined(__FreeBSD) -# define PLATFORM_ID "FreeBSD" - -#elif defined(__NetBSD__) || defined(__NetBSD) -# define PLATFORM_ID "NetBSD" - -#elif defined(__OpenBSD__) || defined(__OPENBSD) -# define PLATFORM_ID "OpenBSD" - -#elif defined(__sun) || defined(sun) -# define PLATFORM_ID "SunOS" - -#elif defined(_AIX) || defined(__AIX) || defined(__AIX__) || defined(__aix) || defined(__aix__) -# define PLATFORM_ID "AIX" - -#elif defined(__hpux) || defined(__hpux__) -# define PLATFORM_ID "HP-UX" - -#elif defined(__HAIKU__) -# define PLATFORM_ID "Haiku" - -#elif defined(__BeOS) || defined(__BEOS__) || defined(_BEOS) -# define PLATFORM_ID "BeOS" - -#elif defined(__QNX__) || defined(__QNXNTO__) -# define PLATFORM_ID "QNX" - -#elif defined(__tru64) || defined(_tru64) || defined(__TRU64__) -# define PLATFORM_ID "Tru64" - -#elif defined(__riscos) || defined(__riscos__) -# define PLATFORM_ID "RISCos" - -#elif defined(__sinix) || defined(__sinix__) || defined(__SINIX__) -# define PLATFORM_ID "SINIX" - -#elif defined(__UNIX_SV__) -# define PLATFORM_ID "UNIX_SV" - -#elif defined(__bsdos__) -# define PLATFORM_ID "BSDOS" - -#elif defined(_MPRAS) || defined(MPRAS) -# define PLATFORM_ID "MP-RAS" - -#elif defined(__osf) || defined(__osf__) -# define PLATFORM_ID "OSF1" - -#elif defined(_SCO_SV) || defined(SCO_SV) || defined(sco_sv) -# define PLATFORM_ID "SCO_SV" - -#elif defined(__ultrix) || defined(__ultrix__) || defined(_ULTRIX) -# define PLATFORM_ID "ULTRIX" - -#elif defined(__XENIX__) || defined(_XENIX) || defined(XENIX) -# define PLATFORM_ID "Xenix" - -#elif defined(__WATCOMC__) -# if defined(__LINUX__) -# define PLATFORM_ID "Linux" - -# elif defined(__DOS__) -# define PLATFORM_ID "DOS" - -# elif defined(__OS2__) -# define PLATFORM_ID "OS2" - -# elif defined(__WINDOWS__) -# define PLATFORM_ID "Windows3x" - -# elif defined(__VXWORKS__) -# define PLATFORM_ID "VxWorks" - -# else /* unknown platform */ -# define PLATFORM_ID -# endif - -#elif defined(__INTEGRITY) -# if defined(INT_178B) -# define PLATFORM_ID "Integrity178" - -# else /* regular Integrity */ -# define PLATFORM_ID "Integrity" -# endif - -#else /* unknown platform */ -# define PLATFORM_ID - -#endif - -/* For windows compilers MSVC and Intel we can determine - the architecture of the compiler being used. This is because - the compilers do not have flags that can change the architecture, - but rather depend on which compiler is being used -*/ -#if defined(_WIN32) && defined(_MSC_VER) -# if defined(_M_IA64) -# define ARCHITECTURE_ID "IA64" - -# elif defined(_M_ARM64EC) -# define ARCHITECTURE_ID "ARM64EC" - -# elif defined(_M_X64) || defined(_M_AMD64) -# define ARCHITECTURE_ID "x64" - -# elif defined(_M_IX86) -# define ARCHITECTURE_ID "X86" - -# elif defined(_M_ARM64) -# define ARCHITECTURE_ID "ARM64" - -# elif defined(_M_ARM) -# if _M_ARM == 4 -# define ARCHITECTURE_ID "ARMV4I" -# elif _M_ARM == 5 -# define ARCHITECTURE_ID "ARMV5I" -# else -# define ARCHITECTURE_ID "ARMV" STRINGIFY(_M_ARM) -# endif - -# elif defined(_M_MIPS) -# define ARCHITECTURE_ID "MIPS" - -# elif defined(_M_SH) -# define ARCHITECTURE_ID "SHx" - -# else /* unknown architecture */ -# define ARCHITECTURE_ID "" -# endif - -#elif defined(__WATCOMC__) -# if defined(_M_I86) -# define ARCHITECTURE_ID "I86" - -# elif defined(_M_IX86) -# define ARCHITECTURE_ID "X86" - -# else /* unknown architecture */ -# define ARCHITECTURE_ID "" -# endif - -#elif defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC) -# if defined(__ICCARM__) -# define ARCHITECTURE_ID "ARM" - -# elif defined(__ICCRX__) -# define ARCHITECTURE_ID "RX" - -# elif defined(__ICCRH850__) -# define ARCHITECTURE_ID "RH850" - -# elif defined(__ICCRL78__) -# define ARCHITECTURE_ID "RL78" - -# elif defined(__ICCRISCV__) -# define ARCHITECTURE_ID "RISCV" - -# elif defined(__ICCAVR__) -# define ARCHITECTURE_ID "AVR" - -# elif defined(__ICC430__) -# define ARCHITECTURE_ID "MSP430" - -# elif defined(__ICCV850__) -# define ARCHITECTURE_ID "V850" - -# elif defined(__ICC8051__) -# define ARCHITECTURE_ID "8051" - -# elif defined(__ICCSTM8__) -# define ARCHITECTURE_ID "STM8" - -# else /* unknown architecture */ -# define ARCHITECTURE_ID "" -# endif - -#elif defined(__ghs__) -# if defined(__PPC64__) -# define ARCHITECTURE_ID "PPC64" - -# elif defined(__ppc__) -# define ARCHITECTURE_ID "PPC" - -# elif defined(__ARM__) -# define ARCHITECTURE_ID "ARM" - -# elif defined(__x86_64__) -# define ARCHITECTURE_ID "x64" - -# elif defined(__i386__) -# define ARCHITECTURE_ID "X86" - -# else /* unknown architecture */ -# define ARCHITECTURE_ID "" -# endif - -#elif defined(__TI_COMPILER_VERSION__) -# if defined(__TI_ARM__) -# define ARCHITECTURE_ID "ARM" - -# elif defined(__MSP430__) -# define ARCHITECTURE_ID "MSP430" - -# elif defined(__TMS320C28XX__) -# define ARCHITECTURE_ID "TMS320C28x" - -# elif defined(__TMS320C6X__) || defined(_TMS320C6X) -# define ARCHITECTURE_ID "TMS320C6x" - -# else /* unknown architecture */ -# define ARCHITECTURE_ID "" -# endif - -#else -# define ARCHITECTURE_ID -#endif - -/* Convert integer to decimal digit literals. */ -#define DEC(n) \ - ('0' + (((n) / 10000000)%10)), \ - ('0' + (((n) / 1000000)%10)), \ - ('0' + (((n) / 100000)%10)), \ - ('0' + (((n) / 10000)%10)), \ - ('0' + (((n) / 1000)%10)), \ - ('0' + (((n) / 100)%10)), \ - ('0' + (((n) / 10)%10)), \ - ('0' + ((n) % 10)) - -/* Convert integer to hex digit literals. */ -#define HEX(n) \ - ('0' + ((n)>>28 & 0xF)), \ - ('0' + ((n)>>24 & 0xF)), \ - ('0' + ((n)>>20 & 0xF)), \ - ('0' + ((n)>>16 & 0xF)), \ - ('0' + ((n)>>12 & 0xF)), \ - ('0' + ((n)>>8 & 0xF)), \ - ('0' + ((n)>>4 & 0xF)), \ - ('0' + ((n) & 0xF)) - -/* Construct a string literal encoding the version number. */ -#ifdef COMPILER_VERSION -char const* info_version = "INFO" ":" "compiler_version[" COMPILER_VERSION "]"; - -/* Construct a string literal encoding the version number components. */ -#elif defined(COMPILER_VERSION_MAJOR) -char const info_version[] = { - 'I', 'N', 'F', 'O', ':', - 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','[', - COMPILER_VERSION_MAJOR, -# ifdef COMPILER_VERSION_MINOR - '.', COMPILER_VERSION_MINOR, -# ifdef COMPILER_VERSION_PATCH - '.', COMPILER_VERSION_PATCH, -# ifdef COMPILER_VERSION_TWEAK - '.', COMPILER_VERSION_TWEAK, -# endif -# endif -# endif - ']','\0'}; -#endif - -/* Construct a string literal encoding the internal version number. */ -#ifdef COMPILER_VERSION_INTERNAL -char const info_version_internal[] = { - 'I', 'N', 'F', 'O', ':', - 'c','o','m','p','i','l','e','r','_','v','e','r','s','i','o','n','_', - 'i','n','t','e','r','n','a','l','[', - COMPILER_VERSION_INTERNAL,']','\0'}; -#elif defined(COMPILER_VERSION_INTERNAL_STR) -char const* info_version_internal = "INFO" ":" "compiler_version_internal[" COMPILER_VERSION_INTERNAL_STR "]"; -#endif - -/* Construct a string literal encoding the version number components. */ -#ifdef SIMULATE_VERSION_MAJOR -char const info_simulate_version[] = { - 'I', 'N', 'F', 'O', ':', - 's','i','m','u','l','a','t','e','_','v','e','r','s','i','o','n','[', - SIMULATE_VERSION_MAJOR, -# ifdef SIMULATE_VERSION_MINOR - '.', SIMULATE_VERSION_MINOR, -# ifdef SIMULATE_VERSION_PATCH - '.', SIMULATE_VERSION_PATCH, -# ifdef SIMULATE_VERSION_TWEAK - '.', SIMULATE_VERSION_TWEAK, -# endif -# endif -# endif - ']','\0'}; -#endif - -/* Construct the string literal in pieces to prevent the source from - getting matched. Store it in a pointer rather than an array - because some compilers will just produce instructions to fill the - array rather than assigning a pointer to a static array. */ -char const* info_platform = "INFO" ":" "platform[" PLATFORM_ID "]"; -char const* info_arch = "INFO" ":" "arch[" ARCHITECTURE_ID "]"; - - - -#if defined(__INTEL_COMPILER) && defined(_MSVC_LANG) && _MSVC_LANG < 201403L -# if defined(__INTEL_CXX11_MODE__) -# if defined(__cpp_aggregate_nsdmi) -# define CXX_STD 201402L -# else -# define CXX_STD 201103L -# endif -# else -# define CXX_STD 199711L -# endif -#elif defined(_MSC_VER) && defined(_MSVC_LANG) -# define CXX_STD _MSVC_LANG -#else -# define CXX_STD __cplusplus -#endif - -const char* info_language_standard_default = "INFO" ":" "standard_default[" -#if CXX_STD > 202002L - "23" -#elif CXX_STD > 201703L - "20" -#elif CXX_STD >= 201703L - "17" -#elif CXX_STD >= 201402L - "14" -#elif CXX_STD >= 201103L - "11" -#else - "98" -#endif -"]"; - -const char* info_language_extensions_default = "INFO" ":" "extensions_default[" -/* !defined(_MSC_VER) to exclude Clang's MSVC compatibility mode. */ -#if (defined(__clang__) || defined(__GNUC__) || \ - defined(__TI_COMPILER_VERSION__)) && \ - !defined(__STRICT_ANSI__) && !defined(_MSC_VER) - "ON" -#else - "OFF" -#endif -"]"; - -/*--------------------------------------------------------------------------*/ - -int main(int argc, char* argv[]) -{ - int require = 0; - require += info_compiler[argc]; - require += info_platform[argc]; -#ifdef COMPILER_VERSION_MAJOR - require += info_version[argc]; -#endif -#ifdef COMPILER_VERSION_INTERNAL - require += info_version_internal[argc]; -#endif -#ifdef SIMULATE_ID - require += info_simulate[argc]; -#endif -#ifdef SIMULATE_VERSION_MAJOR - require += info_simulate_version[argc]; -#endif -#if defined(__CRAYXT_COMPUTE_LINUX_TARGET) - require += info_cray[argc]; -#endif - require += info_language_standard_default[argc]; - require += info_language_extensions_default[argc]; - (void)argv; - return require; -} diff --git a/src/main/cpp/jni/build/CMakeFiles/3.22.1/CompilerIdCXX/a.out b/src/main/cpp/jni/build/CMakeFiles/3.22.1/CompilerIdCXX/a.out deleted file mode 100755 index 9fe81eee4abb75ec64309c98d682c547d65f12bc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 16096 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 diff --git a/src/main/cpp/jni/build/CMakeFiles/CMakeDirectoryInformation.cmake b/src/main/cpp/jni/build/CMakeFiles/CMakeDirectoryInformation.cmake deleted file mode 100644 index b9b869f5a2e..00000000000 --- a/src/main/cpp/jni/build/CMakeFiles/CMakeDirectoryInformation.cmake +++ /dev/null @@ -1,16 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 3.22 - -# Relative path conversion top directories. -set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/home/rene/projects/systemds/src/main/cpp/jni") -set(CMAKE_RELATIVE_PATH_TOP_BINARY "/home/rene/projects/systemds/src/main/cpp/jni/build") - -# Force unix paths in dependencies. -set(CMAKE_FORCE_UNIX_PATHS 1) - - -# The C and CXX include file regular expressions for this directory. -set(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$") -set(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$") -set(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN}) -set(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN}) diff --git a/src/main/cpp/jni/build/CMakeFiles/CMakeOutput.log b/src/main/cpp/jni/build/CMakeFiles/CMakeOutput.log deleted file mode 100644 index 1d93f613588..00000000000 --- a/src/main/cpp/jni/build/CMakeFiles/CMakeOutput.log +++ /dev/null @@ -1,278 +0,0 @@ -The system is: Linux - 6.8.0-65-generic - x86_64 -Compiling the CXX compiler identification source file "CMakeCXXCompilerId.cpp" succeeded. -Compiler: /usr/bin/c++ -Build flags: -Id flags: - -The output was: -0 - - -Compilation of the CXX compiler identification source "CMakeCXXCompilerId.cpp" produced "a.out" - -The CXX compiler identification is GNU, found in "/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/3.22.1/CompilerIdCXX/a.out" - -Detecting CXX compiler ABI info compiled with the following output: -Change Dir: /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/CMakeTmp - -Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_084f2/fast && /usr/bin/gmake -f CMakeFiles/cmTC_084f2.dir/build.make CMakeFiles/cmTC_084f2.dir/build -gmake[1]: Entering directory '/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/CMakeTmp' -Building CXX object CMakeFiles/cmTC_084f2.dir/CMakeCXXCompilerABI.cpp.o -/usr/bin/c++ -v -o CMakeFiles/cmTC_084f2.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake-3.22/Modules/CMakeCXXCompilerABI.cpp -Using built-in specs. -COLLECT_GCC=/usr/bin/c++ -OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa -OFFLOAD_TARGET_DEFAULT=1 -Target: x86_64-linux-gnu -Configured with: ../src/configure -v --with-pkgversion='Ubuntu 12.3.0-1ubuntu1~22.04.2' --with-bugurl=file:///usr/share/doc/gcc-12/README.Bugs --enable-languages=c,ada,c++,go,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-12 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-12-dNWB6h/gcc-12-12.3.0/debian/tmp-nvptx/usr,amdgcn-amdhsa=/build/gcc-12-dNWB6h/gcc-12-12.3.0/debian/tmp-gcn/usr --enable-offload-defaulted --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu -Thread model: posix -Supported LTO compression algorithms: zlib zstd -gcc version 12.3.0 (Ubuntu 12.3.0-1ubuntu1~22.04.2) -COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_084f2.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_084f2.dir/' - /usr/lib/gcc/x86_64-linux-gnu/12/cc1plus -quiet -v -imultiarch x86_64-linux-gnu -D_GNU_SOURCE /usr/share/cmake-3.22/Modules/CMakeCXXCompilerABI.cpp -quiet -dumpdir CMakeFiles/cmTC_084f2.dir/ -dumpbase CMakeCXXCompilerABI.cpp.cpp -dumpbase-ext .cpp -mtune=generic -march=x86-64 -version -fasynchronous-unwind-tables -fstack-protector-strong -Wformat -Wformat-security -fstack-clash-protection -fcf-protection -o /tmp/cchztBoE.s -GNU C++17 (Ubuntu 12.3.0-1ubuntu1~22.04.2) version 12.3.0 (x86_64-linux-gnu) - compiled by GNU C version 12.3.0, GMP version 6.2.1, MPFR version 4.1.0, MPC version 1.2.1, isl version isl-0.24-GMP - -GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 -ignoring duplicate directory "/usr/include/x86_64-linux-gnu/c++/12" -ignoring nonexistent directory "/usr/local/include/x86_64-linux-gnu" -ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/12/include-fixed" -ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/12/../../../../x86_64-linux-gnu/include" -#include "..." search starts here: -#include <...> search starts here: - /usr/include/c++/12 - /usr/include/x86_64-linux-gnu/c++/12 - /usr/include/c++/12/backward - /usr/lib/gcc/x86_64-linux-gnu/12/include - /usr/local/include - /usr/include/x86_64-linux-gnu - /usr/include -End of search list. -GNU C++17 (Ubuntu 12.3.0-1ubuntu1~22.04.2) version 12.3.0 (x86_64-linux-gnu) - compiled by GNU C version 12.3.0, GMP version 6.2.1, MPFR version 4.1.0, MPC version 1.2.1, isl version isl-0.24-GMP - -GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 -Compiler executable checksum: 0d370165627a7e26039599c56dc32a7a -COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_084f2.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_084f2.dir/' - as -v --64 -o CMakeFiles/cmTC_084f2.dir/CMakeCXXCompilerABI.cpp.o /tmp/cchztBoE.s -GNU assembler version 2.38 (x86_64-linux-gnu) using BFD version (GNU Binutils for Ubuntu) 2.38 -COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/ -LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../:/lib/:/usr/lib/ -COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_084f2.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_084f2.dir/CMakeCXXCompilerABI.cpp.' -Linking CXX executable cmTC_084f2 -/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_084f2.dir/link.txt --verbose=1 -/usr/bin/c++ -v CMakeFiles/cmTC_084f2.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_084f2 -Using built-in specs. -COLLECT_GCC=/usr/bin/c++ -COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/12/lto-wrapper -OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa -OFFLOAD_TARGET_DEFAULT=1 -Target: x86_64-linux-gnu -Configured with: ../src/configure -v --with-pkgversion='Ubuntu 12.3.0-1ubuntu1~22.04.2' --with-bugurl=file:///usr/share/doc/gcc-12/README.Bugs --enable-languages=c,ada,c++,go,d,fortran,objc,obj-c++,m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-12 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32,m64,mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-12-dNWB6h/gcc-12-12.3.0/debian/tmp-nvptx/usr,amdgcn-amdhsa=/build/gcc-12-dNWB6h/gcc-12-12.3.0/debian/tmp-gcn/usr --enable-offload-defaulted --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu -Thread model: posix -Supported LTO compression algorithms: zlib zstd -gcc version 12.3.0 (Ubuntu 12.3.0-1ubuntu1~22.04.2) -COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/ -LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../:/lib/:/usr/lib/ -COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_084f2' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_084f2.' - /usr/lib/gcc/x86_64-linux-gnu/12/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/12/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/12/lto-wrapper -plugin-opt=-fresolution=/tmp/ccJdiepA.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -z now -z relro -o cmTC_084f2 /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/12/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/12 -L/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/12/../../.. CMakeFiles/cmTC_084f2.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-linux-gnu/12/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crtn.o -COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_084f2' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_084f2.' -gmake[1]: Leaving directory '/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/CMakeTmp' - - - -Parsed CXX implicit include dir info from above output: rv=done - found start of include info - found start of implicit include info - add: [/usr/include/c++/12] - add: [/usr/include/x86_64-linux-gnu/c++/12] - add: [/usr/include/c++/12/backward] - add: [/usr/lib/gcc/x86_64-linux-gnu/12/include] - add: [/usr/local/include] - add: [/usr/include/x86_64-linux-gnu] - add: [/usr/include] - end of search list found - collapse include dir [/usr/include/c++/12] ==> [/usr/include/c++/12] - collapse include dir [/usr/include/x86_64-linux-gnu/c++/12] ==> [/usr/include/x86_64-linux-gnu/c++/12] - collapse include dir [/usr/include/c++/12/backward] ==> [/usr/include/c++/12/backward] - collapse include dir [/usr/lib/gcc/x86_64-linux-gnu/12/include] ==> [/usr/lib/gcc/x86_64-linux-gnu/12/include] - collapse include dir [/usr/local/include] ==> [/usr/local/include] - collapse include dir [/usr/include/x86_64-linux-gnu] ==> [/usr/include/x86_64-linux-gnu] - collapse include dir [/usr/include] ==> [/usr/include] - implicit include dirs: [/usr/include/c++/12;/usr/include/x86_64-linux-gnu/c++/12;/usr/include/c++/12/backward;/usr/lib/gcc/x86_64-linux-gnu/12/include;/usr/local/include;/usr/include/x86_64-linux-gnu;/usr/include] - - -Parsed CXX implicit link information from above output: - link line regex: [^( *|.*[/\])(ld|CMAKE_LINK_STARTFILE-NOTFOUND|([^/\]+-)?ld|collect2)[^/\]*( |$)] - ignore line: [Change Dir: /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/CMakeTmp] - ignore line: [] - ignore line: [Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_084f2/fast && /usr/bin/gmake -f CMakeFiles/cmTC_084f2.dir/build.make CMakeFiles/cmTC_084f2.dir/build] - ignore line: [gmake[1]: Entering directory '/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/CMakeTmp'] - ignore line: [Building CXX object CMakeFiles/cmTC_084f2.dir/CMakeCXXCompilerABI.cpp.o] - ignore line: [/usr/bin/c++ -v -o CMakeFiles/cmTC_084f2.dir/CMakeCXXCompilerABI.cpp.o -c /usr/share/cmake-3.22/Modules/CMakeCXXCompilerABI.cpp] - ignore line: [Using built-in specs.] - ignore line: [COLLECT_GCC=/usr/bin/c++] - ignore line: [OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa] - ignore line: [OFFLOAD_TARGET_DEFAULT=1] - ignore line: [Target: x86_64-linux-gnu] - ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 12.3.0-1ubuntu1~22.04.2' --with-bugurl=file:///usr/share/doc/gcc-12/README.Bugs --enable-languages=c ada c++ go d fortran objc obj-c++ m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-12 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32 m64 mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-12-dNWB6h/gcc-12-12.3.0/debian/tmp-nvptx/usr amdgcn-amdhsa=/build/gcc-12-dNWB6h/gcc-12-12.3.0/debian/tmp-gcn/usr --enable-offload-defaulted --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu] - ignore line: [Thread model: posix] - ignore line: [Supported LTO compression algorithms: zlib zstd] - ignore line: [gcc version 12.3.0 (Ubuntu 12.3.0-1ubuntu1~22.04.2) ] - ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_084f2.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_084f2.dir/'] - ignore line: [ /usr/lib/gcc/x86_64-linux-gnu/12/cc1plus -quiet -v -imultiarch x86_64-linux-gnu -D_GNU_SOURCE /usr/share/cmake-3.22/Modules/CMakeCXXCompilerABI.cpp -quiet -dumpdir CMakeFiles/cmTC_084f2.dir/ -dumpbase CMakeCXXCompilerABI.cpp.cpp -dumpbase-ext .cpp -mtune=generic -march=x86-64 -version -fasynchronous-unwind-tables -fstack-protector-strong -Wformat -Wformat-security -fstack-clash-protection -fcf-protection -o /tmp/cchztBoE.s] - ignore line: [GNU C++17 (Ubuntu 12.3.0-1ubuntu1~22.04.2) version 12.3.0 (x86_64-linux-gnu)] - ignore line: [ compiled by GNU C version 12.3.0 GMP version 6.2.1 MPFR version 4.1.0 MPC version 1.2.1 isl version isl-0.24-GMP] - ignore line: [] - ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072] - ignore line: [ignoring duplicate directory "/usr/include/x86_64-linux-gnu/c++/12"] - ignore line: [ignoring nonexistent directory "/usr/local/include/x86_64-linux-gnu"] - ignore line: [ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/12/include-fixed"] - ignore line: [ignoring nonexistent directory "/usr/lib/gcc/x86_64-linux-gnu/12/../../../../x86_64-linux-gnu/include"] - ignore line: [#include "..." search starts here:] - ignore line: [#include <...> search starts here:] - ignore line: [ /usr/include/c++/12] - ignore line: [ /usr/include/x86_64-linux-gnu/c++/12] - ignore line: [ /usr/include/c++/12/backward] - ignore line: [ /usr/lib/gcc/x86_64-linux-gnu/12/include] - ignore line: [ /usr/local/include] - ignore line: [ /usr/include/x86_64-linux-gnu] - ignore line: [ /usr/include] - ignore line: [End of search list.] - ignore line: [GNU C++17 (Ubuntu 12.3.0-1ubuntu1~22.04.2) version 12.3.0 (x86_64-linux-gnu)] - ignore line: [ compiled by GNU C version 12.3.0 GMP version 6.2.1 MPFR version 4.1.0 MPC version 1.2.1 isl version isl-0.24-GMP] - ignore line: [] - ignore line: [GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072] - ignore line: [Compiler executable checksum: 0d370165627a7e26039599c56dc32a7a] - ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_084f2.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_084f2.dir/'] - ignore line: [ as -v --64 -o CMakeFiles/cmTC_084f2.dir/CMakeCXXCompilerABI.cpp.o /tmp/cchztBoE.s] - ignore line: [GNU assembler version 2.38 (x86_64-linux-gnu) using BFD version (GNU Binutils for Ubuntu) 2.38] - ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/] - ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../:/lib/:/usr/lib/] - ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'CMakeFiles/cmTC_084f2.dir/CMakeCXXCompilerABI.cpp.o' '-c' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'CMakeFiles/cmTC_084f2.dir/CMakeCXXCompilerABI.cpp.'] - ignore line: [Linking CXX executable cmTC_084f2] - ignore line: [/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_084f2.dir/link.txt --verbose=1] - ignore line: [/usr/bin/c++ -v CMakeFiles/cmTC_084f2.dir/CMakeCXXCompilerABI.cpp.o -o cmTC_084f2 ] - ignore line: [Using built-in specs.] - ignore line: [COLLECT_GCC=/usr/bin/c++] - ignore line: [COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/12/lto-wrapper] - ignore line: [OFFLOAD_TARGET_NAMES=nvptx-none:amdgcn-amdhsa] - ignore line: [OFFLOAD_TARGET_DEFAULT=1] - ignore line: [Target: x86_64-linux-gnu] - ignore line: [Configured with: ../src/configure -v --with-pkgversion='Ubuntu 12.3.0-1ubuntu1~22.04.2' --with-bugurl=file:///usr/share/doc/gcc-12/README.Bugs --enable-languages=c ada c++ go d fortran objc obj-c++ m2 --prefix=/usr --with-gcc-major-version-only --program-suffix=-12 --program-prefix=x86_64-linux-gnu- --enable-shared --enable-linker-build-id --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --libdir=/usr/lib --enable-nls --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --with-default-libstdcxx-abi=new --enable-gnu-unique-object --disable-vtable-verify --enable-plugin --enable-default-pie --with-system-zlib --enable-libphobos-checking=release --with-target-system-zlib=auto --enable-objc-gc=auto --enable-multiarch --disable-werror --enable-cet --with-arch-32=i686 --with-abi=m64 --with-multilib-list=m32 m64 mx32 --enable-multilib --with-tune=generic --enable-offload-targets=nvptx-none=/build/gcc-12-dNWB6h/gcc-12-12.3.0/debian/tmp-nvptx/usr amdgcn-amdhsa=/build/gcc-12-dNWB6h/gcc-12-12.3.0/debian/tmp-gcn/usr --enable-offload-defaulted --without-cuda-driver --enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu --target=x86_64-linux-gnu] - ignore line: [Thread model: posix] - ignore line: [Supported LTO compression algorithms: zlib zstd] - ignore line: [gcc version 12.3.0 (Ubuntu 12.3.0-1ubuntu1~22.04.2) ] - ignore line: [COMPILER_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/] - ignore line: [LIBRARY_PATH=/usr/lib/gcc/x86_64-linux-gnu/12/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib/:/lib/x86_64-linux-gnu/:/lib/../lib/:/usr/lib/x86_64-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/x86_64-linux-gnu/12/../../../:/lib/:/usr/lib/] - ignore line: [COLLECT_GCC_OPTIONS='-v' '-o' 'cmTC_084f2' '-shared-libgcc' '-mtune=generic' '-march=x86-64' '-dumpdir' 'cmTC_084f2.'] - link line: [ /usr/lib/gcc/x86_64-linux-gnu/12/collect2 -plugin /usr/lib/gcc/x86_64-linux-gnu/12/liblto_plugin.so -plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/12/lto-wrapper -plugin-opt=-fresolution=/tmp/ccJdiepA.res -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc -plugin-opt=-pass-through=-lc -plugin-opt=-pass-through=-lgcc_s -plugin-opt=-pass-through=-lgcc --build-id --eh-frame-hdr -m elf_x86_64 --hash-style=gnu --as-needed -dynamic-linker /lib64/ld-linux-x86-64.so.2 -pie -z now -z relro -o cmTC_084f2 /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/Scrt1.o /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/12/crtbeginS.o -L/usr/lib/gcc/x86_64-linux-gnu/12 -L/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/12/../../.. CMakeFiles/cmTC_084f2.dir/CMakeCXXCompilerABI.cpp.o -lstdc++ -lm -lgcc_s -lgcc -lc -lgcc_s -lgcc /usr/lib/gcc/x86_64-linux-gnu/12/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crtn.o] - arg [/usr/lib/gcc/x86_64-linux-gnu/12/collect2] ==> ignore - arg [-plugin] ==> ignore - arg [/usr/lib/gcc/x86_64-linux-gnu/12/liblto_plugin.so] ==> ignore - arg [-plugin-opt=/usr/lib/gcc/x86_64-linux-gnu/12/lto-wrapper] ==> ignore - arg [-plugin-opt=-fresolution=/tmp/ccJdiepA.res] ==> ignore - arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore - arg [-plugin-opt=-pass-through=-lgcc] ==> ignore - arg [-plugin-opt=-pass-through=-lc] ==> ignore - arg [-plugin-opt=-pass-through=-lgcc_s] ==> ignore - arg [-plugin-opt=-pass-through=-lgcc] ==> ignore - arg [--build-id] ==> ignore - arg [--eh-frame-hdr] ==> ignore - arg [-m] ==> ignore - arg [elf_x86_64] ==> ignore - arg [--hash-style=gnu] ==> ignore - arg [--as-needed] ==> ignore - arg [-dynamic-linker] ==> ignore - arg [/lib64/ld-linux-x86-64.so.2] ==> ignore - arg [-pie] ==> ignore - arg [-znow] ==> ignore - arg [-zrelro] ==> ignore - arg [-o] ==> ignore - arg [cmTC_084f2] ==> ignore - arg [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/Scrt1.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/Scrt1.o] - arg [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crti.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crti.o] - arg [/usr/lib/gcc/x86_64-linux-gnu/12/crtbeginS.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/12/crtbeginS.o] - arg [-L/usr/lib/gcc/x86_64-linux-gnu/12] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/12] - arg [-L/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu] - arg [-L/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib] - arg [-L/lib/x86_64-linux-gnu] ==> dir [/lib/x86_64-linux-gnu] - arg [-L/lib/../lib] ==> dir [/lib/../lib] - arg [-L/usr/lib/x86_64-linux-gnu] ==> dir [/usr/lib/x86_64-linux-gnu] - arg [-L/usr/lib/../lib] ==> dir [/usr/lib/../lib] - arg [-L/usr/lib/gcc/x86_64-linux-gnu/12/../../..] ==> dir [/usr/lib/gcc/x86_64-linux-gnu/12/../../..] - arg [CMakeFiles/cmTC_084f2.dir/CMakeCXXCompilerABI.cpp.o] ==> ignore - arg [-lstdc++] ==> lib [stdc++] - arg [-lm] ==> lib [m] - arg [-lgcc_s] ==> lib [gcc_s] - arg [-lgcc] ==> lib [gcc] - arg [-lc] ==> lib [c] - arg [-lgcc_s] ==> lib [gcc_s] - arg [-lgcc] ==> lib [gcc] - arg [/usr/lib/gcc/x86_64-linux-gnu/12/crtendS.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/12/crtendS.o] - arg [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crtn.o] ==> obj [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crtn.o] - collapse obj [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/Scrt1.o] ==> [/usr/lib/x86_64-linux-gnu/Scrt1.o] - collapse obj [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crti.o] ==> [/usr/lib/x86_64-linux-gnu/crti.o] - collapse obj [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu/crtn.o] ==> [/usr/lib/x86_64-linux-gnu/crtn.o] - collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/12] ==> [/usr/lib/gcc/x86_64-linux-gnu/12] - collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/12/../../../x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu] - collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/12/../../../../lib] ==> [/usr/lib] - collapse library dir [/lib/x86_64-linux-gnu] ==> [/lib/x86_64-linux-gnu] - collapse library dir [/lib/../lib] ==> [/lib] - collapse library dir [/usr/lib/x86_64-linux-gnu] ==> [/usr/lib/x86_64-linux-gnu] - collapse library dir [/usr/lib/../lib] ==> [/usr/lib] - collapse library dir [/usr/lib/gcc/x86_64-linux-gnu/12/../../..] ==> [/usr/lib] - implicit libs: [stdc++;m;gcc_s;gcc;c;gcc_s;gcc] - implicit objs: [/usr/lib/x86_64-linux-gnu/Scrt1.o;/usr/lib/x86_64-linux-gnu/crti.o;/usr/lib/gcc/x86_64-linux-gnu/12/crtbeginS.o;/usr/lib/gcc/x86_64-linux-gnu/12/crtendS.o;/usr/lib/x86_64-linux-gnu/crtn.o] - implicit dirs: [/usr/lib/gcc/x86_64-linux-gnu/12;/usr/lib/x86_64-linux-gnu;/usr/lib;/lib/x86_64-linux-gnu;/lib] - implicit fwks: [] - - -Determining if the include file pthread.h exists passed with the following output: -Change Dir: /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/CMakeTmp - -Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_babb6/fast && /usr/bin/gmake -f CMakeFiles/cmTC_babb6.dir/build.make CMakeFiles/cmTC_babb6.dir/build -gmake[1]: Entering directory '/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/CMakeTmp' -Building CXX object CMakeFiles/cmTC_babb6.dir/CheckIncludeFile.cxx.o -/usr/bin/c++ -o CMakeFiles/cmTC_babb6.dir/CheckIncludeFile.cxx.o -c /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/CMakeTmp/CheckIncludeFile.cxx -Linking CXX executable cmTC_babb6 -/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_babb6.dir/link.txt --verbose=1 -/usr/bin/c++ CMakeFiles/cmTC_babb6.dir/CheckIncludeFile.cxx.o -o cmTC_babb6 -gmake[1]: Leaving directory '/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/CMakeTmp' - - - -Performing C++ SOURCE FILE Test CMAKE_HAVE_LIBC_PTHREAD succeeded with the following output: -Change Dir: /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/CMakeTmp - -Run Build Command(s):/usr/bin/gmake -f Makefile cmTC_9353b/fast && /usr/bin/gmake -f CMakeFiles/cmTC_9353b.dir/build.make CMakeFiles/cmTC_9353b.dir/build -gmake[1]: Entering directory '/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/CMakeTmp' -Building CXX object CMakeFiles/cmTC_9353b.dir/src.cxx.o -/usr/bin/c++ -DCMAKE_HAVE_LIBC_PTHREAD -o CMakeFiles/cmTC_9353b.dir/src.cxx.o -c /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/CMakeTmp/src.cxx -Linking CXX executable cmTC_9353b -/usr/bin/cmake -E cmake_link_script CMakeFiles/cmTC_9353b.dir/link.txt --verbose=1 -/usr/bin/c++ CMakeFiles/cmTC_9353b.dir/src.cxx.o -o cmTC_9353b -gmake[1]: Leaving directory '/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/CMakeTmp' - - -Source file was: -#include - -static void* test_func(void* data) -{ - return data; -} - -int main(void) -{ - pthread_t thread; - pthread_create(&thread, NULL, test_func, NULL); - pthread_detach(thread); - pthread_cancel(thread); - pthread_join(thread, NULL); - pthread_atfork(NULL, NULL, NULL); - pthread_exit(NULL); - - return 0; -} - diff --git a/src/main/cpp/jni/build/CMakeFiles/Makefile.cmake b/src/main/cpp/jni/build/CMakeFiles/Makefile.cmake deleted file mode 100644 index 189f3dabb20..00000000000 --- a/src/main/cpp/jni/build/CMakeFiles/Makefile.cmake +++ /dev/null @@ -1,61 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 3.22 - -# The generator used is: -set(CMAKE_DEPENDS_GENERATOR "Unix Makefiles") - -# The top level Makefile was generated from the following files: -set(CMAKE_MAKEFILE_DEPENDS - "CMakeCache.txt" - "../CMakeLists.txt" - "CMakeFiles/3.22.1/CMakeCXXCompiler.cmake" - "CMakeFiles/3.22.1/CMakeSystem.cmake" - "../common/CMakeLists.txt" - "../driver/CMakeLists.txt" - "../runtime/CMakeLists.txt" - "/usr/share/cmake-3.22/Modules/CMakeCXXInformation.cmake" - "/usr/share/cmake-3.22/Modules/CMakeCommonLanguageInclude.cmake" - "/usr/share/cmake-3.22/Modules/CMakeFindJavaCommon.cmake" - "/usr/share/cmake-3.22/Modules/CMakeGenericSystem.cmake" - "/usr/share/cmake-3.22/Modules/CMakeInitializeConfigs.cmake" - "/usr/share/cmake-3.22/Modules/CMakeLanguageInformation.cmake" - "/usr/share/cmake-3.22/Modules/CMakeSystemSpecificInformation.cmake" - "/usr/share/cmake-3.22/Modules/CMakeSystemSpecificInitialize.cmake" - "/usr/share/cmake-3.22/Modules/CheckCXXSourceCompiles.cmake" - "/usr/share/cmake-3.22/Modules/CheckIncludeFileCXX.cmake" - "/usr/share/cmake-3.22/Modules/CheckLibraryExists.cmake" - "/usr/share/cmake-3.22/Modules/Compiler/CMakeCommonCompilerMacros.cmake" - "/usr/share/cmake-3.22/Modules/Compiler/GNU-CXX.cmake" - "/usr/share/cmake-3.22/Modules/Compiler/GNU.cmake" - "/usr/share/cmake-3.22/Modules/FindCUDAToolkit.cmake" - "/usr/share/cmake-3.22/Modules/FindJNI.cmake" - "/usr/share/cmake-3.22/Modules/FindPackageHandleStandardArgs.cmake" - "/usr/share/cmake-3.22/Modules/FindPackageMessage.cmake" - "/usr/share/cmake-3.22/Modules/FindThreads.cmake" - "/usr/share/cmake-3.22/Modules/Internal/CheckSourceCompiles.cmake" - "/usr/share/cmake-3.22/Modules/Platform/Linux-GNU-CXX.cmake" - "/usr/share/cmake-3.22/Modules/Platform/Linux-GNU.cmake" - "/usr/share/cmake-3.22/Modules/Platform/Linux.cmake" - "/usr/share/cmake-3.22/Modules/Platform/UnixPaths.cmake" - ) - -# The corresponding makefile is: -set(CMAKE_MAKEFILE_OUTPUTS - "Makefile" - "CMakeFiles/cmake.check_cache" - ) - -# Byproducts of CMake generate step: -set(CMAKE_MAKEFILE_PRODUCTS - "CMakeFiles/CMakeDirectoryInformation.cmake" - "common/CMakeFiles/CMakeDirectoryInformation.cmake" - "runtime/CMakeFiles/CMakeDirectoryInformation.cmake" - "driver/CMakeFiles/CMakeDirectoryInformation.cmake" - ) - -# Dependency information for all targets: -set(CMAKE_DEPEND_INFO_FILES - "common/CMakeFiles/CuJavaCommonJNI.dir/DependInfo.cmake" - "runtime/CMakeFiles/CuJavaRuntime.dir/DependInfo.cmake" - "driver/CMakeFiles/CuJavaDriver.dir/DependInfo.cmake" - ) diff --git a/src/main/cpp/jni/build/CMakeFiles/Makefile2 b/src/main/cpp/jni/build/CMakeFiles/Makefile2 deleted file mode 100644 index e5c5f6a62b5..00000000000 --- a/src/main/cpp/jni/build/CMakeFiles/Makefile2 +++ /dev/null @@ -1,215 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 3.22 - -# Default target executed when no arguments are given to make. -default_target: all -.PHONY : default_target - -#============================================================================= -# Special targets provided by cmake. - -# Disable implicit rules so canonical targets will work. -.SUFFIXES: - -# Disable VCS-based implicit rules. -% : %,v - -# Disable VCS-based implicit rules. -% : RCS/% - -# Disable VCS-based implicit rules. -% : RCS/%,v - -# Disable VCS-based implicit rules. -% : SCCS/s.% - -# Disable VCS-based implicit rules. -% : s.% - -.SUFFIXES: .hpux_make_needs_suffix_list - -# Command-line flag to silence nested $(MAKE). -$(VERBOSE)MAKESILENT = -s - -#Suppress display of executed commands. -$(VERBOSE).SILENT: - -# A target that is always out of date. -cmake_force: -.PHONY : cmake_force - -#============================================================================= -# Set environment variables for the build. - -# The shell in which to execute make rules. -SHELL = /bin/sh - -# The CMake executable. -CMAKE_COMMAND = /usr/bin/cmake - -# The command to remove a file. -RM = /usr/bin/cmake -E rm -f - -# Escaping for special characters. -EQUALS = = - -# The top-level source directory on which CMake was run. -CMAKE_SOURCE_DIR = /home/rene/projects/systemds/src/main/cpp/jni - -# The top-level build directory on which CMake was run. -CMAKE_BINARY_DIR = /home/rene/projects/systemds/src/main/cpp/jni/build - -#============================================================================= -# Directory level rules for the build root directory - -# The main recursive "all" target. -all: common/all -all: runtime/all -all: driver/all -.PHONY : all - -# The main recursive "preinstall" target. -preinstall: common/preinstall -preinstall: runtime/preinstall -preinstall: driver/preinstall -.PHONY : preinstall - -# The main recursive "clean" target. -clean: common/clean -clean: runtime/clean -clean: driver/clean -.PHONY : clean - -#============================================================================= -# Directory level rules for directory common - -# Recursive "all" directory target. -common/all: common/CMakeFiles/CuJavaCommonJNI.dir/all -.PHONY : common/all - -# Recursive "preinstall" directory target. -common/preinstall: -.PHONY : common/preinstall - -# Recursive "clean" directory target. -common/clean: common/CMakeFiles/CuJavaCommonJNI.dir/clean -.PHONY : common/clean - -#============================================================================= -# Directory level rules for directory driver - -# Recursive "all" directory target. -driver/all: driver/CMakeFiles/CuJavaDriver.dir/all -.PHONY : driver/all - -# Recursive "preinstall" directory target. -driver/preinstall: -.PHONY : driver/preinstall - -# Recursive "clean" directory target. -driver/clean: driver/CMakeFiles/CuJavaDriver.dir/clean -.PHONY : driver/clean - -#============================================================================= -# Directory level rules for directory runtime - -# Recursive "all" directory target. -runtime/all: runtime/CMakeFiles/CuJavaRuntime.dir/all -.PHONY : runtime/all - -# Recursive "preinstall" directory target. -runtime/preinstall: -.PHONY : runtime/preinstall - -# Recursive "clean" directory target. -runtime/clean: runtime/CMakeFiles/CuJavaRuntime.dir/clean -.PHONY : runtime/clean - -#============================================================================= -# Target rules for target common/CMakeFiles/CuJavaCommonJNI.dir - -# All Build rule for target. -common/CMakeFiles/CuJavaCommonJNI.dir/all: - $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/depend - $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/build - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles --progress-num=1,2,3,4 "Built target CuJavaCommonJNI" -.PHONY : common/CMakeFiles/CuJavaCommonJNI.dir/all - -# Build rule for subdir invocation for target. -common/CMakeFiles/CuJavaCommonJNI.dir/rule: cmake_check_build_system - $(CMAKE_COMMAND) -E cmake_progress_start /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles 4 - $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 common/CMakeFiles/CuJavaCommonJNI.dir/all - $(CMAKE_COMMAND) -E cmake_progress_start /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles 0 -.PHONY : common/CMakeFiles/CuJavaCommonJNI.dir/rule - -# Convenience name for target. -CuJavaCommonJNI: common/CMakeFiles/CuJavaCommonJNI.dir/rule -.PHONY : CuJavaCommonJNI - -# clean rule for target. -common/CMakeFiles/CuJavaCommonJNI.dir/clean: - $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/clean -.PHONY : common/CMakeFiles/CuJavaCommonJNI.dir/clean - -#============================================================================= -# Target rules for target runtime/CMakeFiles/CuJavaRuntime.dir - -# All Build rule for target. -runtime/CMakeFiles/CuJavaRuntime.dir/all: common/CMakeFiles/CuJavaCommonJNI.dir/all - $(MAKE) $(MAKESILENT) -f runtime/CMakeFiles/CuJavaRuntime.dir/build.make runtime/CMakeFiles/CuJavaRuntime.dir/depend - $(MAKE) $(MAKESILENT) -f runtime/CMakeFiles/CuJavaRuntime.dir/build.make runtime/CMakeFiles/CuJavaRuntime.dir/build - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles --progress-num=7,8 "Built target CuJavaRuntime" -.PHONY : runtime/CMakeFiles/CuJavaRuntime.dir/all - -# Build rule for subdir invocation for target. -runtime/CMakeFiles/CuJavaRuntime.dir/rule: cmake_check_build_system - $(CMAKE_COMMAND) -E cmake_progress_start /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles 6 - $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 runtime/CMakeFiles/CuJavaRuntime.dir/all - $(CMAKE_COMMAND) -E cmake_progress_start /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles 0 -.PHONY : runtime/CMakeFiles/CuJavaRuntime.dir/rule - -# Convenience name for target. -CuJavaRuntime: runtime/CMakeFiles/CuJavaRuntime.dir/rule -.PHONY : CuJavaRuntime - -# clean rule for target. -runtime/CMakeFiles/CuJavaRuntime.dir/clean: - $(MAKE) $(MAKESILENT) -f runtime/CMakeFiles/CuJavaRuntime.dir/build.make runtime/CMakeFiles/CuJavaRuntime.dir/clean -.PHONY : runtime/CMakeFiles/CuJavaRuntime.dir/clean - -#============================================================================= -# Target rules for target driver/CMakeFiles/CuJavaDriver.dir - -# All Build rule for target. -driver/CMakeFiles/CuJavaDriver.dir/all: - $(MAKE) $(MAKESILENT) -f driver/CMakeFiles/CuJavaDriver.dir/build.make driver/CMakeFiles/CuJavaDriver.dir/depend - $(MAKE) $(MAKESILENT) -f driver/CMakeFiles/CuJavaDriver.dir/build.make driver/CMakeFiles/CuJavaDriver.dir/build - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --progress-dir=/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles --progress-num=5,6 "Built target CuJavaDriver" -.PHONY : driver/CMakeFiles/CuJavaDriver.dir/all - -# Build rule for subdir invocation for target. -driver/CMakeFiles/CuJavaDriver.dir/rule: cmake_check_build_system - $(CMAKE_COMMAND) -E cmake_progress_start /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles 2 - $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 driver/CMakeFiles/CuJavaDriver.dir/all - $(CMAKE_COMMAND) -E cmake_progress_start /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles 0 -.PHONY : driver/CMakeFiles/CuJavaDriver.dir/rule - -# Convenience name for target. -CuJavaDriver: driver/CMakeFiles/CuJavaDriver.dir/rule -.PHONY : CuJavaDriver - -# clean rule for target. -driver/CMakeFiles/CuJavaDriver.dir/clean: - $(MAKE) $(MAKESILENT) -f driver/CMakeFiles/CuJavaDriver.dir/build.make driver/CMakeFiles/CuJavaDriver.dir/clean -.PHONY : driver/CMakeFiles/CuJavaDriver.dir/clean - -#============================================================================= -# Special targets to cleanup operation of make. - -# Special rule to run CMake to check the build system integrity. -# No rule that depends on this can have commands that come from listfiles -# because they might be regenerated. -cmake_check_build_system: - $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 -.PHONY : cmake_check_build_system - diff --git a/src/main/cpp/jni/build/CMakeFiles/TargetDirectories.txt b/src/main/cpp/jni/build/CMakeFiles/TargetDirectories.txt deleted file mode 100644 index f848889d5ed..00000000000 --- a/src/main/cpp/jni/build/CMakeFiles/TargetDirectories.txt +++ /dev/null @@ -1,11 +0,0 @@ -/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/edit_cache.dir -/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles/rebuild_cache.dir -/home/rene/projects/systemds/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir -/home/rene/projects/systemds/src/main/cpp/jni/build/common/CMakeFiles/edit_cache.dir -/home/rene/projects/systemds/src/main/cpp/jni/build/common/CMakeFiles/rebuild_cache.dir -/home/rene/projects/systemds/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir -/home/rene/projects/systemds/src/main/cpp/jni/build/runtime/CMakeFiles/edit_cache.dir -/home/rene/projects/systemds/src/main/cpp/jni/build/runtime/CMakeFiles/rebuild_cache.dir -/home/rene/projects/systemds/src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir -/home/rene/projects/systemds/src/main/cpp/jni/build/driver/CMakeFiles/edit_cache.dir -/home/rene/projects/systemds/src/main/cpp/jni/build/driver/CMakeFiles/rebuild_cache.dir diff --git a/src/main/cpp/jni/build/CMakeFiles/cmake.check_cache b/src/main/cpp/jni/build/CMakeFiles/cmake.check_cache deleted file mode 100644 index 3dccd731726..00000000000 --- a/src/main/cpp/jni/build/CMakeFiles/cmake.check_cache +++ /dev/null @@ -1 +0,0 @@ -# This file is generated by cmake for dependency checking of the CMakeCache.txt file diff --git a/src/main/cpp/jni/build/CMakeFiles/progress.marks b/src/main/cpp/jni/build/CMakeFiles/progress.marks deleted file mode 100644 index 45a4fb75db8..00000000000 --- a/src/main/cpp/jni/build/CMakeFiles/progress.marks +++ /dev/null @@ -1 +0,0 @@ -8 diff --git a/src/main/cpp/jni/build/Makefile b/src/main/cpp/jni/build/Makefile deleted file mode 100644 index 3a163defd2f..00000000000 --- a/src/main/cpp/jni/build/Makefile +++ /dev/null @@ -1,182 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 3.22 - -# Default target executed when no arguments are given to make. -default_target: all -.PHONY : default_target - -# Allow only one "make -f Makefile2" at a time, but pass parallelism. -.NOTPARALLEL: - -#============================================================================= -# Special targets provided by cmake. - -# Disable implicit rules so canonical targets will work. -.SUFFIXES: - -# Disable VCS-based implicit rules. -% : %,v - -# Disable VCS-based implicit rules. -% : RCS/% - -# Disable VCS-based implicit rules. -% : RCS/%,v - -# Disable VCS-based implicit rules. -% : SCCS/s.% - -# Disable VCS-based implicit rules. -% : s.% - -.SUFFIXES: .hpux_make_needs_suffix_list - -# Command-line flag to silence nested $(MAKE). -$(VERBOSE)MAKESILENT = -s - -#Suppress display of executed commands. -$(VERBOSE).SILENT: - -# A target that is always out of date. -cmake_force: -.PHONY : cmake_force - -#============================================================================= -# Set environment variables for the build. - -# The shell in which to execute make rules. -SHELL = /bin/sh - -# The CMake executable. -CMAKE_COMMAND = /usr/bin/cmake - -# The command to remove a file. -RM = /usr/bin/cmake -E rm -f - -# Escaping for special characters. -EQUALS = = - -# The top-level source directory on which CMake was run. -CMAKE_SOURCE_DIR = /home/rene/projects/systemds/src/main/cpp/jni - -# The top-level build directory on which CMake was run. -CMAKE_BINARY_DIR = /home/rene/projects/systemds/src/main/cpp/jni/build - -#============================================================================= -# Targets provided globally by CMake. - -# Special rule for the target edit_cache -edit_cache: - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "No interactive CMake dialog available..." - /usr/bin/cmake -E echo No\ interactive\ CMake\ dialog\ available. -.PHONY : edit_cache - -# Special rule for the target edit_cache -edit_cache/fast: edit_cache -.PHONY : edit_cache/fast - -# Special rule for the target rebuild_cache -rebuild_cache: - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..." - /usr/bin/cmake --regenerate-during-build -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) -.PHONY : rebuild_cache - -# Special rule for the target rebuild_cache -rebuild_cache/fast: rebuild_cache -.PHONY : rebuild_cache/fast - -# The main all target -all: cmake_check_build_system - $(CMAKE_COMMAND) -E cmake_progress_start /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles /home/rene/projects/systemds/src/main/cpp/jni/build//CMakeFiles/progress.marks - $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 all - $(CMAKE_COMMAND) -E cmake_progress_start /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles 0 -.PHONY : all - -# The main clean target -clean: - $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 clean -.PHONY : clean - -# The main clean target -clean/fast: clean -.PHONY : clean/fast - -# Prepare targets for installation. -preinstall: all - $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 preinstall -.PHONY : preinstall - -# Prepare targets for installation. -preinstall/fast: - $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 preinstall -.PHONY : preinstall/fast - -# clear depends -depend: - $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1 -.PHONY : depend - -#============================================================================= -# Target rules for targets named CuJavaCommonJNI - -# Build rule for target. -CuJavaCommonJNI: cmake_check_build_system - $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 CuJavaCommonJNI -.PHONY : CuJavaCommonJNI - -# fast build rule for target. -CuJavaCommonJNI/fast: - $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/build -.PHONY : CuJavaCommonJNI/fast - -#============================================================================= -# Target rules for targets named CuJavaRuntime - -# Build rule for target. -CuJavaRuntime: cmake_check_build_system - $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 CuJavaRuntime -.PHONY : CuJavaRuntime - -# fast build rule for target. -CuJavaRuntime/fast: - $(MAKE) $(MAKESILENT) -f runtime/CMakeFiles/CuJavaRuntime.dir/build.make runtime/CMakeFiles/CuJavaRuntime.dir/build -.PHONY : CuJavaRuntime/fast - -#============================================================================= -# Target rules for targets named CuJavaDriver - -# Build rule for target. -CuJavaDriver: cmake_check_build_system - $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 CuJavaDriver -.PHONY : CuJavaDriver - -# fast build rule for target. -CuJavaDriver/fast: - $(MAKE) $(MAKESILENT) -f driver/CMakeFiles/CuJavaDriver.dir/build.make driver/CMakeFiles/CuJavaDriver.dir/build -.PHONY : CuJavaDriver/fast - -# Help Target -help: - @echo "The following are some of the valid targets for this Makefile:" - @echo "... all (the default if no target is provided)" - @echo "... clean" - @echo "... depend" - @echo "... edit_cache" - @echo "... rebuild_cache" - @echo "... CuJavaCommonJNI" - @echo "... CuJavaDriver" - @echo "... CuJavaRuntime" -.PHONY : help - - - -#============================================================================= -# Special targets to cleanup operation of make. - -# Special rule to run CMake to check the build system integrity. -# No rule that depends on this can have commands that come from listfiles -# because they might be regenerated. -cmake_check_build_system: - $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 -.PHONY : cmake_check_build_system - diff --git a/src/main/cpp/jni/build/cmake_install.cmake b/src/main/cpp/jni/build/cmake_install.cmake deleted file mode 100644 index f402264ed15..00000000000 --- a/src/main/cpp/jni/build/cmake_install.cmake +++ /dev/null @@ -1,69 +0,0 @@ -# Install script for directory: /home/rene/projects/systemds/src/main/cpp/jni - -# Set the install prefix -if(NOT DEFINED CMAKE_INSTALL_PREFIX) - set(CMAKE_INSTALL_PREFIX "/usr/local") -endif() -string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}") - -# Set the install configuration name. -if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME) - if(BUILD_TYPE) - string(REGEX REPLACE "^[^A-Za-z0-9_]+" "" - CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}") - else() - set(CMAKE_INSTALL_CONFIG_NAME "Release") - endif() - message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"") -endif() - -# Set the component getting installed. -if(NOT CMAKE_INSTALL_COMPONENT) - if(COMPONENT) - message(STATUS "Install component: \"${COMPONENT}\"") - set(CMAKE_INSTALL_COMPONENT "${COMPONENT}") - else() - set(CMAKE_INSTALL_COMPONENT) - endif() -endif() - -# Install shared libraries without execute permission? -if(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE) - set(CMAKE_INSTALL_SO_NO_EXE "1") -endif() - -# Is this installation the result of a crosscompile? -if(NOT DEFINED CMAKE_CROSSCOMPILING) - set(CMAKE_CROSSCOMPILING "FALSE") -endif() - -# Set default install directory permissions. -if(NOT DEFINED CMAKE_OBJDUMP) - set(CMAKE_OBJDUMP "/usr/bin/objdump") -endif() - -if(NOT CMAKE_INSTALL_LOCAL_ONLY) - # Include the install script for the subdirectory. - include("/home/rene/projects/systemds/src/main/cpp/jni/build/common/cmake_install.cmake") -endif() - -if(NOT CMAKE_INSTALL_LOCAL_ONLY) - # Include the install script for the subdirectory. - include("/home/rene/projects/systemds/src/main/cpp/jni/build/runtime/cmake_install.cmake") -endif() - -if(NOT CMAKE_INSTALL_LOCAL_ONLY) - # Include the install script for the subdirectory. - include("/home/rene/projects/systemds/src/main/cpp/jni/build/driver/cmake_install.cmake") -endif() - -if(CMAKE_INSTALL_COMPONENT) - set(CMAKE_INSTALL_MANIFEST "install_manifest_${CMAKE_INSTALL_COMPONENT}.txt") -else() - set(CMAKE_INSTALL_MANIFEST "install_manifest.txt") -endif() - -string(REPLACE ";" "\n" CMAKE_INSTALL_MANIFEST_CONTENT - "${CMAKE_INSTALL_MANIFEST_FILES}") -file(WRITE "/home/rene/projects/systemds/src/main/cpp/jni/build/${CMAKE_INSTALL_MANIFEST}" - "${CMAKE_INSTALL_MANIFEST_CONTENT}") diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CMakeDirectoryInformation.cmake b/src/main/cpp/jni/build/common/CMakeFiles/CMakeDirectoryInformation.cmake deleted file mode 100644 index b9b869f5a2e..00000000000 --- a/src/main/cpp/jni/build/common/CMakeFiles/CMakeDirectoryInformation.cmake +++ /dev/null @@ -1,16 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 3.22 - -# Relative path conversion top directories. -set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/home/rene/projects/systemds/src/main/cpp/jni") -set(CMAKE_RELATIVE_PATH_TOP_BINARY "/home/rene/projects/systemds/src/main/cpp/jni/build") - -# Force unix paths in dependencies. -set(CMAKE_FORCE_UNIX_PATHS 1) - - -# The C and CXX include file regular expressions for this directory. -set(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$") -set(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$") -set(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN}) -set(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN}) diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/DependInfo.cmake b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/DependInfo.cmake deleted file mode 100644 index 16ff2a011d6..00000000000 --- a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/DependInfo.cmake +++ /dev/null @@ -1,21 +0,0 @@ - -# Consider dependencies only in project. -set(CMAKE_DEPENDS_IN_PROJECT_ONLY OFF) - -# The set of languages for which implicit dependencies are needed: -set(CMAKE_DEPENDS_LANGUAGES - ) - -# The set of dependency files which are needed: -set(CMAKE_DEPENDS_DEPENDENCY_FILES - "/home/rene/projects/systemds/src/main/cpp/jni/common/cujava_jni_utils.cpp" "common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o" "gcc" "common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o.d" - "/home/rene/projects/systemds/src/main/cpp/jni/common/cujava_logger.cpp" "common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o" "gcc" "common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o.d" - "/home/rene/projects/systemds/src/main/cpp/jni/common/cujava_pointer_utils.cpp" "common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o" "gcc" "common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o.d" - ) - -# Targets to which this target links. -set(CMAKE_TARGET_LINKED_INFO_FILES - ) - -# Fortran module output directory. -set(CMAKE_Fortran_TARGET_MODULE_DIR "") diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/build.make b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/build.make deleted file mode 100644 index 9999564f42a..00000000000 --- a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/build.make +++ /dev/null @@ -1,143 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 3.22 - -# Delete rule output on recipe failure. -.DELETE_ON_ERROR: - -#============================================================================= -# Special targets provided by cmake. - -# Disable implicit rules so canonical targets will work. -.SUFFIXES: - -# Disable VCS-based implicit rules. -% : %,v - -# Disable VCS-based implicit rules. -% : RCS/% - -# Disable VCS-based implicit rules. -% : RCS/%,v - -# Disable VCS-based implicit rules. -% : SCCS/s.% - -# Disable VCS-based implicit rules. -% : s.% - -.SUFFIXES: .hpux_make_needs_suffix_list - -# Command-line flag to silence nested $(MAKE). -$(VERBOSE)MAKESILENT = -s - -#Suppress display of executed commands. -$(VERBOSE).SILENT: - -# A target that is always out of date. -cmake_force: -.PHONY : cmake_force - -#============================================================================= -# Set environment variables for the build. - -# The shell in which to execute make rules. -SHELL = /bin/sh - -# The CMake executable. -CMAKE_COMMAND = /usr/bin/cmake - -# The command to remove a file. -RM = /usr/bin/cmake -E rm -f - -# Escaping for special characters. -EQUALS = = - -# The top-level source directory on which CMake was run. -CMAKE_SOURCE_DIR = /home/rene/projects/systemds/src/main/cpp/jni - -# The top-level build directory on which CMake was run. -CMAKE_BINARY_DIR = /home/rene/projects/systemds/src/main/cpp/jni/build - -# Include any dependencies generated for this target. -include common/CMakeFiles/CuJavaCommonJNI.dir/depend.make -# Include any dependencies generated by the compiler for this target. -include common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.make - -# Include the progress variables for this target. -include common/CMakeFiles/CuJavaCommonJNI.dir/progress.make - -# Include the compile flags for this target's objects. -include common/CMakeFiles/CuJavaCommonJNI.dir/flags.make - -common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o: common/CMakeFiles/CuJavaCommonJNI.dir/flags.make -common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o: ../common/cujava_logger.cpp -common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o: common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.ts - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building CXX object common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o" - cd /home/rene/projects/systemds/src/main/cpp/jni/build/common && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o -MF CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o.d -o CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o -c /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_logger.cpp - -common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.i" - cd /home/rene/projects/systemds/src/main/cpp/jni/build/common && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_logger.cpp > CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.i - -common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.s" - cd /home/rene/projects/systemds/src/main/cpp/jni/build/common && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_logger.cpp -o CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.s - -common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o: common/CMakeFiles/CuJavaCommonJNI.dir/flags.make -common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o: ../common/cujava_jni_utils.cpp -common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o: common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.ts - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Building CXX object common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o" - cd /home/rene/projects/systemds/src/main/cpp/jni/build/common && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o -MF CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o.d -o CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o -c /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_jni_utils.cpp - -common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.i" - cd /home/rene/projects/systemds/src/main/cpp/jni/build/common && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_jni_utils.cpp > CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.i - -common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.s" - cd /home/rene/projects/systemds/src/main/cpp/jni/build/common && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_jni_utils.cpp -o CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.s - -common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o: common/CMakeFiles/CuJavaCommonJNI.dir/flags.make -common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o: ../common/cujava_pointer_utils.cpp -common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o: common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.ts - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_3) "Building CXX object common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o" - cd /home/rene/projects/systemds/src/main/cpp/jni/build/common && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o -MF CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o.d -o CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o -c /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_pointer_utils.cpp - -common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.i" - cd /home/rene/projects/systemds/src/main/cpp/jni/build/common && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_pointer_utils.cpp > CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.i - -common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.s" - cd /home/rene/projects/systemds/src/main/cpp/jni/build/common && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_pointer_utils.cpp -o CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.s - -# Object files for target CuJavaCommonJNI -CuJavaCommonJNI_OBJECTS = \ -"CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o" \ -"CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o" \ -"CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o" - -# External object files for target CuJavaCommonJNI -CuJavaCommonJNI_EXTERNAL_OBJECTS = - -/home/rene/projects/systemds/src/main/cpp/lib/libCuJavaCommonJNI.a: common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o -/home/rene/projects/systemds/src/main/cpp/lib/libCuJavaCommonJNI.a: common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o -/home/rene/projects/systemds/src/main/cpp/lib/libCuJavaCommonJNI.a: common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o -/home/rene/projects/systemds/src/main/cpp/lib/libCuJavaCommonJNI.a: common/CMakeFiles/CuJavaCommonJNI.dir/build.make -/home/rene/projects/systemds/src/main/cpp/lib/libCuJavaCommonJNI.a: common/CMakeFiles/CuJavaCommonJNI.dir/link.txt - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_4) "Linking CXX static library /home/rene/projects/systemds/src/main/cpp/lib/libCuJavaCommonJNI.a" - cd /home/rene/projects/systemds/src/main/cpp/jni/build/common && $(CMAKE_COMMAND) -P CMakeFiles/CuJavaCommonJNI.dir/cmake_clean_target.cmake - cd /home/rene/projects/systemds/src/main/cpp/jni/build/common && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/CuJavaCommonJNI.dir/link.txt --verbose=$(VERBOSE) - -# Rule to build all files generated by this target. -common/CMakeFiles/CuJavaCommonJNI.dir/build: /home/rene/projects/systemds/src/main/cpp/lib/libCuJavaCommonJNI.a -.PHONY : common/CMakeFiles/CuJavaCommonJNI.dir/build - -common/CMakeFiles/CuJavaCommonJNI.dir/clean: - cd /home/rene/projects/systemds/src/main/cpp/jni/build/common && $(CMAKE_COMMAND) -P CMakeFiles/CuJavaCommonJNI.dir/cmake_clean.cmake -.PHONY : common/CMakeFiles/CuJavaCommonJNI.dir/clean - -common/CMakeFiles/CuJavaCommonJNI.dir/depend: - cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/rene/projects/systemds/src/main/cpp/jni /home/rene/projects/systemds/src/main/cpp/jni/common /home/rene/projects/systemds/src/main/cpp/jni/build /home/rene/projects/systemds/src/main/cpp/jni/build/common /home/rene/projects/systemds/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/DependInfo.cmake --color=$(COLOR) -.PHONY : common/CMakeFiles/CuJavaCommonJNI.dir/depend - diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cmake_clean.cmake b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cmake_clean.cmake deleted file mode 100644 index 57aa3559e0f..00000000000 --- a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cmake_clean.cmake +++ /dev/null @@ -1,15 +0,0 @@ -file(REMOVE_RECURSE - "/home/rene/projects/systemds/src/main/cpp/lib/libCuJavaCommonJNI.a" - "/home/rene/projects/systemds/src/main/cpp/lib/libCuJavaCommonJNI.pdb" - "CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o" - "CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o.d" - "CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o" - "CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o.d" - "CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o" - "CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o.d" -) - -# Per-language clean rules from dependency scanning. -foreach(lang CXX) - include(CMakeFiles/CuJavaCommonJNI.dir/cmake_clean_${lang}.cmake OPTIONAL) -endforeach() diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cmake_clean_target.cmake b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cmake_clean_target.cmake deleted file mode 100644 index 70103b5824a..00000000000 --- a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cmake_clean_target.cmake +++ /dev/null @@ -1,3 +0,0 @@ -file(REMOVE_RECURSE - "/home/rene/projects/systemds/src/main/cpp/lib/libCuJavaCommonJNI.a" -) diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.internal b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.internal deleted file mode 100644 index 85c445a15a5..00000000000 --- a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.internal +++ /dev/null @@ -1,131 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 3.22 - -common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o - /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_jni_utils.cpp - /usr/include/stdc-predef.h - /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_jni_utils.hpp - /usr/lib/jvm/java-11-openjdk-amd64/include/jni.h - /usr/include/stdio.h - /usr/include/x86_64-linux-gnu/bits/libc-header-start.h - /usr/include/features.h - /usr/include/features-time64.h - /usr/include/x86_64-linux-gnu/bits/wordsize.h - /usr/include/x86_64-linux-gnu/bits/timesize.h - /usr/include/x86_64-linux-gnu/sys/cdefs.h - /usr/include/x86_64-linux-gnu/bits/long-double.h - /usr/include/x86_64-linux-gnu/gnu/stubs.h - /usr/include/x86_64-linux-gnu/gnu/stubs-64.h - /usr/lib/gcc/x86_64-linux-gnu/12/include/stddef.h - /usr/lib/gcc/x86_64-linux-gnu/12/include/stdarg.h - /usr/include/x86_64-linux-gnu/bits/types.h - /usr/include/x86_64-linux-gnu/bits/typesizes.h - /usr/include/x86_64-linux-gnu/bits/time64.h - /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h - /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h - /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h - /usr/include/x86_64-linux-gnu/bits/types/__FILE.h - /usr/include/x86_64-linux-gnu/bits/types/FILE.h - /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h - /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h - /usr/include/x86_64-linux-gnu/bits/stdio_lim.h - /usr/include/x86_64-linux-gnu/bits/floatn.h - /usr/include/x86_64-linux-gnu/bits/floatn-common.h - /usr/include/x86_64-linux-gnu/bits/stdio.h - /usr/include/x86_64-linux-gnu/bits/stdio2.h - /usr/lib/jvm/java-11-openjdk-amd64/include/linux/jni_md.h - /usr/include/c++/12/new - /usr/include/x86_64-linux-gnu/c++/12/bits/c++config.h - /usr/include/x86_64-linux-gnu/c++/12/bits/os_defines.h - /usr/include/x86_64-linux-gnu/c++/12/bits/cpu_defines.h - /usr/include/c++/12/bits/exception.h - /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_logger.hpp - /usr/include/c++/12/cstdarg - /usr/include/c++/12/cstdio - -common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o - /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_logger.cpp - /usr/include/stdc-predef.h - /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_logger.hpp - /usr/include/c++/12/cstdarg - /usr/include/x86_64-linux-gnu/c++/12/bits/c++config.h - /usr/include/x86_64-linux-gnu/c++/12/bits/os_defines.h - /usr/include/features.h - /usr/include/features-time64.h - /usr/include/x86_64-linux-gnu/bits/wordsize.h - /usr/include/x86_64-linux-gnu/bits/timesize.h - /usr/include/x86_64-linux-gnu/sys/cdefs.h - /usr/include/x86_64-linux-gnu/bits/long-double.h - /usr/include/x86_64-linux-gnu/gnu/stubs.h - /usr/include/x86_64-linux-gnu/gnu/stubs-64.h - /usr/include/x86_64-linux-gnu/c++/12/bits/cpu_defines.h - /usr/lib/gcc/x86_64-linux-gnu/12/include/stdarg.h - /usr/include/c++/12/cstdio - /usr/include/stdio.h - /usr/include/x86_64-linux-gnu/bits/libc-header-start.h - /usr/lib/gcc/x86_64-linux-gnu/12/include/stddef.h - /usr/include/x86_64-linux-gnu/bits/types.h - /usr/include/x86_64-linux-gnu/bits/typesizes.h - /usr/include/x86_64-linux-gnu/bits/time64.h - /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h - /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h - /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h - /usr/include/x86_64-linux-gnu/bits/types/__FILE.h - /usr/include/x86_64-linux-gnu/bits/types/FILE.h - /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h - /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h - /usr/include/x86_64-linux-gnu/bits/stdio_lim.h - /usr/include/x86_64-linux-gnu/bits/floatn.h - /usr/include/x86_64-linux-gnu/bits/floatn-common.h - /usr/include/x86_64-linux-gnu/bits/stdio.h - /usr/include/x86_64-linux-gnu/bits/stdio2.h - -common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o - /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_pointer_utils.cpp - /usr/include/stdc-predef.h - /usr/lib/jvm/java-11-openjdk-amd64/include/jni.h - /usr/include/stdio.h - /usr/include/x86_64-linux-gnu/bits/libc-header-start.h - /usr/include/features.h - /usr/include/features-time64.h - /usr/include/x86_64-linux-gnu/bits/wordsize.h - /usr/include/x86_64-linux-gnu/bits/timesize.h - /usr/include/x86_64-linux-gnu/sys/cdefs.h - /usr/include/x86_64-linux-gnu/bits/long-double.h - /usr/include/x86_64-linux-gnu/gnu/stubs.h - /usr/include/x86_64-linux-gnu/gnu/stubs-64.h - /usr/lib/gcc/x86_64-linux-gnu/12/include/stddef.h - /usr/lib/gcc/x86_64-linux-gnu/12/include/stdarg.h - /usr/include/x86_64-linux-gnu/bits/types.h - /usr/include/x86_64-linux-gnu/bits/typesizes.h - /usr/include/x86_64-linux-gnu/bits/time64.h - /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h - /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h - /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h - /usr/include/x86_64-linux-gnu/bits/types/__FILE.h - /usr/include/x86_64-linux-gnu/bits/types/FILE.h - /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h - /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h - /usr/include/x86_64-linux-gnu/bits/stdio_lim.h - /usr/include/x86_64-linux-gnu/bits/floatn.h - /usr/include/x86_64-linux-gnu/bits/floatn-common.h - /usr/include/x86_64-linux-gnu/bits/stdio.h - /usr/include/x86_64-linux-gnu/bits/stdio2.h - /usr/lib/jvm/java-11-openjdk-amd64/include/linux/jni_md.h - /usr/include/c++/12/cstdint - /usr/include/x86_64-linux-gnu/c++/12/bits/c++config.h - /usr/include/x86_64-linux-gnu/c++/12/bits/os_defines.h - /usr/include/x86_64-linux-gnu/c++/12/bits/cpu_defines.h - /usr/lib/gcc/x86_64-linux-gnu/12/include/stdint.h - /usr/include/stdint.h - /usr/include/x86_64-linux-gnu/bits/wchar.h - /usr/include/x86_64-linux-gnu/bits/stdint-intn.h - /usr/include/x86_64-linux-gnu/bits/stdint-uintn.h - /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_logger.hpp - /usr/include/c++/12/cstdarg - /usr/include/c++/12/cstdio - /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_jni_utils.hpp - /usr/include/c++/12/new - /usr/include/c++/12/bits/exception.h - /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_pointer_utils.hpp - diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.make b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.make deleted file mode 100644 index 09c383d6da5..00000000000 --- a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.make +++ /dev/null @@ -1,226 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 3.22 - -common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o: ../common/cujava_jni_utils.cpp \ - /usr/include/stdc-predef.h \ - ../common/cujava_jni_utils.hpp \ - /usr/lib/jvm/java-11-openjdk-amd64/include/jni.h \ - /usr/include/stdio.h \ - /usr/include/x86_64-linux-gnu/bits/libc-header-start.h \ - /usr/include/features.h \ - /usr/include/features-time64.h \ - /usr/include/x86_64-linux-gnu/bits/wordsize.h \ - /usr/include/x86_64-linux-gnu/bits/timesize.h \ - /usr/include/x86_64-linux-gnu/sys/cdefs.h \ - /usr/include/x86_64-linux-gnu/bits/long-double.h \ - /usr/include/x86_64-linux-gnu/gnu/stubs.h \ - /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ - /usr/lib/gcc/x86_64-linux-gnu/12/include/stddef.h \ - /usr/lib/gcc/x86_64-linux-gnu/12/include/stdarg.h \ - /usr/include/x86_64-linux-gnu/bits/types.h \ - /usr/include/x86_64-linux-gnu/bits/typesizes.h \ - /usr/include/x86_64-linux-gnu/bits/time64.h \ - /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h \ - /usr/include/x86_64-linux-gnu/bits/stdio_lim.h \ - /usr/include/x86_64-linux-gnu/bits/floatn.h \ - /usr/include/x86_64-linux-gnu/bits/floatn-common.h \ - /usr/include/x86_64-linux-gnu/bits/stdio.h \ - /usr/include/x86_64-linux-gnu/bits/stdio2.h \ - /usr/lib/jvm/java-11-openjdk-amd64/include/linux/jni_md.h \ - /usr/include/c++/12/new \ - /usr/include/x86_64-linux-gnu/c++/12/bits/c++config.h \ - /usr/include/x86_64-linux-gnu/c++/12/bits/os_defines.h \ - /usr/include/x86_64-linux-gnu/c++/12/bits/cpu_defines.h \ - /usr/include/c++/12/bits/exception.h \ - ../common/cujava_logger.hpp \ - /usr/include/c++/12/cstdarg \ - /usr/include/c++/12/cstdio - -common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o: ../common/cujava_logger.cpp \ - /usr/include/stdc-predef.h \ - ../common/cujava_logger.hpp \ - /usr/include/c++/12/cstdarg \ - /usr/include/x86_64-linux-gnu/c++/12/bits/c++config.h \ - /usr/include/x86_64-linux-gnu/c++/12/bits/os_defines.h \ - /usr/include/features.h \ - /usr/include/features-time64.h \ - /usr/include/x86_64-linux-gnu/bits/wordsize.h \ - /usr/include/x86_64-linux-gnu/bits/timesize.h \ - /usr/include/x86_64-linux-gnu/sys/cdefs.h \ - /usr/include/x86_64-linux-gnu/bits/long-double.h \ - /usr/include/x86_64-linux-gnu/gnu/stubs.h \ - /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ - /usr/include/x86_64-linux-gnu/c++/12/bits/cpu_defines.h \ - /usr/lib/gcc/x86_64-linux-gnu/12/include/stdarg.h \ - /usr/include/c++/12/cstdio \ - /usr/include/stdio.h \ - /usr/include/x86_64-linux-gnu/bits/libc-header-start.h \ - /usr/lib/gcc/x86_64-linux-gnu/12/include/stddef.h \ - /usr/include/x86_64-linux-gnu/bits/types.h \ - /usr/include/x86_64-linux-gnu/bits/typesizes.h \ - /usr/include/x86_64-linux-gnu/bits/time64.h \ - /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h \ - /usr/include/x86_64-linux-gnu/bits/stdio_lim.h \ - /usr/include/x86_64-linux-gnu/bits/floatn.h \ - /usr/include/x86_64-linux-gnu/bits/floatn-common.h \ - /usr/include/x86_64-linux-gnu/bits/stdio.h \ - /usr/include/x86_64-linux-gnu/bits/stdio2.h - -common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o: ../common/cujava_pointer_utils.cpp \ - /usr/include/stdc-predef.h \ - /usr/lib/jvm/java-11-openjdk-amd64/include/jni.h \ - /usr/include/stdio.h \ - /usr/include/x86_64-linux-gnu/bits/libc-header-start.h \ - /usr/include/features.h \ - /usr/include/features-time64.h \ - /usr/include/x86_64-linux-gnu/bits/wordsize.h \ - /usr/include/x86_64-linux-gnu/bits/timesize.h \ - /usr/include/x86_64-linux-gnu/sys/cdefs.h \ - /usr/include/x86_64-linux-gnu/bits/long-double.h \ - /usr/include/x86_64-linux-gnu/gnu/stubs.h \ - /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ - /usr/lib/gcc/x86_64-linux-gnu/12/include/stddef.h \ - /usr/lib/gcc/x86_64-linux-gnu/12/include/stdarg.h \ - /usr/include/x86_64-linux-gnu/bits/types.h \ - /usr/include/x86_64-linux-gnu/bits/typesizes.h \ - /usr/include/x86_64-linux-gnu/bits/time64.h \ - /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h \ - /usr/include/x86_64-linux-gnu/bits/stdio_lim.h \ - /usr/include/x86_64-linux-gnu/bits/floatn.h \ - /usr/include/x86_64-linux-gnu/bits/floatn-common.h \ - /usr/include/x86_64-linux-gnu/bits/stdio.h \ - /usr/include/x86_64-linux-gnu/bits/stdio2.h \ - /usr/lib/jvm/java-11-openjdk-amd64/include/linux/jni_md.h \ - /usr/include/c++/12/cstdint \ - /usr/include/x86_64-linux-gnu/c++/12/bits/c++config.h \ - /usr/include/x86_64-linux-gnu/c++/12/bits/os_defines.h \ - /usr/include/x86_64-linux-gnu/c++/12/bits/cpu_defines.h \ - /usr/lib/gcc/x86_64-linux-gnu/12/include/stdint.h \ - /usr/include/stdint.h \ - /usr/include/x86_64-linux-gnu/bits/wchar.h \ - /usr/include/x86_64-linux-gnu/bits/stdint-intn.h \ - /usr/include/x86_64-linux-gnu/bits/stdint-uintn.h \ - ../common/cujava_logger.hpp \ - /usr/include/c++/12/cstdarg \ - /usr/include/c++/12/cstdio \ - ../common/cujava_jni_utils.hpp \ - /usr/include/c++/12/new \ - /usr/include/c++/12/bits/exception.h \ - ../common/cujava_pointer_utils.hpp - - -/usr/include/x86_64-linux-gnu/bits/stdint-intn.h: - -/usr/lib/gcc/x86_64-linux-gnu/12/include/stdint.h: - -/usr/include/c++/12/cstdint: - -../common/cujava_pointer_utils.cpp: - -/usr/include/c++/12/cstdio: - -/usr/include/x86_64-linux-gnu/c++/12/bits/cpu_defines.h: - -/usr/include/x86_64-linux-gnu/c++/12/bits/os_defines.h: - -/usr/include/x86_64-linux-gnu/bits/stdio.h: - -/usr/include/stdint.h: - -/usr/include/x86_64-linux-gnu/bits/timesize.h: - -/usr/lib/gcc/x86_64-linux-gnu/12/include/stddef.h: - -/usr/lib/jvm/java-11-openjdk-amd64/include/jni.h: - -/usr/include/x86_64-linux-gnu/bits/libc-header-start.h: - -/usr/include/stdc-predef.h: - -/usr/include/x86_64-linux-gnu/bits/stdio2.h: - -/usr/include/x86_64-linux-gnu/sys/cdefs.h: - -/usr/include/stdio.h: - -/usr/include/x86_64-linux-gnu/bits/floatn-common.h: - -../common/cujava_logger.hpp: - -/usr/include/x86_64-linux-gnu/bits/long-double.h: - -../common/cujava_jni_utils.hpp: - -/usr/include/c++/12/bits/exception.h: - -/usr/include/x86_64-linux-gnu/bits/wordsize.h: - -../common/cujava_jni_utils.cpp: - -/usr/include/x86_64-linux-gnu/bits/stdint-uintn.h: - -/usr/include/x86_64-linux-gnu/bits/wchar.h: - -/usr/include/c++/12/new: - -/usr/include/x86_64-linux-gnu/gnu/stubs-64.h: - -/usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h: - -../common/cujava_pointer_utils.hpp: - -/usr/lib/gcc/x86_64-linux-gnu/12/include/stdarg.h: - -/usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h: - -/usr/include/x86_64-linux-gnu/bits/typesizes.h: - -/usr/include/x86_64-linux-gnu/bits/time64.h: - -/usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h: - -../common/cujava_logger.cpp: - -/usr/lib/jvm/java-11-openjdk-amd64/include/linux/jni_md.h: - -/usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h: - -/usr/include/x86_64-linux-gnu/bits/types/__FILE.h: - -/usr/include/x86_64-linux-gnu/c++/12/bits/c++config.h: - -/usr/include/features.h: - -/usr/include/x86_64-linux-gnu/bits/types/FILE.h: - -/usr/include/features-time64.h: - -/usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h: - -/usr/include/c++/12/cstdarg: - -/usr/include/x86_64-linux-gnu/bits/types.h: - -/usr/include/x86_64-linux-gnu/gnu/stubs.h: - -/usr/include/x86_64-linux-gnu/bits/stdio_lim.h: - -/usr/include/x86_64-linux-gnu/bits/floatn.h: diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.ts b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.ts deleted file mode 100644 index 17eeca5619f..00000000000 --- a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/compiler_depend.ts +++ /dev/null @@ -1,2 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Timestamp file for compiler generated dependencies management for CuJavaCommonJNI. diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o deleted file mode 100644 index e1e0ca671e8c79924a2be74b1d6d31db9fe24317..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 8864 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 TcaShXojx4B%-)I*C;$Hd7p2Sp diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o.d b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o.d deleted file mode 100644 index 7ded0e0ccf0..00000000000 --- a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o.d +++ /dev/null @@ -1,38 +0,0 @@ -common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o: \ - /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_jni_utils.cpp \ - /usr/include/stdc-predef.h \ - /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_jni_utils.hpp \ - /usr/lib/jvm/java-11-openjdk-amd64/include/jni.h /usr/include/stdio.h \ - /usr/include/x86_64-linux-gnu/bits/libc-header-start.h \ - /usr/include/features.h /usr/include/features-time64.h \ - /usr/include/x86_64-linux-gnu/bits/wordsize.h \ - /usr/include/x86_64-linux-gnu/bits/timesize.h \ - /usr/include/x86_64-linux-gnu/sys/cdefs.h \ - /usr/include/x86_64-linux-gnu/bits/long-double.h \ - /usr/include/x86_64-linux-gnu/gnu/stubs.h \ - /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ - /usr/lib/gcc/x86_64-linux-gnu/12/include/stddef.h \ - /usr/lib/gcc/x86_64-linux-gnu/12/include/stdarg.h \ - /usr/include/x86_64-linux-gnu/bits/types.h \ - /usr/include/x86_64-linux-gnu/bits/typesizes.h \ - /usr/include/x86_64-linux-gnu/bits/time64.h \ - /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h \ - /usr/include/x86_64-linux-gnu/bits/stdio_lim.h \ - /usr/include/x86_64-linux-gnu/bits/floatn.h \ - /usr/include/x86_64-linux-gnu/bits/floatn-common.h \ - /usr/include/x86_64-linux-gnu/bits/stdio.h \ - /usr/include/x86_64-linux-gnu/bits/stdio2.h \ - /usr/lib/jvm/java-11-openjdk-amd64/include/linux/jni_md.h \ - /usr/include/c++/12/new \ - /usr/include/x86_64-linux-gnu/c++/12/bits/c++config.h \ - /usr/include/x86_64-linux-gnu/c++/12/bits/os_defines.h \ - /usr/include/x86_64-linux-gnu/c++/12/bits/cpu_defines.h \ - /usr/include/c++/12/bits/exception.h \ - /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_logger.hpp \ - /usr/include/c++/12/cstdarg /usr/include/c++/12/cstdio diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o deleted file mode 100644 index 7229186d77db2f497a8b1c00c72b445c79b65508..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2056 zcmbu9O-vI(6vwAfr2@7^J&=If!)mC?rUg_2i7C*+MmIpD7^5-kwrnX-+Ge{;fCC?q zgH1z%@nVbz4<0?3=+PJwOz_~rg9j52){`b06ZK|H@V(ucGTF2zU$Xtb`OUmHGjC?P z8k2|XTrR@QMJ|#37Ndl`aqs&P%Z-r3q?!Eoo%k~$t$%+9Oe)5OkW`d~Ubz?*A~JZ= z#mTrXqD`1Lf_-3KTWbDdMcm})UbO-BRZjjW3_QYdYYo7# zYB;ach5@uxc4hAy$0XsaHh#7SU#h{^YVdo&ah+vQv`QV4=B&D)Dw*8$w5E&6e4Z#b zMlZ-#vm0ov7kpV;&@$s!lFLLHk;euHWMyo4cp?^8;sb+nOyNSp=aZ(cYgvOu#Yn-J z%9#dHl!a7YpUE02C7GThsZ_=+q=6O;H93b!NvSg#K2^A&?Wd_M!(M;J7IFp@@66vl z+wODxAjjWQj(4hoM>qsJz`;L-cS=nEEu}2 zY3Au#MimWh(IDcKYN$j^6beL4=H}<2u0+h{3{8YL(rHzWwx_eEnAdZ8O*fW^Xl2mS zN=jGfH8$gaX#k?}ZD37#i_pdo9)j<@%Wc50_7V7adq5xf7KM$VI1io$TB|MOG$?ZR ze?Tz_Aq2zRygA$Fpc8XC<9ld4AB(;dhbap=2C{h3!C5@hzA8B}B*6yMh-dgRICyXQ zyM=ve8Xv$0XRLkWseyyxRG7&_c7i;Q3)Ji)ZIoZEl?E1D)SP pwFwxWkux6Op!4hikuu%Tb8K)%(^W_dc-7*s)Ah6e6Bgi%{|B2y0nY#c diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o.d b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o.d deleted file mode 100644 index cb81af50e50..00000000000 --- a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o.d +++ /dev/null @@ -1,34 +0,0 @@ -common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o: \ - /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_logger.cpp \ - /usr/include/stdc-predef.h \ - /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_logger.hpp \ - /usr/include/c++/12/cstdarg \ - /usr/include/x86_64-linux-gnu/c++/12/bits/c++config.h \ - /usr/include/x86_64-linux-gnu/c++/12/bits/os_defines.h \ - /usr/include/features.h /usr/include/features-time64.h \ - /usr/include/x86_64-linux-gnu/bits/wordsize.h \ - /usr/include/x86_64-linux-gnu/bits/timesize.h \ - /usr/include/x86_64-linux-gnu/sys/cdefs.h \ - /usr/include/x86_64-linux-gnu/bits/long-double.h \ - /usr/include/x86_64-linux-gnu/gnu/stubs.h \ - /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ - /usr/include/x86_64-linux-gnu/c++/12/bits/cpu_defines.h \ - /usr/lib/gcc/x86_64-linux-gnu/12/include/stdarg.h \ - /usr/include/c++/12/cstdio /usr/include/stdio.h \ - /usr/include/x86_64-linux-gnu/bits/libc-header-start.h \ - /usr/lib/gcc/x86_64-linux-gnu/12/include/stddef.h \ - /usr/include/x86_64-linux-gnu/bits/types.h \ - /usr/include/x86_64-linux-gnu/bits/typesizes.h \ - /usr/include/x86_64-linux-gnu/bits/time64.h \ - /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h \ - /usr/include/x86_64-linux-gnu/bits/stdio_lim.h \ - /usr/include/x86_64-linux-gnu/bits/floatn.h \ - /usr/include/x86_64-linux-gnu/bits/floatn-common.h \ - /usr/include/x86_64-linux-gnu/bits/stdio.h \ - /usr/include/x86_64-linux-gnu/bits/stdio2.h diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o deleted file mode 100644 index b5ad40f221ec6c959501145b58689fa2518cdd63..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 44536 zcmeHwe|%k4mG5b9X#>S1K-H)Smy&8KkmjZ-O({asB<)F?rh%qEq%BFB+%##^Bqlfg z0ki~@6t1BVkO5TGGV(BksP)Gi(Lo6mO5Y5h_wdIcI{4@yGqx15Dj+&Aowe3p>)dtE zJv%uO=ks}gy#499d!O%FzxLWc&))l_H&)dwojPTTBVmejg_F7y)Nx7&Qt2{EmN{Q_ z9wORH;l3HJ7PydiA;+a0FXH$zh_}Jj!S{uyEy$xhD>@t$LZ@KzJb#>LHsFB4?(<-(>HT`3&crI zf12ZAh;QZeevWU0_;yZ@aC`^EcXIkO9Nz`;-*EbFj_-l^UQT}&;?HsV^AO+1=`TS1 zMNWSS;scz%AL74-ONT$?ocHH7?*8{8w%Sephdc0UUW+?CZB79IZn82zD>mjP|IK}R zT0WAv$=8lyJUEs!*fbUHhl$f2F3ES3FV^fojfnQY2P2QL6bX$A;0HSI$$4Q#yfG!D zu4j-iP}jG@ib#efYz#}d&}!6&!-{wv92%UjU*MDB2p7Srkx{xg#gd%r4nawMS3%>J z6xPfTMVe?2LsS`t==?{fK_BG~*XL)oxEIZ$YS(v`JMd)QhE0cZ&UYR;1>uCLF*)a# zIapuI*SX2x$HvOnmanN!zTxg)09HHY^=q*HJ~kb*0F{{P*vg^bbIu<`)0~=Na;oR|>f!fECZ8e$E}|}iN)OdR z0S@P~_u;-A9S%h)`rZKQ^8UA{)w zviGq9u#{3@-h?Hc7g*9!%&lY%@&RRMjMLe1eRi4t5&Vo9@YjyVbq-%dv$$Rt-~%j+ z%KT_rHvbRQVpEv@93CG9>#%)g<{hgj<=vWbuSUC2*SVJajlG;YIw{6rV@<1+qMU6t z7JG-9sj) zzSidVZJCHVPnAsHB1@^94V@n}l}fCWrbjmg2c=6z(mGO;{57SjVlN+m`9Dvc;{3

#I&0L(+nvobB;^A5T>s5p*y0+%pA^>w793Z{06 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 Y`lW;4f4IyY#6Q|&xb{Q-bnx^47xETh1ONa4 diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o.d b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o.d deleted file mode 100644 index e4c67f047cc..00000000000 --- a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o.d +++ /dev/null @@ -1,43 +0,0 @@ -common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o: \ - /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_pointer_utils.cpp \ - /usr/include/stdc-predef.h \ - /usr/lib/jvm/java-11-openjdk-amd64/include/jni.h /usr/include/stdio.h \ - /usr/include/x86_64-linux-gnu/bits/libc-header-start.h \ - /usr/include/features.h /usr/include/features-time64.h \ - /usr/include/x86_64-linux-gnu/bits/wordsize.h \ - /usr/include/x86_64-linux-gnu/bits/timesize.h \ - /usr/include/x86_64-linux-gnu/sys/cdefs.h \ - /usr/include/x86_64-linux-gnu/bits/long-double.h \ - /usr/include/x86_64-linux-gnu/gnu/stubs.h \ - /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ - /usr/lib/gcc/x86_64-linux-gnu/12/include/stddef.h \ - /usr/lib/gcc/x86_64-linux-gnu/12/include/stdarg.h \ - /usr/include/x86_64-linux-gnu/bits/types.h \ - /usr/include/x86_64-linux-gnu/bits/typesizes.h \ - /usr/include/x86_64-linux-gnu/bits/time64.h \ - /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h \ - /usr/include/x86_64-linux-gnu/bits/stdio_lim.h \ - /usr/include/x86_64-linux-gnu/bits/floatn.h \ - /usr/include/x86_64-linux-gnu/bits/floatn-common.h \ - /usr/include/x86_64-linux-gnu/bits/stdio.h \ - /usr/include/x86_64-linux-gnu/bits/stdio2.h \ - /usr/lib/jvm/java-11-openjdk-amd64/include/linux/jni_md.h \ - /usr/include/c++/12/cstdint \ - /usr/include/x86_64-linux-gnu/c++/12/bits/c++config.h \ - /usr/include/x86_64-linux-gnu/c++/12/bits/os_defines.h \ - /usr/include/x86_64-linux-gnu/c++/12/bits/cpu_defines.h \ - /usr/lib/gcc/x86_64-linux-gnu/12/include/stdint.h /usr/include/stdint.h \ - /usr/include/x86_64-linux-gnu/bits/wchar.h \ - /usr/include/x86_64-linux-gnu/bits/stdint-intn.h \ - /usr/include/x86_64-linux-gnu/bits/stdint-uintn.h \ - /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_logger.hpp \ - /usr/include/c++/12/cstdarg /usr/include/c++/12/cstdio \ - /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_jni_utils.hpp \ - /usr/include/c++/12/new /usr/include/c++/12/bits/exception.h \ - /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_pointer_utils.hpp diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/depend.make b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/depend.make deleted file mode 100644 index 4918cb226bc..00000000000 --- a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/depend.make +++ /dev/null @@ -1,2 +0,0 @@ -# Empty dependencies file for CuJavaCommonJNI. -# This may be replaced when dependencies are built. diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/flags.make b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/flags.make deleted file mode 100644 index ce0eb24447c..00000000000 --- a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/flags.make +++ /dev/null @@ -1,10 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 3.22 - -# compile CXX with /usr/bin/c++ -CXX_DEFINES = - -CXX_INCLUDES = -I/usr/lib/jvm/java-11-openjdk-amd64/include -I/usr/lib/jvm/java-11-openjdk-amd64/include/linux -I/home/rene/projects/systemds/src/main/cpp/jni/common - -CXX_FLAGS = -O3 -DNDEBUG -fPIC -std=gnu++11 - diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/link.txt b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/link.txt deleted file mode 100644 index abb08b36493..00000000000 --- a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/link.txt +++ /dev/null @@ -1,2 +0,0 @@ -/usr/bin/ar qc /home/rene/projects/systemds/src/main/cpp/lib/libCuJavaCommonJNI.a CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o -/usr/bin/ranlib /home/rene/projects/systemds/src/main/cpp/lib/libCuJavaCommonJNI.a diff --git a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/progress.make b/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/progress.make deleted file mode 100644 index a69a57e8e4f..00000000000 --- a/src/main/cpp/jni/build/common/CMakeFiles/CuJavaCommonJNI.dir/progress.make +++ /dev/null @@ -1,5 +0,0 @@ -CMAKE_PROGRESS_1 = 1 -CMAKE_PROGRESS_2 = 2 -CMAKE_PROGRESS_3 = 3 -CMAKE_PROGRESS_4 = 4 - diff --git a/src/main/cpp/jni/build/common/CMakeFiles/progress.marks b/src/main/cpp/jni/build/common/CMakeFiles/progress.marks deleted file mode 100644 index b8626c4cff2..00000000000 --- a/src/main/cpp/jni/build/common/CMakeFiles/progress.marks +++ /dev/null @@ -1 +0,0 @@ -4 diff --git a/src/main/cpp/jni/build/common/Makefile b/src/main/cpp/jni/build/common/Makefile deleted file mode 100644 index 28447921416..00000000000 --- a/src/main/cpp/jni/build/common/Makefile +++ /dev/null @@ -1,236 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 3.22 - -# Default target executed when no arguments are given to make. -default_target: all -.PHONY : default_target - -# Allow only one "make -f Makefile2" at a time, but pass parallelism. -.NOTPARALLEL: - -#============================================================================= -# Special targets provided by cmake. - -# Disable implicit rules so canonical targets will work. -.SUFFIXES: - -# Disable VCS-based implicit rules. -% : %,v - -# Disable VCS-based implicit rules. -% : RCS/% - -# Disable VCS-based implicit rules. -% : RCS/%,v - -# Disable VCS-based implicit rules. -% : SCCS/s.% - -# Disable VCS-based implicit rules. -% : s.% - -.SUFFIXES: .hpux_make_needs_suffix_list - -# Command-line flag to silence nested $(MAKE). -$(VERBOSE)MAKESILENT = -s - -#Suppress display of executed commands. -$(VERBOSE).SILENT: - -# A target that is always out of date. -cmake_force: -.PHONY : cmake_force - -#============================================================================= -# Set environment variables for the build. - -# The shell in which to execute make rules. -SHELL = /bin/sh - -# The CMake executable. -CMAKE_COMMAND = /usr/bin/cmake - -# The command to remove a file. -RM = /usr/bin/cmake -E rm -f - -# Escaping for special characters. -EQUALS = = - -# The top-level source directory on which CMake was run. -CMAKE_SOURCE_DIR = /home/rene/projects/systemds/src/main/cpp/jni - -# The top-level build directory on which CMake was run. -CMAKE_BINARY_DIR = /home/rene/projects/systemds/src/main/cpp/jni/build - -#============================================================================= -# Targets provided globally by CMake. - -# Special rule for the target edit_cache -edit_cache: - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "No interactive CMake dialog available..." - /usr/bin/cmake -E echo No\ interactive\ CMake\ dialog\ available. -.PHONY : edit_cache - -# Special rule for the target edit_cache -edit_cache/fast: edit_cache -.PHONY : edit_cache/fast - -# Special rule for the target rebuild_cache -rebuild_cache: - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --cyan "Running CMake to regenerate build system..." - /usr/bin/cmake --regenerate-during-build -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) -.PHONY : rebuild_cache - -# Special rule for the target rebuild_cache -rebuild_cache/fast: rebuild_cache -.PHONY : rebuild_cache/fast - -# The main all target -all: cmake_check_build_system - cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(CMAKE_COMMAND) -E cmake_progress_start /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles /home/rene/projects/systemds/src/main/cpp/jni/build/common//CMakeFiles/progress.marks - cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 common/all - $(CMAKE_COMMAND) -E cmake_progress_start /home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles 0 -.PHONY : all - -# The main clean target -clean: - cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 common/clean -.PHONY : clean - -# The main clean target -clean/fast: clean -.PHONY : clean/fast - -# Prepare targets for installation. -preinstall: all - cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 common/preinstall -.PHONY : preinstall - -# Prepare targets for installation. -preinstall/fast: - cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 common/preinstall -.PHONY : preinstall/fast - -# clear depends -depend: - cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 1 -.PHONY : depend - -# Convenience name for target. -common/CMakeFiles/CuJavaCommonJNI.dir/rule: - cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f CMakeFiles/Makefile2 common/CMakeFiles/CuJavaCommonJNI.dir/rule -.PHONY : common/CMakeFiles/CuJavaCommonJNI.dir/rule - -# Convenience name for target. -CuJavaCommonJNI: common/CMakeFiles/CuJavaCommonJNI.dir/rule -.PHONY : CuJavaCommonJNI - -# fast build rule for target. -CuJavaCommonJNI/fast: - cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/build -.PHONY : CuJavaCommonJNI/fast - -cujava_jni_utils.o: cujava_jni_utils.cpp.o -.PHONY : cujava_jni_utils.o - -# target to build an object file -cujava_jni_utils.cpp.o: - cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.o -.PHONY : cujava_jni_utils.cpp.o - -cujava_jni_utils.i: cujava_jni_utils.cpp.i -.PHONY : cujava_jni_utils.i - -# target to preprocess a source file -cujava_jni_utils.cpp.i: - cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.i -.PHONY : cujava_jni_utils.cpp.i - -cujava_jni_utils.s: cujava_jni_utils.cpp.s -.PHONY : cujava_jni_utils.s - -# target to generate assembly for a file -cujava_jni_utils.cpp.s: - cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/cujava_jni_utils.cpp.s -.PHONY : cujava_jni_utils.cpp.s - -cujava_logger.o: cujava_logger.cpp.o -.PHONY : cujava_logger.o - -# target to build an object file -cujava_logger.cpp.o: - cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.o -.PHONY : cujava_logger.cpp.o - -cujava_logger.i: cujava_logger.cpp.i -.PHONY : cujava_logger.i - -# target to preprocess a source file -cujava_logger.cpp.i: - cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.i -.PHONY : cujava_logger.cpp.i - -cujava_logger.s: cujava_logger.cpp.s -.PHONY : cujava_logger.s - -# target to generate assembly for a file -cujava_logger.cpp.s: - cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/cujava_logger.cpp.s -.PHONY : cujava_logger.cpp.s - -cujava_pointer_utils.o: cujava_pointer_utils.cpp.o -.PHONY : cujava_pointer_utils.o - -# target to build an object file -cujava_pointer_utils.cpp.o: - cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.o -.PHONY : cujava_pointer_utils.cpp.o - -cujava_pointer_utils.i: cujava_pointer_utils.cpp.i -.PHONY : cujava_pointer_utils.i - -# target to preprocess a source file -cujava_pointer_utils.cpp.i: - cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.i -.PHONY : cujava_pointer_utils.cpp.i - -cujava_pointer_utils.s: cujava_pointer_utils.cpp.s -.PHONY : cujava_pointer_utils.s - -# target to generate assembly for a file -cujava_pointer_utils.cpp.s: - cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(MAKE) $(MAKESILENT) -f common/CMakeFiles/CuJavaCommonJNI.dir/build.make common/CMakeFiles/CuJavaCommonJNI.dir/cujava_pointer_utils.cpp.s -.PHONY : cujava_pointer_utils.cpp.s - -# Help Target -help: - @echo "The following are some of the valid targets for this Makefile:" - @echo "... all (the default if no target is provided)" - @echo "... clean" - @echo "... depend" - @echo "... edit_cache" - @echo "... rebuild_cache" - @echo "... CuJavaCommonJNI" - @echo "... cujava_jni_utils.o" - @echo "... cujava_jni_utils.i" - @echo "... cujava_jni_utils.s" - @echo "... cujava_logger.o" - @echo "... cujava_logger.i" - @echo "... cujava_logger.s" - @echo "... cujava_pointer_utils.o" - @echo "... cujava_pointer_utils.i" - @echo "... cujava_pointer_utils.s" -.PHONY : help - - - -#============================================================================= -# Special targets to cleanup operation of make. - -# Special rule to run CMake to check the build system integrity. -# No rule that depends on this can have commands that come from listfiles -# because they might be regenerated. -cmake_check_build_system: - cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(CMAKE_COMMAND) -S$(CMAKE_SOURCE_DIR) -B$(CMAKE_BINARY_DIR) --check-build-system CMakeFiles/Makefile.cmake 0 -.PHONY : cmake_check_build_system - diff --git a/src/main/cpp/jni/build/common/cmake_install.cmake b/src/main/cpp/jni/build/common/cmake_install.cmake deleted file mode 100644 index bad033eb317..00000000000 --- a/src/main/cpp/jni/build/common/cmake_install.cmake +++ /dev/null @@ -1,44 +0,0 @@ -# Install script for directory: /home/rene/projects/systemds/src/main/cpp/jni/common - -# Set the install prefix -if(NOT DEFINED CMAKE_INSTALL_PREFIX) - set(CMAKE_INSTALL_PREFIX "/usr/local") -endif() -string(REGEX REPLACE "/$" "" CMAKE_INSTALL_PREFIX "${CMAKE_INSTALL_PREFIX}") - -# Set the install configuration name. -if(NOT DEFINED CMAKE_INSTALL_CONFIG_NAME) - if(BUILD_TYPE) - string(REGEX REPLACE "^[^A-Za-z0-9_]+" "" - CMAKE_INSTALL_CONFIG_NAME "${BUILD_TYPE}") - else() - set(CMAKE_INSTALL_CONFIG_NAME "Release") - endif() - message(STATUS "Install configuration: \"${CMAKE_INSTALL_CONFIG_NAME}\"") -endif() - -# Set the component getting installed. -if(NOT CMAKE_INSTALL_COMPONENT) - if(COMPONENT) - message(STATUS "Install component: \"${COMPONENT}\"") - set(CMAKE_INSTALL_COMPONENT "${COMPONENT}") - else() - set(CMAKE_INSTALL_COMPONENT) - endif() -endif() - -# Install shared libraries without execute permission? -if(NOT DEFINED CMAKE_INSTALL_SO_NO_EXE) - set(CMAKE_INSTALL_SO_NO_EXE "1") -endif() - -# Is this installation the result of a crosscompile? -if(NOT DEFINED CMAKE_CROSSCOMPILING) - set(CMAKE_CROSSCOMPILING "FALSE") -endif() - -# Set default install directory permissions. -if(NOT DEFINED CMAKE_OBJDUMP) - set(CMAKE_OBJDUMP "/usr/bin/objdump") -endif() - diff --git a/src/main/cpp/jni/build/driver/CMakeFiles/CMakeDirectoryInformation.cmake b/src/main/cpp/jni/build/driver/CMakeFiles/CMakeDirectoryInformation.cmake deleted file mode 100644 index b9b869f5a2e..00000000000 --- a/src/main/cpp/jni/build/driver/CMakeFiles/CMakeDirectoryInformation.cmake +++ /dev/null @@ -1,16 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 3.22 - -# Relative path conversion top directories. -set(CMAKE_RELATIVE_PATH_TOP_SOURCE "/home/rene/projects/systemds/src/main/cpp/jni") -set(CMAKE_RELATIVE_PATH_TOP_BINARY "/home/rene/projects/systemds/src/main/cpp/jni/build") - -# Force unix paths in dependencies. -set(CMAKE_FORCE_UNIX_PATHS 1) - - -# The C and CXX include file regular expressions for this directory. -set(CMAKE_C_INCLUDE_REGEX_SCAN "^.*$") -set(CMAKE_C_INCLUDE_REGEX_COMPLAIN "^$") -set(CMAKE_CXX_INCLUDE_REGEX_SCAN ${CMAKE_C_INCLUDE_REGEX_SCAN}) -set(CMAKE_CXX_INCLUDE_REGEX_COMPLAIN ${CMAKE_C_INCLUDE_REGEX_COMPLAIN}) diff --git a/src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/DependInfo.cmake b/src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/DependInfo.cmake deleted file mode 100644 index 0cf295b8cef..00000000000 --- a/src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/DependInfo.cmake +++ /dev/null @@ -1,19 +0,0 @@ - -# Consider dependencies only in project. -set(CMAKE_DEPENDS_IN_PROJECT_ONLY OFF) - -# The set of languages for which implicit dependencies are needed: -set(CMAKE_DEPENDS_LANGUAGES - ) - -# The set of dependency files which are needed: -set(CMAKE_DEPENDS_DEPENDENCY_FILES - "/home/rene/projects/systemds/src/main/cpp/jni/driver/cujava_driver.cpp" "driver/CMakeFiles/CuJavaDriver.dir/cujava_driver.cpp.o" "gcc" "driver/CMakeFiles/CuJavaDriver.dir/cujava_driver.cpp.o.d" - ) - -# Targets to which this target links. -set(CMAKE_TARGET_LINKED_INFO_FILES - ) - -# Fortran module output directory. -set(CMAKE_Fortran_TARGET_MODULE_DIR "") diff --git a/src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/build.make b/src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/build.make deleted file mode 100644 index 3749984656d..00000000000 --- a/src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/build.make +++ /dev/null @@ -1,110 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 3.22 - -# Delete rule output on recipe failure. -.DELETE_ON_ERROR: - -#============================================================================= -# Special targets provided by cmake. - -# Disable implicit rules so canonical targets will work. -.SUFFIXES: - -# Disable VCS-based implicit rules. -% : %,v - -# Disable VCS-based implicit rules. -% : RCS/% - -# Disable VCS-based implicit rules. -% : RCS/%,v - -# Disable VCS-based implicit rules. -% : SCCS/s.% - -# Disable VCS-based implicit rules. -% : s.% - -.SUFFIXES: .hpux_make_needs_suffix_list - -# Command-line flag to silence nested $(MAKE). -$(VERBOSE)MAKESILENT = -s - -#Suppress display of executed commands. -$(VERBOSE).SILENT: - -# A target that is always out of date. -cmake_force: -.PHONY : cmake_force - -#============================================================================= -# Set environment variables for the build. - -# The shell in which to execute make rules. -SHELL = /bin/sh - -# The CMake executable. -CMAKE_COMMAND = /usr/bin/cmake - -# The command to remove a file. -RM = /usr/bin/cmake -E rm -f - -# Escaping for special characters. -EQUALS = = - -# The top-level source directory on which CMake was run. -CMAKE_SOURCE_DIR = /home/rene/projects/systemds/src/main/cpp/jni - -# The top-level build directory on which CMake was run. -CMAKE_BINARY_DIR = /home/rene/projects/systemds/src/main/cpp/jni/build - -# Include any dependencies generated for this target. -include driver/CMakeFiles/CuJavaDriver.dir/depend.make -# Include any dependencies generated by the compiler for this target. -include driver/CMakeFiles/CuJavaDriver.dir/compiler_depend.make - -# Include the progress variables for this target. -include driver/CMakeFiles/CuJavaDriver.dir/progress.make - -# Include the compile flags for this target's objects. -include driver/CMakeFiles/CuJavaDriver.dir/flags.make - -driver/CMakeFiles/CuJavaDriver.dir/cujava_driver.cpp.o: driver/CMakeFiles/CuJavaDriver.dir/flags.make -driver/CMakeFiles/CuJavaDriver.dir/cujava_driver.cpp.o: ../driver/cujava_driver.cpp -driver/CMakeFiles/CuJavaDriver.dir/cujava_driver.cpp.o: driver/CMakeFiles/CuJavaDriver.dir/compiler_depend.ts - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --progress-dir=/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_1) "Building CXX object driver/CMakeFiles/CuJavaDriver.dir/cujava_driver.cpp.o" - cd /home/rene/projects/systemds/src/main/cpp/jni/build/driver && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -MD -MT driver/CMakeFiles/CuJavaDriver.dir/cujava_driver.cpp.o -MF CMakeFiles/CuJavaDriver.dir/cujava_driver.cpp.o.d -o CMakeFiles/CuJavaDriver.dir/cujava_driver.cpp.o -c /home/rene/projects/systemds/src/main/cpp/jni/driver/cujava_driver.cpp - -driver/CMakeFiles/CuJavaDriver.dir/cujava_driver.cpp.i: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Preprocessing CXX source to CMakeFiles/CuJavaDriver.dir/cujava_driver.cpp.i" - cd /home/rene/projects/systemds/src/main/cpp/jni/build/driver && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -E /home/rene/projects/systemds/src/main/cpp/jni/driver/cujava_driver.cpp > CMakeFiles/CuJavaDriver.dir/cujava_driver.cpp.i - -driver/CMakeFiles/CuJavaDriver.dir/cujava_driver.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/CuJavaDriver.dir/cujava_driver.cpp.s" - cd /home/rene/projects/systemds/src/main/cpp/jni/build/driver && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/rene/projects/systemds/src/main/cpp/jni/driver/cujava_driver.cpp -o CMakeFiles/CuJavaDriver.dir/cujava_driver.cpp.s - -# Object files for target CuJavaDriver -CuJavaDriver_OBJECTS = \ -"CMakeFiles/CuJavaDriver.dir/cujava_driver.cpp.o" - -# External object files for target CuJavaDriver -CuJavaDriver_EXTERNAL_OBJECTS = - -/home/rene/projects/systemds/src/main/cpp/lib/libcujava_driver.so: driver/CMakeFiles/CuJavaDriver.dir/cujava_driver.cpp.o -/home/rene/projects/systemds/src/main/cpp/lib/libcujava_driver.so: driver/CMakeFiles/CuJavaDriver.dir/build.make -/home/rene/projects/systemds/src/main/cpp/lib/libcujava_driver.so: driver/CMakeFiles/CuJavaDriver.dir/link.txt - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Linking CXX shared library /home/rene/projects/systemds/src/main/cpp/lib/libcujava_driver.so" - cd /home/rene/projects/systemds/src/main/cpp/jni/build/driver && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/CuJavaDriver.dir/link.txt --verbose=$(VERBOSE) - -# Rule to build all files generated by this target. -driver/CMakeFiles/CuJavaDriver.dir/build: /home/rene/projects/systemds/src/main/cpp/lib/libcujava_driver.so -.PHONY : driver/CMakeFiles/CuJavaDriver.dir/build - -driver/CMakeFiles/CuJavaDriver.dir/clean: - cd /home/rene/projects/systemds/src/main/cpp/jni/build/driver && $(CMAKE_COMMAND) -P CMakeFiles/CuJavaDriver.dir/cmake_clean.cmake -.PHONY : driver/CMakeFiles/CuJavaDriver.dir/clean - -driver/CMakeFiles/CuJavaDriver.dir/depend: - cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/rene/projects/systemds/src/main/cpp/jni /home/rene/projects/systemds/src/main/cpp/jni/driver /home/rene/projects/systemds/src/main/cpp/jni/build /home/rene/projects/systemds/src/main/cpp/jni/build/driver /home/rene/projects/systemds/src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/DependInfo.cmake --color=$(COLOR) -.PHONY : driver/CMakeFiles/CuJavaDriver.dir/depend - diff --git a/src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/cmake_clean.cmake b/src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/cmake_clean.cmake deleted file mode 100644 index 08445c055f9..00000000000 --- a/src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/cmake_clean.cmake +++ /dev/null @@ -1,11 +0,0 @@ -file(REMOVE_RECURSE - "/home/rene/projects/systemds/src/main/cpp/lib/libcujava_driver.pdb" - "/home/rene/projects/systemds/src/main/cpp/lib/libcujava_driver.so" - "CMakeFiles/CuJavaDriver.dir/cujava_driver.cpp.o" - "CMakeFiles/CuJavaDriver.dir/cujava_driver.cpp.o.d" -) - -# Per-language clean rules from dependency scanning. -foreach(lang CXX) - include(CMakeFiles/CuJavaDriver.dir/cmake_clean_${lang}.cmake OPTIONAL) -endforeach() diff --git a/src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/compiler_depend.internal b/src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/compiler_depend.internal deleted file mode 100644 index bf8d3267de3..00000000000 --- a/src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/compiler_depend.internal +++ /dev/null @@ -1,92 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 3.22 - -driver/CMakeFiles/CuJavaDriver.dir/cujava_driver.cpp.o - /home/rene/projects/systemds/src/main/cpp/jni/driver/cujava_driver.cpp - /usr/include/stdc-predef.h - /home/rene/projects/systemds/src/main/cpp/jni/driver/cujava_driver.hpp - /usr/lib/jvm/java-11-openjdk-amd64/include/jni.h - /usr/include/stdio.h - /usr/include/x86_64-linux-gnu/bits/libc-header-start.h - /usr/include/features.h - /usr/include/features-time64.h - /usr/include/x86_64-linux-gnu/bits/wordsize.h - /usr/include/x86_64-linux-gnu/bits/timesize.h - /usr/include/x86_64-linux-gnu/sys/cdefs.h - /usr/include/x86_64-linux-gnu/bits/long-double.h - /usr/include/x86_64-linux-gnu/gnu/stubs.h - /usr/include/x86_64-linux-gnu/gnu/stubs-64.h - /usr/lib/gcc/x86_64-linux-gnu/12/include/stddef.h - /usr/lib/gcc/x86_64-linux-gnu/12/include/stdarg.h - /usr/include/x86_64-linux-gnu/bits/types.h - /usr/include/x86_64-linux-gnu/bits/typesizes.h - /usr/include/x86_64-linux-gnu/bits/time64.h - /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h - /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h - /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h - /usr/include/x86_64-linux-gnu/bits/types/__FILE.h - /usr/include/x86_64-linux-gnu/bits/types/FILE.h - /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h - /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h - /usr/include/x86_64-linux-gnu/bits/stdio_lim.h - /usr/include/x86_64-linux-gnu/bits/floatn.h - /usr/include/x86_64-linux-gnu/bits/floatn-common.h - /usr/include/x86_64-linux-gnu/bits/stdio.h - /usr/include/x86_64-linux-gnu/bits/stdio2.h - /usr/lib/jvm/java-11-openjdk-amd64/include/linux/jni_md.h - /home/rene/projects/systemds/src/main/cpp/jni/driver/cujava_driver_common.hpp - /usr/include/c++/12/cstdint - /usr/include/x86_64-linux-gnu/c++/12/bits/c++config.h - /usr/include/x86_64-linux-gnu/c++/12/bits/os_defines.h - /usr/include/x86_64-linux-gnu/c++/12/bits/cpu_defines.h - /usr/lib/gcc/x86_64-linux-gnu/12/include/stdint.h - /usr/include/stdint.h - /usr/include/x86_64-linux-gnu/bits/wchar.h - /usr/include/x86_64-linux-gnu/bits/stdint-intn.h - /usr/include/x86_64-linux-gnu/bits/stdint-uintn.h - /usr/local/cuda-12.6/include/cuda.h - /usr/include/c++/12/stdlib.h - /usr/include/c++/12/cstdlib - /usr/include/stdlib.h - /usr/include/x86_64-linux-gnu/bits/waitflags.h - /usr/include/x86_64-linux-gnu/bits/waitstatus.h - /usr/include/x86_64-linux-gnu/bits/types/locale_t.h - /usr/include/x86_64-linux-gnu/bits/types/__locale_t.h - /usr/include/x86_64-linux-gnu/sys/types.h - /usr/include/x86_64-linux-gnu/bits/types/clock_t.h - /usr/include/x86_64-linux-gnu/bits/types/clockid_t.h - /usr/include/x86_64-linux-gnu/bits/types/time_t.h - /usr/include/x86_64-linux-gnu/bits/types/timer_t.h - /usr/include/endian.h - /usr/include/x86_64-linux-gnu/bits/endian.h - /usr/include/x86_64-linux-gnu/bits/endianness.h - /usr/include/x86_64-linux-gnu/bits/byteswap.h - /usr/include/x86_64-linux-gnu/bits/uintn-identity.h - /usr/include/x86_64-linux-gnu/sys/select.h - /usr/include/x86_64-linux-gnu/bits/select.h - /usr/include/x86_64-linux-gnu/bits/types/sigset_t.h - /usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h - /usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h - /usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h - /usr/include/x86_64-linux-gnu/bits/select2.h - /usr/include/x86_64-linux-gnu/bits/pthreadtypes.h - /usr/include/x86_64-linux-gnu/bits/thread-shared-types.h - /usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h - /usr/include/x86_64-linux-gnu/bits/atomic_wide_counter.h - /usr/include/x86_64-linux-gnu/bits/struct_mutex.h - /usr/include/x86_64-linux-gnu/bits/struct_rwlock.h - /usr/include/alloca.h - /usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h - /usr/include/x86_64-linux-gnu/bits/stdlib-float.h - /usr/include/x86_64-linux-gnu/bits/stdlib.h - /usr/include/c++/12/bits/std_abs.h - /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_logger.hpp - /usr/include/c++/12/cstdarg - /usr/include/c++/12/cstdio - /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_jni_utils.hpp - /usr/include/c++/12/new - /usr/include/c++/12/bits/exception.h - /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_pointer_utils.hpp - /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_jni_utils.hpp - /home/rene/projects/systemds/src/main/cpp/jni/common/cujava_logger.hpp - diff --git a/src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/compiler_depend.make b/src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/compiler_depend.make deleted file mode 100644 index 8fdc6da4c7b..00000000000 --- a/src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/compiler_depend.make +++ /dev/null @@ -1,261 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Generated by "Unix Makefiles" Generator, CMake Version 3.22 - -driver/CMakeFiles/CuJavaDriver.dir/cujava_driver.cpp.o: ../driver/cujava_driver.cpp \ - /usr/include/stdc-predef.h \ - ../driver/cujava_driver.hpp \ - /usr/lib/jvm/java-11-openjdk-amd64/include/jni.h \ - /usr/include/stdio.h \ - /usr/include/x86_64-linux-gnu/bits/libc-header-start.h \ - /usr/include/features.h \ - /usr/include/features-time64.h \ - /usr/include/x86_64-linux-gnu/bits/wordsize.h \ - /usr/include/x86_64-linux-gnu/bits/timesize.h \ - /usr/include/x86_64-linux-gnu/sys/cdefs.h \ - /usr/include/x86_64-linux-gnu/bits/long-double.h \ - /usr/include/x86_64-linux-gnu/gnu/stubs.h \ - /usr/include/x86_64-linux-gnu/gnu/stubs-64.h \ - /usr/lib/gcc/x86_64-linux-gnu/12/include/stddef.h \ - /usr/lib/gcc/x86_64-linux-gnu/12/include/stdarg.h \ - /usr/include/x86_64-linux-gnu/bits/types.h \ - /usr/include/x86_64-linux-gnu/bits/typesizes.h \ - /usr/include/x86_64-linux-gnu/bits/time64.h \ - /usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h \ - /usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h \ - /usr/include/x86_64-linux-gnu/bits/stdio_lim.h \ - /usr/include/x86_64-linux-gnu/bits/floatn.h \ - /usr/include/x86_64-linux-gnu/bits/floatn-common.h \ - /usr/include/x86_64-linux-gnu/bits/stdio.h \ - /usr/include/x86_64-linux-gnu/bits/stdio2.h \ - /usr/lib/jvm/java-11-openjdk-amd64/include/linux/jni_md.h \ - ../driver/cujava_driver_common.hpp \ - /usr/include/c++/12/cstdint \ - /usr/include/x86_64-linux-gnu/c++/12/bits/c++config.h \ - /usr/include/x86_64-linux-gnu/c++/12/bits/os_defines.h \ - /usr/include/x86_64-linux-gnu/c++/12/bits/cpu_defines.h \ - /usr/lib/gcc/x86_64-linux-gnu/12/include/stdint.h \ - /usr/include/stdint.h \ - /usr/include/x86_64-linux-gnu/bits/wchar.h \ - /usr/include/x86_64-linux-gnu/bits/stdint-intn.h \ - /usr/include/x86_64-linux-gnu/bits/stdint-uintn.h \ - /usr/local/cuda-12.6/include/cuda.h \ - /usr/include/c++/12/stdlib.h \ - /usr/include/c++/12/cstdlib \ - /usr/include/stdlib.h \ - /usr/include/x86_64-linux-gnu/bits/waitflags.h \ - /usr/include/x86_64-linux-gnu/bits/waitstatus.h \ - /usr/include/x86_64-linux-gnu/bits/types/locale_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__locale_t.h \ - /usr/include/x86_64-linux-gnu/sys/types.h \ - /usr/include/x86_64-linux-gnu/bits/types/clock_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/clockid_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/time_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/timer_t.h \ - /usr/include/endian.h \ - /usr/include/x86_64-linux-gnu/bits/endian.h \ - /usr/include/x86_64-linux-gnu/bits/endianness.h \ - /usr/include/x86_64-linux-gnu/bits/byteswap.h \ - /usr/include/x86_64-linux-gnu/bits/uintn-identity.h \ - /usr/include/x86_64-linux-gnu/sys/select.h \ - /usr/include/x86_64-linux-gnu/bits/select.h \ - /usr/include/x86_64-linux-gnu/bits/types/sigset_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h \ - /usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h \ - /usr/include/x86_64-linux-gnu/bits/select2.h \ - /usr/include/x86_64-linux-gnu/bits/pthreadtypes.h \ - /usr/include/x86_64-linux-gnu/bits/thread-shared-types.h \ - /usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h \ - /usr/include/x86_64-linux-gnu/bits/atomic_wide_counter.h \ - /usr/include/x86_64-linux-gnu/bits/struct_mutex.h \ - /usr/include/x86_64-linux-gnu/bits/struct_rwlock.h \ - /usr/include/alloca.h \ - /usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h \ - /usr/include/x86_64-linux-gnu/bits/stdlib-float.h \ - /usr/include/x86_64-linux-gnu/bits/stdlib.h \ - /usr/include/c++/12/bits/std_abs.h \ - ../common/cujava_logger.hpp \ - /usr/include/c++/12/cstdarg \ - /usr/include/c++/12/cstdio \ - ../common/cujava_jni_utils.hpp \ - /usr/include/c++/12/new \ - /usr/include/c++/12/bits/exception.h \ - ../common/cujava_pointer_utils.hpp \ - ../common/cujava_jni_utils.hpp \ - ../common/cujava_logger.hpp - - -../common/cujava_pointer_utils.hpp: - -/usr/include/c++/12/new: - -../common/cujava_jni_utils.hpp: - -../common/cujava_logger.hpp: - -/usr/include/alloca.h: - -/usr/include/x86_64-linux-gnu/bits/struct_rwlock.h: - -/usr/include/x86_64-linux-gnu/bits/struct_mutex.h: - -/usr/include/x86_64-linux-gnu/bits/thread-shared-types.h: - -/usr/include/x86_64-linux-gnu/bits/select.h: - -/usr/include/x86_64-linux-gnu/sys/select.h: - -/usr/include/x86_64-linux-gnu/bits/uintn-identity.h: - -/usr/include/x86_64-linux-gnu/bits/floatn.h: - -/usr/include/c++/12/bits/exception.h: - -/usr/include/x86_64-linux-gnu/bits/stdio_lim.h: - -/usr/include/x86_64-linux-gnu/gnu/stubs.h: - -/usr/include/x86_64-linux-gnu/bits/atomic_wide_counter.h: - -/usr/include/x86_64-linux-gnu/bits/types.h: - -/usr/include/x86_64-linux-gnu/bits/types/cookie_io_functions_t.h: - -/usr/include/features-time64.h: - -/usr/include/features.h: - -/usr/include/x86_64-linux-gnu/bits/types/struct_timespec.h: - -/usr/include/x86_64-linux-gnu/bits/types/__fpos64_t.h: - -/usr/lib/jvm/java-11-openjdk-amd64/include/linux/jni_md.h: - -/usr/include/x86_64-linux-gnu/bits/types/__mbstate_t.h: - -/usr/include/x86_64-linux-gnu/bits/stdlib.h: - -/usr/include/x86_64-linux-gnu/gnu/stubs-64.h: - -/usr/include/x86_64-linux-gnu/bits/wchar.h: - -/usr/include/x86_64-linux-gnu/bits/stdint-uintn.h: - -/usr/include/x86_64-linux-gnu/bits/types/__fpos_t.h: - -/usr/include/x86_64-linux-gnu/bits/types/sigset_t.h: - -/usr/include/x86_64-linux-gnu/bits/time64.h: - -/usr/include/x86_64-linux-gnu/bits/typesizes.h: - -/usr/include/x86_64-linux-gnu/bits/types/struct_FILE.h: - -/usr/include/x86_64-linux-gnu/bits/endianness.h: - -/usr/include/x86_64-linux-gnu/sys/types.h: - -/usr/include/x86_64-linux-gnu/bits/pthreadtypes-arch.h: - -/usr/include/x86_64-linux-gnu/bits/types/time_t.h: - -../driver/cujava_driver.hpp: - -/usr/include/x86_64-linux-gnu/bits/select2.h: - -../driver/cujava_driver.cpp: - -/usr/include/x86_64-linux-gnu/bits/stdlib-float.h: - -/usr/include/x86_64-linux-gnu/bits/stdlib-bsearch.h: - -/usr/include/stdc-predef.h: - -/usr/include/x86_64-linux-gnu/bits/types/clockid_t.h: - -/usr/include/x86_64-linux-gnu/c++/12/bits/c++config.h: - -/usr/include/x86_64-linux-gnu/bits/wordsize.h: - -/usr/include/stdlib.h: - -/usr/include/x86_64-linux-gnu/bits/floatn-common.h: - -/usr/include/x86_64-linux-gnu/bits/types/__locale_t.h: - -/usr/include/stdio.h: - -/usr/include/c++/12/cstdarg: - -/usr/include/x86_64-linux-gnu/bits/types/struct_timeval.h: - -/usr/include/x86_64-linux-gnu/sys/cdefs.h: - -/usr/include/x86_64-linux-gnu/bits/pthreadtypes.h: - -/usr/include/x86_64-linux-gnu/bits/stdio2.h: - -/usr/include/x86_64-linux-gnu/bits/types/__FILE.h: - -/usr/include/x86_64-linux-gnu/bits/types/clock_t.h: - -/usr/include/x86_64-linux-gnu/bits/libc-header-start.h: - -/usr/lib/jvm/java-11-openjdk-amd64/include/jni.h: - -/usr/include/x86_64-linux-gnu/bits/types/locale_t.h: - -/usr/lib/gcc/x86_64-linux-gnu/12/include/stddef.h: - -/usr/include/stdint.h: - -/usr/include/x86_64-linux-gnu/bits/types/FILE.h: - -/usr/include/x86_64-linux-gnu/bits/stdio.h: - -/usr/lib/gcc/x86_64-linux-gnu/12/include/stdarg.h: - -/usr/include/c++/12/cstdint: - -/usr/include/x86_64-linux-gnu/c++/12/bits/os_defines.h: - -/usr/include/x86_64-linux-gnu/c++/12/bits/cpu_defines.h: - -/usr/include/x86_64-linux-gnu/bits/endian.h: - -/usr/lib/gcc/x86_64-linux-gnu/12/include/stdint.h: - -/usr/include/c++/12/bits/std_abs.h: - -/usr/include/x86_64-linux-gnu/bits/stdint-intn.h: - -/usr/local/cuda-12.6/include/cuda.h: - -/usr/include/c++/12/stdlib.h: - -/usr/include/c++/12/cstdio: - -/usr/include/x86_64-linux-gnu/bits/timesize.h: - -/usr/include/c++/12/cstdlib: - -../driver/cujava_driver_common.hpp: - -/usr/include/x86_64-linux-gnu/bits/waitflags.h: - -/usr/include/x86_64-linux-gnu/bits/waitstatus.h: - -/usr/include/endian.h: - -/usr/include/x86_64-linux-gnu/bits/types/timer_t.h: - -/usr/include/x86_64-linux-gnu/bits/types/__sigset_t.h: - -/usr/include/x86_64-linux-gnu/bits/long-double.h: - -/usr/include/x86_64-linux-gnu/bits/byteswap.h: diff --git a/src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/compiler_depend.ts b/src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/compiler_depend.ts deleted file mode 100644 index be58ad60fe0..00000000000 --- a/src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/compiler_depend.ts +++ /dev/null @@ -1,2 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Timestamp file for compiler generated dependencies management for CuJavaDriver. diff --git a/src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/cujava_driver.cpp.o b/src/main/cpp/jni/build/driver/CMakeFiles/CuJavaDriver.dir/cujava_driver.cpp.o deleted file mode 100644 index 99ab1e541d116cefc2a4860a4920295550cfb517..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14832 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 CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.i - -runtime/CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.s: cmake_force - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green "Compiling CXX source to assembly CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.s" - cd /home/rene/projects/systemds/src/main/cpp/jni/build/runtime && /usr/bin/c++ $(CXX_DEFINES) $(CXX_INCLUDES) $(CXX_FLAGS) -S /home/rene/projects/systemds/src/main/cpp/jni/runtime/cujava_runtime.cpp -o CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.s - -# Object files for target CuJavaRuntime -CuJavaRuntime_OBJECTS = \ -"CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.o" - -# External object files for target CuJavaRuntime -CuJavaRuntime_EXTERNAL_OBJECTS = - -/home/rene/projects/systemds/src/main/cpp/lib/libcujava_runtime.so: runtime/CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.o -/home/rene/projects/systemds/src/main/cpp/lib/libcujava_runtime.so: runtime/CMakeFiles/CuJavaRuntime.dir/build.make -/home/rene/projects/systemds/src/main/cpp/lib/libcujava_runtime.so: /home/rene/projects/systemds/src/main/cpp/lib/libCuJavaCommonJNI.a -/home/rene/projects/systemds/src/main/cpp/lib/libcujava_runtime.so: /usr/local/cuda-12.6/lib64/libcudart.so -/home/rene/projects/systemds/src/main/cpp/lib/libcujava_runtime.so: /usr/lib/jvm/java-11-openjdk-amd64/lib/libjawt.so -/home/rene/projects/systemds/src/main/cpp/lib/libcujava_runtime.so: /usr/lib/jvm/java-11-openjdk-amd64/lib/server/libjvm.so -/home/rene/projects/systemds/src/main/cpp/lib/libcujava_runtime.so: /home/rene/projects/systemds/src/main/cpp/lib/libCuJavaCommonJNI.a -/home/rene/projects/systemds/src/main/cpp/lib/libcujava_runtime.so: /usr/lib/x86_64-linux-gnu/libcuda.so -/home/rene/projects/systemds/src/main/cpp/lib/libcujava_runtime.so: /usr/lib/jvm/java-11-openjdk-amd64/lib/libjawt.so -/home/rene/projects/systemds/src/main/cpp/lib/libcujava_runtime.so: /usr/lib/jvm/java-11-openjdk-amd64/lib/server/libjvm.so -/home/rene/projects/systemds/src/main/cpp/lib/libcujava_runtime.so: runtime/CMakeFiles/CuJavaRuntime.dir/link.txt - @$(CMAKE_COMMAND) -E cmake_echo_color --switch=$(COLOR) --green --bold --progress-dir=/home/rene/projects/systemds/src/main/cpp/jni/build/CMakeFiles --progress-num=$(CMAKE_PROGRESS_2) "Linking CXX shared library /home/rene/projects/systemds/src/main/cpp/lib/libcujava_runtime.so" - cd /home/rene/projects/systemds/src/main/cpp/jni/build/runtime && $(CMAKE_COMMAND) -E cmake_link_script CMakeFiles/CuJavaRuntime.dir/link.txt --verbose=$(VERBOSE) - -# Rule to build all files generated by this target. -runtime/CMakeFiles/CuJavaRuntime.dir/build: /home/rene/projects/systemds/src/main/cpp/lib/libcujava_runtime.so -.PHONY : runtime/CMakeFiles/CuJavaRuntime.dir/build - -runtime/CMakeFiles/CuJavaRuntime.dir/clean: - cd /home/rene/projects/systemds/src/main/cpp/jni/build/runtime && $(CMAKE_COMMAND) -P CMakeFiles/CuJavaRuntime.dir/cmake_clean.cmake -.PHONY : runtime/CMakeFiles/CuJavaRuntime.dir/clean - -runtime/CMakeFiles/CuJavaRuntime.dir/depend: - cd /home/rene/projects/systemds/src/main/cpp/jni/build && $(CMAKE_COMMAND) -E cmake_depends "Unix Makefiles" /home/rene/projects/systemds/src/main/cpp/jni /home/rene/projects/systemds/src/main/cpp/jni/runtime /home/rene/projects/systemds/src/main/cpp/jni/build /home/rene/projects/systemds/src/main/cpp/jni/build/runtime /home/rene/projects/systemds/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/DependInfo.cmake --color=$(COLOR) -.PHONY : runtime/CMakeFiles/CuJavaRuntime.dir/depend - diff --git a/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/cmake_clean.cmake b/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/cmake_clean.cmake deleted file mode 100644 index d9adbdc4504..00000000000 --- a/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/cmake_clean.cmake +++ /dev/null @@ -1,11 +0,0 @@ -file(REMOVE_RECURSE - "/home/rene/projects/systemds/src/main/cpp/lib/libcujava_runtime.pdb" - "/home/rene/projects/systemds/src/main/cpp/lib/libcujava_runtime.so" - "CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.o" - "CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.o.d" -) - -# Per-language clean rules from dependency scanning. -foreach(lang CXX) - include(CMakeFiles/CuJavaRuntime.dir/cmake_clean_${lang}.cmake OPTIONAL) -endforeach() diff --git a/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/compiler_depend.make b/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/compiler_depend.make deleted file mode 100644 index 600905e15ea..00000000000 --- a/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/compiler_depend.make +++ /dev/null @@ -1,2 +0,0 @@ -# Empty compiler generated dependencies file for CuJavaRuntime. -# This may be replaced when dependencies are built. diff --git a/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/compiler_depend.ts b/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/compiler_depend.ts deleted file mode 100644 index 607cea7b755..00000000000 --- a/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/compiler_depend.ts +++ /dev/null @@ -1,2 +0,0 @@ -# CMAKE generated file: DO NOT EDIT! -# Timestamp file for compiler generated dependencies management for CuJavaRuntime. diff --git a/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.o b/src/main/cpp/jni/build/runtime/CMakeFiles/CuJavaRuntime.dir/cujava_runtime.cpp.o deleted file mode 100644 index 436496ae31a5a69b4f5c2407e692aee591ae51e5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32832 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 pW4oIjJA}O1jrf=D*YvwGI Date: Sat, 30 Aug 2025 18:56:10 +0200 Subject: [PATCH 49/57] first half of cusparse --- src/main/cpp/jni/CMakeLists.txt | 3 +- src/main/cpp/jni/common/cujava_jni_utils.cpp | 53 ++ src/main/cpp/jni/common/cujava_jni_utils.hpp | 4 + src/main/cpp/jni/cusparse/CMakeLists.txt | 56 ++ src/main/cpp/jni/cusparse/cujava_cusparse.cpp | 542 ++++++++++++++++++ src/main/cpp/jni/cusparse/cujava_cusparse.hpp | 92 +++ .../jni/cusparse/cujava_cusparse_common.hpp | 37 ++ .../cpp/jni/runtime/cujava_runtime_common.hpp | 2 +- src/main/cpp/lib/libCuJavaCommonJNI.a | Bin 60032 -> 62280 bytes src/main/cpp/lib/libcujava_cusparse.so | Bin 0 -> 58136 bytes src/main/cpp/lib/libcujava_runtime.so | Bin 73848 -> 74272 bytes .../sysds/cujava/cusparse/CuJavaCusparse.java | 133 +++++ .../cusparse/cusparseConstSpMatDescr.java | 33 ++ .../cujava/cusparse/cusparseSpMatDescr.java | 4 + 14 files changed, 957 insertions(+), 2 deletions(-) create mode 100644 src/main/cpp/jni/cusparse/CMakeLists.txt create mode 100644 src/main/cpp/jni/cusparse/cujava_cusparse.hpp create mode 100644 src/main/cpp/jni/cusparse/cujava_cusparse_common.hpp create mode 100755 src/main/cpp/lib/libcujava_cusparse.so create mode 100644 src/main/java/org/apache/sysds/cujava/cusparse/cusparseConstSpMatDescr.java diff --git a/src/main/cpp/jni/CMakeLists.txt b/src/main/cpp/jni/CMakeLists.txt index fa359a7f46c..c76eef60cdf 100644 --- a/src/main/cpp/jni/CMakeLists.txt +++ b/src/main/cpp/jni/CMakeLists.txt @@ -22,7 +22,8 @@ cmake_minimum_required(VERSION 3.18) project(cujava_jni LANGUAGES CXX) -# Build the two subprojects +# Build the subprojects add_subdirectory(common) add_subdirectory(runtime) add_subdirectory(driver) +add_subdirectory(cusparse) diff --git a/src/main/cpp/jni/common/cujava_jni_utils.cpp b/src/main/cpp/jni/common/cujava_jni_utils.cpp index 36e5fa3046b..e6e64c632fb 100644 --- a/src/main/cpp/jni/common/cujava_jni_utils.cpp +++ b/src/main/cpp/jni/common/cujava_jni_utils.cpp @@ -221,3 +221,56 @@ char* toNativeCString(JNIEnv* env, jstring js, int* length) { } +bool allocNativeArrayFromJLongs(JNIEnv* env, jlongArray javaArr, size_t*& nativeArr, bool copyFromJava) { + if (javaArr == nullptr) { + nativeArr = nullptr; + return true; + } + jsize n = env->GetArrayLength(javaArr); + + size_t* tmp = new (std::nothrow) size_t[(size_t)n]; + if (!tmp) { + ThrowByName(env, "java/lang/OutOfMemoryError", "Out of memory during array creation"); + nativeArr = nullptr; + return false; + } + + if (copyFromJava) { + jlong* jptr = (jlong*)env->GetPrimitiveArrayCritical(javaArr, nullptr); + if (!jptr) { + delete[] tmp; nativeArr = nullptr; return false; + } + for (jsize i = 0; i < n; ++i) tmp[i] = (size_t)jptr[i]; + env->ReleasePrimitiveArrayCritical(javaArr, jptr, JNI_ABORT); // input-only + } + + nativeArr = tmp; + return true; +} + +bool commitAndFreeNativeArrayToJLongs(JNIEnv* env, size_t*& nativeArr, jlongArray javaArr, bool copyToJava) { + if (javaArr == nullptr) { + delete[] nativeArr; nativeArr = nullptr; return true; + } + if (copyToJava && nativeArr) { + jsize n = env->GetArrayLength(javaArr); + jlong* jptr = (jlong*)env->GetPrimitiveArrayCritical(javaArr, nullptr); + if (!jptr) { + delete[] nativeArr; nativeArr = nullptr; + return false; + } + for (jsize i = 0; i < n; ++i) jptr[i] = (jlong)nativeArr[i]; + env->ReleasePrimitiveArrayCritical(javaArr, jptr, 0); // commit + } + delete[] nativeArr; + nativeArr = nullptr; + return true; +} + +// Back-compat wrappers +bool initNative(JNIEnv* env, jlongArray javaArr, size_t*& nativeArr, bool fill) { + return allocNativeArrayFromJLongs(env, javaArr, nativeArr, fill); +} +bool releaseNative(JNIEnv* env, size_t*& nativeArr, jlongArray javaArr, bool writeBack) { + return commitAndFreeNativeArrayToJLongs(env, nativeArr, javaArr, writeBack); +} diff --git a/src/main/cpp/jni/common/cujava_jni_utils.hpp b/src/main/cpp/jni/common/cujava_jni_utils.hpp index 75c2c1f7177..179ba706a0c 100644 --- a/src/main/cpp/jni/common/cujava_jni_utils.hpp +++ b/src/main/cpp/jni/common/cujava_jni_utils.hpp @@ -35,6 +35,10 @@ bool setFieldBytes(JNIEnv* env, jobject obj, jfieldID fid, const jbyte* src, jsi bool setFieldInts (JNIEnv* env, jobject obj, jfieldID fid, const jint* src, jsize n); bool zeroFieldInts(JNIEnv* env, jobject obj, jfieldID fid); char* toNativeCString(JNIEnv* env, jstring js, int* length = nullptr); +bool allocNativeArrayFromJLongs(JNIEnv* env, jlongArray javaArr, size_t*& nativeArr, bool copyFromJava); +bool commitAndFreeNativeArrayToJLongs(JNIEnv* env, size_t*& nativeArr, jlongArray javaArr, bool copyToJava); +bool initNative(JNIEnv* env, jlongArray javaArr, size_t*& nativeArr, bool fill); +bool releaseNative(JNIEnv* env, size_t*& nativeArr, jlongArray javaArr, bool writeBack); // ---- Exceptions ---- diff --git a/src/main/cpp/jni/cusparse/CMakeLists.txt b/src/main/cpp/jni/cusparse/CMakeLists.txt new file mode 100644 index 00000000000..ab589ab9808 --- /dev/null +++ b/src/main/cpp/jni/cusparse/CMakeLists.txt @@ -0,0 +1,56 @@ +#------------------------------------------------------------- +# +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# +#------------------------------------------------------------- + + +cmake_minimum_required(VERSION 3.18) + +project(CuJavaCusparse LANGUAGES CXX) + +find_package(JNI REQUIRED) +find_package(CUDAToolkit REQUIRED) # for CUDA::cusparse + +add_library(CuJavaCusparse SHARED + cujava_cusparse.cpp +) + +set_target_properties(CuJavaCusparse PROPERTIES + CXX_STANDARD 11 + OUTPUT_NAME cujava_cusparse # -> libcujava_cusparse.so + LIBRARY_OUTPUT_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/../../lib + RUNTIME_OUTPUT_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/../../lib + ARCHIVE_OUTPUT_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}/../../lib +) + +target_include_directories(CuJavaCusparse + PRIVATE + ${JNI_INCLUDE_DIRS} + ${CUDAToolkit_INCLUDE_DIRS} + ${CMAKE_CURRENT_SOURCE_DIR} # headers in cusparse/ + ${CMAKE_CURRENT_SOURCE_DIR}/../common # if you include common headers +) + +target_link_libraries(CuJavaCusparse + PRIVATE + CuJavaCommonJNI + CUDA::cusparse + ${JNI_LIBRARIES} +) + diff --git a/src/main/cpp/jni/cusparse/cujava_cusparse.cpp b/src/main/cpp/jni/cusparse/cujava_cusparse.cpp index 042f3ce1f39..279b9df46f8 100644 --- a/src/main/cpp/jni/cusparse/cujava_cusparse.cpp +++ b/src/main/cpp/jni/cusparse/cujava_cusparse.cpp @@ -16,3 +16,545 @@ * specific language governing permissions and limitations * under the License. */ + + +#include "cujava_cusparse.hpp" +#include "cujava_cusparse_common.hpp" + + +JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM *jvm, void *reserved) { + JNIEnv *env = nullptr; + if (jvm->GetEnv((void **)&env, JNI_VERSION_1_4)) { + return JNI_ERR; + } + + // Only what we need so far + if (initJNIUtils(env) == JNI_ERR) return JNI_ERR; + if (initPointerUtils(env) == JNI_ERR) return JNI_ERR; + + return JNI_VERSION_1_4; +} + + + +JNIEXPORT void JNICALL JNI_OnUnload(JavaVM *vm, void *reserved) { +} + + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseSpGEMM_1copyNative + (JNIEnv *env, jclass, jobject handle, jint opA, jint opB, + jobject alpha, jobject matA, jobject matB, jobject beta, jobject matC, + jint computeType, jint alg, jobject spgemmDescr) { + if (!handle || !alpha || !matA || !matB || !beta || !matC || !spgemmDescr) { + ThrowByName(env, "java/lang/NullPointerException", "Null argument in cusparseSpGEMM_copy"); + return CUJAVA_INTERNAL_ERROR; + } + Logger::log(LOG_TRACE, "Executing cusparseSpGEMM_copy\n"); + + cusparseHandle_t h = (cusparseHandle_t)getNativePointerValue(env, handle); + cusparseOperation_t aOp = (cusparseOperation_t)opA; + cusparseOperation_t bOp = (cusparseOperation_t)opB; + PointerData* alphaPD = initPointerData(env, alpha); if (!alphaPD) return CUJAVA_INTERNAL_ERROR; + void* alphaPtr = alphaPD->getPointer(env); + + cusparseConstSpMatDescr_t A = (cusparseConstSpMatDescr_t)getNativePointerValue(env, matA); + cusparseConstSpMatDescr_t B = (cusparseConstSpMatDescr_t)getNativePointerValue(env, matB); + PointerData* betaPD = initPointerData(env, beta); if (!betaPD) { releasePointerData(env, alphaPD, JNI_ABORT); return CUJAVA_INTERNAL_ERROR; } + void* betaPtr = betaPD->getPointer(env); + + cusparseSpMatDescr_t C = (cusparseSpMatDescr_t)getNativePointerValue(env, matC); + cudaDataType ct = (cudaDataType)computeType; + cusparseSpGEMMAlg_t al = (cusparseSpGEMMAlg_t)alg; + cusparseSpGEMMDescr_t D = (cusparseSpGEMMDescr_t)getNativePointerValue(env, spgemmDescr); + + cusparseStatus_t st = cusparseSpGEMM_copy(h, aOp, bOp, alphaPtr, A, B, betaPtr, C, ct, al, D); + + // alpha/beta are inputs → no commit + if (!releasePointerData(env, alphaPD, JNI_ABORT)) return CUJAVA_INTERNAL_ERROR; + if (!releasePointerData(env, betaPD, JNI_ABORT)) return CUJAVA_INTERNAL_ERROR; + + return (jint)st; +} + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseGetMatIndexBaseNative(JNIEnv *env, jclass cls, jobject descrA) { + // Null-checks for non-primitive arguments + if (descrA == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'descrA' is null for cusparseGetMatIndexBase"); + return CUJAVA_INTERNAL_ERROR; + } + + Logger::log(LOG_TRACE, "Executing cusparseGetMatIndexBase(descrA=%p)\n", descrA); + + cusparseMatDescr_t descrA_native; + descrA_native = (cusparseMatDescr_t)getNativePointerValue(env, descrA); + cusparseIndexBase_t jniResult_native = cusparseGetMatIndexBase(descrA_native); + + // Return the result + jint jniResult = (jint)jniResult_native; + return jniResult; +} + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseCreateCsrNative + (JNIEnv *env, jclass cls, jobject spMatDescr, jlong rows, jlong cols, jlong nnz, jobject csrRowOffsets, + jobject csrColInd, jobject csrValues, jint csrRowOffsetsType, jint csrColIndType, jint idxBase, jint valueType) { + // Null-checks for non-primitive arguments + if (spMatDescr == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'spMatDescr' is null for cusparseCreateCsr"); + return CUJAVA_INTERNAL_ERROR; + } + + // Log message + Logger::log(LOG_TRACE, "Executing cusparseCreateCsr(spMatDescr=%p, rows=%ld, cols=%ld, nnz=%ld, csrRowOffsets=%p, csrColInd=%p, csrValues=%p, csrRowOffsetsType=%d, csrColIndType=%d, idxBase=%d, valueType=%d)\n", + spMatDescr, rows, cols, nnz, csrRowOffsets, csrColInd, csrValues, csrRowOffsetsType, csrColIndType, idxBase, valueType); + + // Native variable declarations + cusparseSpMatDescr_t spMatDescr_native; + int64_t rows_native = 0; + int64_t cols_native = 0; + int64_t nnz_native = 0; + void * csrRowOffsets_native = NULL; + void * csrColInd_native = NULL; + void * csrValues_native = NULL; + cusparseIndexType_t csrRowOffsetsType_native; + cusparseIndexType_t csrColIndType_native; + cusparseIndexBase_t idxBase_native; + cudaDataType valueType_native; + + // Obtain native variable values + rows_native = (int64_t)rows; + cols_native = (int64_t)cols; + nnz_native = (int64_t)nnz; + csrRowOffsets_native = (void *)getPointer(env, csrRowOffsets); + csrColInd_native = (void *)getPointer(env, csrColInd); + csrValues_native = (void *)getPointer(env, csrValues); + csrRowOffsetsType_native = (cusparseIndexType_t)csrRowOffsetsType; + csrColIndType_native = (cusparseIndexType_t)csrColIndType; + idxBase_native = (cusparseIndexBase_t)idxBase; + valueType_native = (cudaDataType)valueType; + + // Native function call + cusparseStatus_t jniResult_native = cusparseCreateCsr(&spMatDescr_native, rows_native, cols_native, nnz_native, csrRowOffsets_native, csrColInd_native, csrValues_native, csrRowOffsetsType_native, csrColIndType_native, idxBase_native, valueType_native); + + // Write back native variable values + setNativePointerValue(env, spMatDescr, (jlong)spMatDescr_native); + + // Return the result + jint jniResult = (jint)jniResult_native; + return jniResult; +} + + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseCreateDnVecNative(JNIEnv *env, jclass cls, jobject dnVecDescr, jlong size, jobject values, jint valueType) { + if (dnVecDescr == nullptr){ + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'dnVecDescr' is null for cusparseCreateDnVec"); + return CUJAVA_INTERNAL_ERROR; + } + if (values == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'values' is null for cusparseCreateDnVec"); + return CUJAVA_INTERNAL_ERROR; + } + + Logger::log(LOG_TRACE, "Executing cusparseCreateDnVec(dnVecDescr=%p, size=%ld, values=%p, valueType=%d)\n", + dnVecDescr, size, values, valueType); + + // Native variable declarations + cusparseDnVecDescr_t dnVecDescr_native; + int64_t size_native = 0; + void * values_native = NULL; + cudaDataType valueType_native; + + size_native = (int64_t)size; + values_native = (void *)getPointer(env, values); + valueType_native = (cudaDataType)valueType; + + // Native function call + cusparseStatus_t jniResult_native = cusparseCreateDnVec(&dnVecDescr_native, size_native, values_native, valueType_native); + setNativePointerValue(env, dnVecDescr, (jlong)dnVecDescr_native); + + // Return the result + jint jniResult = (jint)jniResult_native; + return jniResult; +} + + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseSpMV_1bufferSizeNative + (JNIEnv *env, jclass cls, jobject handle, jint opA, jobject alpha, jobject matA, jobject vecX, jobject beta, jobject vecY, jint computeType, jint alg, jlongArray bufferSize) { + if (handle == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'handle' is null for cusparseSpMV_bufferSize"); + return CUJAVA_INTERNAL_ERROR; + } + if (alpha == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'alpha' is null for cusparseSpMV_bufferSize"); + return CUJAVA_INTERNAL_ERROR; + } + if (matA == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'matA' is null for cusparseSpMV_bufferSize"); + return CUJAVA_INTERNAL_ERROR; + } + if (vecX == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'vecX' is null for cusparseSpMV_bufferSize"); + return CUJAVA_INTERNAL_ERROR; + } + if (beta == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'beta' is null for cusparseSpMV_bufferSize"); + return CUJAVA_INTERNAL_ERROR; + } + if (vecY == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'vecY' is null for cusparseSpMV_bufferSize"); + return CUJAVA_INTERNAL_ERROR; + } + if (bufferSize == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'bufferSize' is null for cusparseSpMV_bufferSize"); + return CUJAVA_INTERNAL_ERROR; + } + + Logger::log(LOG_TRACE, "Executing cusparseSpMV_bufferSize(handle=%p, opA=%d, alpha=%p, matA=%p, vecX=%p, beta=%p, vecY=%p, computeType=%d, alg=%d, bufferSize=%p)\n", + handle, opA, alpha, matA, vecX, beta, vecY, computeType, alg, bufferSize); + + // Native variable declarations + cusparseHandle_t handle_native; + cusparseOperation_t opA_native; + void * alpha_native = NULL; + cusparseConstSpMatDescr_t matA_native; + cusparseConstDnVecDescr_t vecX_native; + void * beta_native = NULL; + cusparseDnVecDescr_t vecY_native; + cudaDataType computeType_native; + cusparseSpMVAlg_t alg_native; + size_t * bufferSize_native = NULL; + + // Obtain native variable values + handle_native = (cusparseHandle_t)getNativePointerValue(env, handle); + opA_native = (cusparseOperation_t)opA; + PointerData *alpha_pointerData = initPointerData(env, alpha); + if (alpha_pointerData == nullptr) return CUJAVA_INTERNAL_ERROR; + + alpha_native = (void *)alpha_pointerData->getPointer(env); + matA_native = (cusparseConstSpMatDescr_t)getNativePointerValue(env, matA); + vecX_native = (cusparseConstDnVecDescr_t)getNativePointerValue(env, vecX); + PointerData *beta_pointerData = initPointerData(env, beta); + if (beta_pointerData == nullptr) return CUJAVA_INTERNAL_ERROR; + + beta_native = (void *)beta_pointerData->getPointer(env); + vecY_native = (cusparseDnVecDescr_t)getNativePointerValue(env, vecY); + computeType_native = (cudaDataType)computeType; + alg_native = (cusparseSpMVAlg_t)alg; + if (!initNative(env, bufferSize, bufferSize_native, true)) return CUJAVA_INTERNAL_ERROR; + + // Native function call + cusparseStatus_t jniResult_native = cusparseSpMV_bufferSize(handle_native, opA_native, alpha_native, matA_native, vecX_native, beta_native, vecY_native, computeType_native, alg_native, bufferSize_native); + + if (!releasePointerData(env, alpha_pointerData, JNI_ABORT)) return CUJAVA_INTERNAL_ERROR; + if (!releasePointerData(env, beta_pointerData, JNI_ABORT)) return CUJAVA_INTERNAL_ERROR; + if (!releaseNative(env, bufferSize_native, bufferSize, true)) return CUJAVA_INTERNAL_ERROR; + + // Return the result + jint jniResult = (jint)jniResult_native; + return jniResult; +} + + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseSpMVNative + (JNIEnv *env, jclass cls, jobject handle, jint opA, jobject alpha, jobject matA, jobject vecX, jobject beta, jobject vecY, jint computeType, jint alg, jobject externalBuffer) { + if (handle == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'handle' is null for cusparseSpMV"); + return CUJAVA_INTERNAL_ERROR; + } + if (alpha == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'alpha' is null for cusparseSpMV"); + return CUJAVA_INTERNAL_ERROR; + } + if (matA == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'matA' is null for cusparseSpMV"); + return CUJAVA_INTERNAL_ERROR; + } + if (vecX == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'vecX' is null for cusparseSpMV"); + return CUJAVA_INTERNAL_ERROR; + } + if (beta == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'beta' is null for cusparseSpMV"); + return CUJAVA_INTERNAL_ERROR; + } + if (vecY == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'vecY' is null for cusparseSpMV"); + return CUJAVA_INTERNAL_ERROR; + } + + Logger::log(LOG_TRACE, "Executing cusparseSpMV(handle=%p, opA=%d, alpha=%p, matA=%p, vecX=%p, beta=%p, vecY=%p, computeType=%d, alg=%d, externalBuffer=%p)\n", + handle, opA, alpha, matA, vecX, beta, vecY, computeType, alg, externalBuffer); + + // Native variable declarations + cusparseHandle_t handle_native; + cusparseOperation_t opA_native; + void * alpha_native = NULL; + cusparseConstSpMatDescr_t matA_native; + cusparseConstDnVecDescr_t vecX_native; + void * beta_native = NULL; + cusparseDnVecDescr_t vecY_native; + cudaDataType computeType_native; + cusparseSpMVAlg_t alg_native; + void * externalBuffer_native = NULL; + + // Obtain native variable values + handle_native = (cusparseHandle_t)getNativePointerValue(env, handle); + opA_native = (cusparseOperation_t)opA; + PointerData *alpha_pointerData = initPointerData(env, alpha); + if (alpha_pointerData == nullptr) { + return CUJAVA_INTERNAL_ERROR; + } + alpha_native = (void *)alpha_pointerData->getPointer(env); + matA_native = (cusparseConstSpMatDescr_t)getNativePointerValue(env, matA); + vecX_native = (cusparseConstDnVecDescr_t)getNativePointerValue(env, vecX); + PointerData *beta_pointerData = initPointerData(env, beta); + if (beta_pointerData == nullptr) { + return CUJAVA_INTERNAL_ERROR; + } + beta_native = (void *)beta_pointerData->getPointer(env); + vecY_native = (cusparseDnVecDescr_t)getNativePointerValue(env, vecY); + computeType_native = (cudaDataType)computeType; + alg_native = (cusparseSpMVAlg_t)alg; + externalBuffer_native = (void *)getPointer(env, externalBuffer); + + // Native function call + cusparseStatus_t jniResult_native = cusparseSpMV(handle_native, opA_native, alpha_native, matA_native, vecX_native, beta_native, vecY_native, computeType_native, alg_native, externalBuffer_native); + + if (!releasePointerData(env, alpha_pointerData, JNI_ABORT)) return CUJAVA_INTERNAL_ERROR; + if (!releasePointerData(env, beta_pointerData, JNI_ABORT)) return CUJAVA_INTERNAL_ERROR; + + // Return the result + jint jniResult = (jint)jniResult_native; + return jniResult; +} + + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseDestroyNative(JNIEnv *env, jclass cls, jobject handle) { + if (handle == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'handle' is null for cusparseDestroy"); + return CUJAVA_INTERNAL_ERROR; + } + + Logger::log(LOG_TRACE, "Executing cusparseDestroy(handle=%p)\n", handle); + + cusparseHandle_t handle_native; + handle_native = (cusparseHandle_t)getNativePointerValue(env, handle); + cusparseStatus_t jniResult_native = cusparseDestroy(handle_native); + + // Return the result + jint jniResult = (jint)jniResult_native; + return jniResult; +} + + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseDestroyDnVecNative(JNIEnv *env, jclass cls, jobject dnVecDescr) { + if (dnVecDescr == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'dnVecDescr' is null for cusparseDestroyDnVec"); + return CUJAVA_INTERNAL_ERROR; + } + Logger::log(LOG_TRACE, "Executing cusparseDestroyDnVec(dnVecDescr=%p)\n", dnVecDescr); + + cusparseConstDnVecDescr_t dnVecDescr_native; + dnVecDescr_native = (cusparseConstDnVecDescr_t)getNativePointerValue(env, dnVecDescr); + cusparseStatus_t jniResult_native = cusparseDestroyDnVec(dnVecDescr_native); + + // Return the result + jint jniResult = (jint)jniResult_native; + return jniResult; +} + + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseDestroyDnMatNative(JNIEnv *env, jclass cls, jobject dnMatDescr) { + if (dnMatDescr == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'dnMatDescr' is null for cusparseDestroyDnMat"); + return CUJAVA_INTERNAL_ERROR; + } + Logger::log(LOG_TRACE, "Executing cusparseDestroyDnMat(dnMatDescr=%p)\n", dnMatDescr); + + cusparseConstDnMatDescr_t dnMatDescr_native; + dnMatDescr_native = (cusparseConstDnMatDescr_t)getNativePointerValue(env, dnMatDescr); + cusparseStatus_t jniResult_native = cusparseDestroyDnMat(dnMatDescr_native); + + jint jniResult = (jint)jniResult_native; + return jniResult; +} + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseDestroySpMatNative(JNIEnv *env, jclass cls, jobject spMatDescr) { + if (spMatDescr == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'spMatDescr' is null for cusparseDestroySpMat"); + return CUJAVA_INTERNAL_ERROR; + } + Logger::log(LOG_TRACE, "Executing cusparseDestroySpMat(spMatDescr=%p)\n", spMatDescr); + + cusparseConstSpMatDescr_t spMatDescr_native; + spMatDescr_native = (cusparseConstSpMatDescr_t)getNativePointerValue(env, spMatDescr); + cusparseStatus_t jniResult_native = cusparseDestroySpMat(spMatDescr_native); + + jint jniResult = (jint)jniResult_native; + return jniResult; +} + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseSpMMNative +(JNIEnv *env, jclass cls, jobject handle, jint opA, jint opB, jobject alpha, jobject matA, jobject matB, jobject beta, jobject matC, jint computeType, jint alg, jobject externalBuffer) { + if (handle == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'handle' is null for cusparseSpMM"); + return CUJAVA_INTERNAL_ERROR; + } + if (alpha == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'alpha' is null for cusparseSpMM"); + return CUJAVA_INTERNAL_ERROR; + } + if (matA == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'matA' is null for cusparseSpMM"); + return CUJAVA_INTERNAL_ERROR; + } + if (matB == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'matB' is null for cusparseSpMM"); + return CUJAVA_INTERNAL_ERROR; + } + if (beta == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'beta' is null for cusparseSpMM"); + return CUJAVA_INTERNAL_ERROR; + } + if (matC == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'matC' is null for cusparseSpMM"); + return CUJAVA_INTERNAL_ERROR; + } + + Logger::log(LOG_TRACE, "Executing cusparseSpMM(handle=%p, opA=%d, opB=%d, alpha=%p, matA=%p, matB=%p, beta=%p, matC=%p, computeType=%d, alg=%d, externalBuffer=%p)\n", + handle, opA, opB, alpha, matA, matB, beta, matC, computeType, alg, externalBuffer); + + // Native variable declarations + cusparseHandle_t handle_native; + cusparseOperation_t opA_native; + cusparseOperation_t opB_native; + void * alpha_native = NULL; + cusparseConstSpMatDescr_t matA_native; + cusparseConstDnMatDescr_t matB_native; + void * beta_native = NULL; + cusparseDnMatDescr_t matC_native; + cudaDataType computeType_native; + cusparseSpMMAlg_t alg_native; + void * externalBuffer_native = NULL; + + handle_native = (cusparseHandle_t)getNativePointerValue(env, handle); + opA_native = (cusparseOperation_t)opA; + opB_native = (cusparseOperation_t)opB; + PointerData *alpha_pointerData = initPointerData(env, alpha); + if (alpha_pointerData == nullptr) { + return CUJAVA_INTERNAL_ERROR; + } + alpha_native = (void *)alpha_pointerData->getPointer(env); + matA_native = (cusparseConstSpMatDescr_t)getNativePointerValue(env, matA); + matB_native = (cusparseConstDnMatDescr_t)getNativePointerValue(env, matB); + PointerData *beta_pointerData = initPointerData(env, beta); + if (beta_pointerData == nullptr) { + return CUJAVA_INTERNAL_ERROR; + } + beta_native = (void *)beta_pointerData->getPointer(env); + matC_native = (cusparseDnMatDescr_t)getNativePointerValue(env, matC); + computeType_native = (cudaDataType)computeType; + alg_native = (cusparseSpMMAlg_t)alg; + externalBuffer_native = (void *)getPointer(env, externalBuffer); + + cusparseStatus_t jniResult_native = cusparseSpMM(handle_native, opA_native, opB_native, alpha_native, matA_native, + matB_native, beta_native, matC_native, computeType_native, alg_native, externalBuffer_native); + + if (!releasePointerData(env, alpha_pointerData, JNI_ABORT)) return CUJAVA_INTERNAL_ERROR; + if (!releasePointerData(env, beta_pointerData, JNI_ABORT)) return CUJAVA_INTERNAL_ERROR; + + jint jniResult = (jint)jniResult_native; + return jniResult; +} + + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseSpMM_1bufferSizeNative + (JNIEnv *env, jclass cls, jobject handle, jint opA, jint opB, jobject alpha, jobject matA, jobject matB, jobject beta, + jobject matC, jint computeType, jint alg, jlongArray bufferSize) { + if (handle == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'handle' is null for cusparseSpMM_bufferSize"); + return CUJAVA_INTERNAL_ERROR; + } + if (alpha == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'alpha' is null for cusparseSpMM_bufferSize"); + return CUJAVA_INTERNAL_ERROR; + } + if (matA == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'matA' is null for cusparseSpMM_bufferSize"); + return CUJAVA_INTERNAL_ERROR; + } + if (matB == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'matB' is null for cusparseSpMM_bufferSize"); + return CUJAVA_INTERNAL_ERROR; + } + if (beta == nullptr) + { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'beta' is null for cusparseSpMM_bufferSize"); + return CUJAVA_INTERNAL_ERROR; + } + if (matC == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'matC' is null for cusparseSpMM_bufferSize"); + return CUJAVA_INTERNAL_ERROR; + } + if (bufferSize == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'bufferSize' is null for cusparseSpMM_bufferSize"); + return CUJAVA_INTERNAL_ERROR; + } + + Logger::log(LOG_TRACE, "Executing cusparseSpMM_bufferSize(handle=%p, opA=%d, opB=%d, alpha=%p, matA=%p, matB=%p, beta=%p, matC=%p, computeType=%d, alg=%d, bufferSize=%p)\n", + handle, opA, opB, alpha, matA, matB, beta, matC, computeType, alg, bufferSize); + + cusparseHandle_t handle_native; + cusparseOperation_t opA_native; + cusparseOperation_t opB_native; + void * alpha_native = NULL; + cusparseConstSpMatDescr_t matA_native; + cusparseConstDnMatDescr_t matB_native; + void * beta_native = NULL; + cusparseDnMatDescr_t matC_native; + cudaDataType computeType_native; + cusparseSpMMAlg_t alg_native; + size_t * bufferSize_native = NULL; + + handle_native = (cusparseHandle_t)getNativePointerValue(env, handle); + opA_native = (cusparseOperation_t)opA; + opB_native = (cusparseOperation_t)opB; + PointerData *alpha_pointerData = initPointerData(env, alpha); + if (alpha_pointerData == nullptr) + { + return CUJAVA_INTERNAL_ERROR; + } + alpha_native = (void *)alpha_pointerData->getPointer(env); + matA_native = (cusparseConstSpMatDescr_t)getNativePointerValue(env, matA); + matB_native = (cusparseConstDnMatDescr_t)getNativePointerValue(env, matB); + PointerData *beta_pointerData = initPointerData(env, beta); + if (beta_pointerData == nullptr) { + return CUJAVA_INTERNAL_ERROR; + } + beta_native = (void *)beta_pointerData->getPointer(env); + matC_native = (cusparseDnMatDescr_t)getNativePointerValue(env, matC); + computeType_native = (cudaDataType)computeType; + alg_native = (cusparseSpMMAlg_t)alg; + if (!initNative(env, bufferSize, bufferSize_native, true)) return CUJAVA_INTERNAL_ERROR; + + cusparseStatus_t jniResult_native = cusparseSpMM_bufferSize(handle_native, opA_native, opB_native, alpha_native, + matA_native, matB_native, beta_native, matC_native, computeType_native, alg_native, bufferSize_native); + + if (!releasePointerData(env, alpha_pointerData, JNI_ABORT)) return CUJAVA_INTERNAL_ERROR; + if (!releasePointerData(env, beta_pointerData, JNI_ABORT)) return CUJAVA_INTERNAL_ERROR; + if (!releaseNative(env, bufferSize_native, bufferSize, true)) return CUJAVA_INTERNAL_ERROR; + + jint jniResult = (jint)jniResult_native; + return jniResult; +} diff --git a/src/main/cpp/jni/cusparse/cujava_cusparse.hpp b/src/main/cpp/jni/cusparse/cujava_cusparse.hpp new file mode 100644 index 00000000000..1592dcfd511 --- /dev/null +++ b/src/main/cpp/jni/cusparse/cujava_cusparse.hpp @@ -0,0 +1,92 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + + +#include + +#ifndef _Included_org_apache_sysds_cujava_cusparse_CuJavaCusparse +#define _Included_org_apache_sysds_cujava_cusparse_CuJavaCusparse +#ifdef __cplusplus +extern "C" { +#endif + +/* + * Class: org.apache.sysds.cujava.cusparse.CuJavaCusparse + * Methods: + * - cusparseSpGEMM_copyNative + * - cusparseGetMatIndexBase + * - cusparseCreateCsr + * - cusparseCreateDnVec + * - cusparseSpMV_bufferSize + * - cusparseSpMV + * - cusparseDestroy + * - cusparseDestroyDnVec + * - cusparseDestroyDnMat + * - cusparseDestroySpMat + * - cusparseSpMM + * - cusparseSpMM_bufferSize + */ + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseSpGEMM_1copyNative + (JNIEnv *env, jclass, jobject handle, jint opA, jint opB, + jobject alpha, jobject matA, jobject matB, jobject beta, jobject matC, + jint computeType, jint alg, jobject spgemmDescr); + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseGetMatIndexBaseNative + (JNIEnv *env, jclass cls, jobject descrA); + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseCreateCsrNative + (JNIEnv *env, jclass cls, jobject spMatDescr, jlong rows, jlong cols, jlong nnz, jobject csrRowOffsets, + jobject csrColInd, jobject csrValues, jint csrRowOffsetsType, jint csrColIndType, jint idxBase, jint valueType); + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseCreateDnVecNative + (JNIEnv *env, jclass cls, jobject dnVecDescr, jlong size, jobject values, jint valueType); + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseSpMV_1bufferSizeNative + (JNIEnv *env, jclass cls, jobject handle, jint opA, jobject alpha, jobject matA, jobject vecX, jobject beta, + jobject vecY, jint computeType, jint alg, jlongArray bufferSize); + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseSpMVNative + (JNIEnv *env, jclass cls, jobject handle, jint opA, jobject alpha, jobject matA, jobject vecX, jobject beta, + jobject vecY, jint computeType, jint alg, jobject externalBuffer); + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseDestroyNative + (JNIEnv *env, jclass cls, jobject handle); + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseDestroyDnVecNative + (JNIEnv *env, jclass cls, jobject dnVecDescr); + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseDestroyDnMatNative + (JNIEnv *env, jclass cls, jobject dnMatDescr); + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseDestroySpMatNative + (JNIEnv *env, jclass cls, jobject spMatDescr); + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseSpMMNative + (JNIEnv *env, jclass cls, jobject handle, jint opA, jint opB, jobject alpha, jobject matA, jobject matB, jobject beta, + jobject matC, jint computeType, jint alg, jobject externalBuffer); + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseSpMM_1bufferSizeNative + (JNIEnv *env, jclass cls, jobject handle, jint opA, jint opB, jobject alpha, jobject matA, jobject matB, jobject beta, + jobject matC, jint computeType, jint alg, jlongArray bufferSize); + +#ifdef __cplusplus +} +#endif +#endif diff --git a/src/main/cpp/jni/cusparse/cujava_cusparse_common.hpp b/src/main/cpp/jni/cusparse/cujava_cusparse_common.hpp new file mode 100644 index 00000000000..703e07871cb --- /dev/null +++ b/src/main/cpp/jni/cusparse/cujava_cusparse_common.hpp @@ -0,0 +1,37 @@ +/* + * Licensed to the Apache Software Foundation (ASF) under one + * or more contributor license agreements. See the NOTICE file + * distributed with this work for additional information + * regarding copyright ownership. The ASF licenses this file + * to you under the Apache License, Version 2.0 (the + * "License"); you may not use this file except in compliance + * with the License. You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, + * software distributed under the License is distributed on an + * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY + * KIND, either express or implied. See the License for the + * specific language governing permissions and limitations + * under the License. + */ + + +#ifndef CUJAVA_CUSPARSE_COMMON_HPP +#define CUJAVA_CUSPARSE_COMMON_HPP + +#include +#include +#include +#include + +#include "../common/cujava_logger.hpp" +#include "../common/cujava_jni_utils.hpp" +#include "../common/cujava_pointer_utils.hpp" + +#define CUJAVA_INTERNAL_ERROR 0x80000001 + + + +#endif // CUJAVA_CUSPARSE_COMMON_HPP diff --git a/src/main/cpp/jni/runtime/cujava_runtime_common.hpp b/src/main/cpp/jni/runtime/cujava_runtime_common.hpp index 4fae1eea18e..94e6265711d 100644 --- a/src/main/cpp/jni/runtime/cujava_runtime_common.hpp +++ b/src/main/cpp/jni/runtime/cujava_runtime_common.hpp @@ -22,7 +22,7 @@ #include #include -#include +#include #include "../common/cujava_logger.hpp" #include "../common/cujava_jni_utils.hpp" diff --git a/src/main/cpp/lib/libCuJavaCommonJNI.a b/src/main/cpp/lib/libCuJavaCommonJNI.a index 92d4364766a46123e3a6bd5f86d77ec52297f9c9..088843ce137ac944517e49efd04efef73a50f80c 100644 GIT binary patch delta 4011 zcmcgu3v5%@89u(Y6B}->oy76ASxH<lQk0vA?paq;m5y8O@w@vU%iWv`@d+q z;%gp9|D&R>w}7(y>G-nbu)>u;bldbY_drE;sG}p?vM3a3-_$C1cZW95?+$l9(irYq z*8?w_#UU@H%ZuVESggZOiBXZZ;`Q5Fp2LH#xDetC-A6e8;-?eEqMl?y%>h&Fn zp&`Gx@vnvIg~{yi|T{ z=@O;y6OYXoaSNo|JV4S;4+((P=fFDE_4)N5?6+zy39&n!qyNx)qBHHunnD1UynGqf6ZYZ z;SoF;zl+$%v2@a)<|}=tJS$eoE9F)4QNVj?i8Mi61Im*BVNB@2d?my$`{}HyzK+@6w zES*KnGF4IERn&_}Z)z1Ni`Q`^tG}gIoz4>)ov&g{{lKT+pCb>}CzY5V8Qo-82It$9 z;ECQ)L(4fSnox#6FzXd5u^ObdhNILf!P8^ZQe?~_oxxlwQkB?jtSVyFCZ#c~{LYNo z2(oNTv3#-(DZVBp&R@e6$Z;JZI>R&pGJLxC`m#Fpsz&igrpS+#7>^Y5Cr0Dr1sT#H ztIxHK(?_YN6gpl$bB$&;jv>D6wV|emPMM~CyEozsxA{6-JHy?ZeQSHW+q>5JLiAkw zTDn{Dl!v>>RRa5RD&Xy$z|fY$Bj!p4(N1ZzA*7A&p80}vH#b-C>@wF2zCp`ep=hU7 z7Rq;I$U>kmvrcH@{s_0$=h@~?BoCmw6CPauja32cm0R!!MPev}6lJHmPVnup$U;${ zb%9XMotz*P$%0Q7JaYx-T){SPB5`6&2aCmbLldgort3g*7l5xLADXAnfDO4B^XMyc zzqoP8k#Rj9SxuH|zcw}+Z<=BMbP=|lv!J7$6hUZ19$c87<85dDlgC}PUKe~mUG(-a zt3S>96qL>oy<3^JHqH7ptePSIaAQWUjjT;G?SerJ1QytxX59y`&k!MT&Vq-_PWGl* z55uPz`*RjMm}Wf+lZ!>^6-{d=9=aq3c^&&x2;LV=jF~_f$IBzBh#};ne2(mM*>0xn|DCDQo zXjw*V@RxFT;c|nMWH3Kz(EFkEkmxn;J$A!tbE+8HUe#lYo@QH$PKSO6867T~9);>y zR~uIv^wg%`P#e{2}fd&C0ZXL;1 z(ph0KdX>8@aLnzRek2_co#-+%QpYkKhK-`gg#`G4IL-7D9L2$IL92g_=rp|nw?xq% zXBm9(!DSyv9&y4inI>+5vS7aHJREh4c?p(sge@**!~y#~#d)>#Ortm%S2@`C!X*!q dN;fXb0SjE8U2Q)&H8s2fi@m;~M{E2q{Tmse%YFa= delta 2025 zcmcJQU1%It6vyw(?l!y0Y?4WK=k7$4ZUe3DM)$*nWM(%XyEbB_5u>dr#hRo6YfC@U z#)=3wO`oa|$?{jMU$BCdQY4|>qD4rt(udg8LXlXIy>-}y^KXYSITpyLe4D*47K5>F9*TGA(0(5-kg#(mo)9Y*%sAkM^U%$Ey_k4>-e--D~$wxukPA29331Q!osmeJlmW>TD9`C&0nhPSgQ;aor;2Q{p(m->OwQ|X&W~~ zCG?7VR2K`Ufl1aJLmw#ge=YfV~H9<*5dxv zB{4VAL4KDl4X<08>Q-^B&A=^7Q#iJN%#{$<*u1i$B;cZoE0%#5Z4HZ5(VwDxGN+4C z`_3-P=qQCbU7WT#EL-z;OI5^FVu93YQg@X2n$VNHvYL3Yx6N++W*g{9YFMAt{M$rE zGBGsbK$7F8t*NR94M_u^CpEK?Kryyj-rxvn>oJ?;=7tiQkW{3KKuPh+rV=_@hQpMy zJ*D9V+IPIfxe)^?uB^t@9H(zfHpR_HN&<(yv>+2r25}+93-L##>ePL@o#R}ah6g+7 zyz`lkVFfwkQM}aEkMFyVA|7yiE>pOU1MvX%rmH+vv@$T7ZdTv-A~M&i$2lov$K`oc z;dVNv{_Ld}(V&lCHL61)bk-lb4?pj|$n>F8ngrpiCjl zdGNa2@fGYe2eNYsV%!N;2? F{sW}Dq9*_V diff --git a/src/main/cpp/lib/libcujava_cusparse.so b/src/main/cpp/lib/libcujava_cusparse.so new file mode 100755 index 0000000000000000000000000000000000000000..0f9e1d5131d9e45b3e3bd398fee1963e066ecb00 GIT binary patch literal 58136 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 WSJ95bMWphVza}ZpwiK`=jsFYqeit49 literal 0 HcmV?d00001 diff --git a/src/main/cpp/lib/libcujava_runtime.so b/src/main/cpp/lib/libcujava_runtime.so index 3e5270ee3bf76bd4d3168c4d543f8cd95a7284b0..0728838893b5fc3923afcd07a9d96e5273f48b3a 100755 GIT binary patch literal 74272 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 MlF~dU)6D<>0JZPucmMzZ delta 22632 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 Date: Sat, 30 Aug 2025 20:40:40 +0200 Subject: [PATCH 50/57] next batch --- src/main/cpp/jni/cusparse/cujava_cusparse.cpp | 537 +++++++++++++++++- src/main/cpp/jni/cusparse/cujava_cusparse.hpp | 32 ++ src/main/cpp/lib/libcujava_cusparse.so | Bin 58136 -> 75608 bytes .../sysds/cujava/cusparse/CuJavaCusparse.java | 74 +++ 4 files changed, 638 insertions(+), 5 deletions(-) diff --git a/src/main/cpp/jni/cusparse/cujava_cusparse.cpp b/src/main/cpp/jni/cusparse/cujava_cusparse.cpp index 279b9df46f8..298ab90cab4 100644 --- a/src/main/cpp/jni/cusparse/cujava_cusparse.cpp +++ b/src/main/cpp/jni/cusparse/cujava_cusparse.cpp @@ -438,14 +438,14 @@ JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusp cusparseHandle_t handle_native; cusparseOperation_t opA_native; cusparseOperation_t opB_native; - void * alpha_native = NULL; + void * alpha_native = nullptr; cusparseConstSpMatDescr_t matA_native; cusparseConstDnMatDescr_t matB_native; - void * beta_native = NULL; + void * beta_native = nullptr; cusparseDnMatDescr_t matC_native; cudaDataType computeType_native; cusparseSpMMAlg_t alg_native; - void * externalBuffer_native = NULL; + void * externalBuffer_native = nullptr; handle_native = (cusparseHandle_t)getNativePointerValue(env, handle); opA_native = (cusparseOperation_t)opA; @@ -521,11 +521,11 @@ JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusp void * alpha_native = NULL; cusparseConstSpMatDescr_t matA_native; cusparseConstDnMatDescr_t matB_native; - void * beta_native = NULL; + void * beta_native = nullptr; cusparseDnMatDescr_t matC_native; cudaDataType computeType_native; cusparseSpMMAlg_t alg_native; - size_t * bufferSize_native = NULL; + size_t * bufferSize_native = nullptr; handle_native = (cusparseHandle_t)getNativePointerValue(env, handle); opA_native = (cusparseOperation_t)opA; @@ -558,3 +558,530 @@ JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusp jint jniResult = (jint)jniResult_native; return jniResult; } + + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseCreateDnMatNative + (JNIEnv *env, jclass cls, jobject dnMatDescr, jlong rows, jlong cols, jlong ld, jobject values, jint valueType, jint order) { + + if (dnMatDescr == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'dnMatDescr' is null for cusparseCreateDnMat"); + return CUJAVA_INTERNAL_ERROR; + } + if (values == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'values' is null for cusparseCreateDnMat"); + return CUJAVA_INTERNAL_ERROR; + } + + Logger::log(LOG_TRACE, "Executing cusparseCreateDnMat(dnMatDescr=%p, rows=%ld, cols=%ld, ld=%ld, values=%p, valueType=%d, order=%d)\n", + dnMatDescr, rows, cols, ld, values, valueType, order); + + cusparseDnMatDescr_t dnMatDescr_native; + int64_t rows_native = 0; + int64_t cols_native = 0; + int64_t ld_native = 0; + void * values_native = nullptr; + cudaDataType valueType_native; + cusparseOrder_t order_native; + + rows_native = (int64_t)rows; + cols_native = (int64_t)cols; + ld_native = (int64_t)ld; + values_native = (void *)getPointer(env, values); + valueType_native = (cudaDataType)valueType; + order_native = (cusparseOrder_t)order; + + cusparseStatus_t jniResult_native = cusparseCreateDnMat(&dnMatDescr_native, rows_native, cols_native, ld_native, + values_native, valueType_native, order_native); + setNativePointerValue(env, dnMatDescr, (jlong)dnMatDescr_native); + + jint jniResult = (jint)jniResult_native; + return jniResult; +} + + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseCsrSetPointersNative + (JNIEnv *env, jclass cls, jobject spMatDescr, jobject csrRowOffsets, jobject csrColInd, jobject csrValues) { + if (spMatDescr == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'spMatDescr' is null for cusparseCsrSetPointers"); + return CUJAVA_INTERNAL_ERROR; + } + if (csrRowOffsets == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'csrRowOffsets' is null for cusparseCsrSetPointers"); + return CUJAVA_INTERNAL_ERROR; + } + if (csrColInd == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'csrColInd' is null for cusparseCsrSetPointers"); + return CUJAVA_INTERNAL_ERROR; + } + if (csrValues == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'csrValues' is null for cusparseCsrSetPointers"); + return CUJAVA_INTERNAL_ERROR; + } + + Logger::log(LOG_TRACE, "Executing cusparseCsrSetPointers(spMatDescr=%p, csrRowOffsets=%p, csrColInd=%p, csrValues=%p)\n", + spMatDescr, csrRowOffsets, csrColInd, csrValues); + + cusparseSpMatDescr_t spMatDescr_native; + void * csrRowOffsets_native = nullptr; + void * csrColInd_native = nullptr; + void * csrValues_native = nullptr; + + spMatDescr_native = (cusparseSpMatDescr_t)getNativePointerValue(env, spMatDescr); + csrRowOffsets_native = (void *)getPointer(env, csrRowOffsets); + csrColInd_native = (void *)getPointer(env, csrColInd); + csrValues_native = (void *)getPointer(env, csrValues); + cusparseStatus_t jniResult_native = cusparseCsrSetPointers(spMatDescr_native, csrRowOffsets_native, csrColInd_native, csrValues_native); + + jint jniResult = (jint)jniResult_native; + return jniResult; +} + + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseCsr2cscEx2Native + (JNIEnv *env, jclass cls, jobject handle, jint m, jint n, jint nnz, jobject csrVal, jobject csrRowPtr, + jobject csrColInd, jobject cscVal, jobject cscColPtr, jobject cscRowInd, jint valType, jint copyValues, jint idxBase, jint alg, jobject buffer) { + if (handle == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'handle' is null for cusparseCsr2cscEx2"); + return CUJAVA_INTERNAL_ERROR; + } + + if (csrVal == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'csrVal' is null for cusparseCsr2cscEx2"); + return CUJAVA_INTERNAL_ERROR; + } + if (csrRowPtr == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'csrRowPtr' is null for cusparseCsr2cscEx2"); + return CUJAVA_INTERNAL_ERROR; + } + if (csrColInd == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'csrColInd' is null for cusparseCsr2cscEx2"); + return CUJAVA_INTERNAL_ERROR; + } + if (cscVal == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'cscVal' is null for cusparseCsr2cscEx2"); + return CUJAVA_INTERNAL_ERROR; + } + if (cscColPtr == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'cscColPtr' is null for cusparseCsr2cscEx2"); + return CUJAVA_INTERNAL_ERROR; + } + if (cscRowInd == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'cscRowInd' is null for cusparseCsr2cscEx2"); + return CUJAVA_INTERNAL_ERROR; + } + if (buffer == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'buffer' is null for cusparseCsr2cscEx2"); + return CUJAVA_INTERNAL_ERROR; + } + + Logger::log(LOG_TRACE, "Executing cusparseCsr2cscEx2(handle=%p, m=%d, n=%d, nnz=%d, csrVal=%p, csrRowPtr=%p, csrColInd=%p, cscVal=%p, cscColPtr=%p, cscRowInd=%p, valType=%d, copyValues=%d, idxBase=%d, alg=%d, buffer=%p)\n", + handle, m, n, nnz, csrVal, csrRowPtr, csrColInd, cscVal, cscColPtr, cscRowInd, valType, copyValues, idxBase, alg, buffer); + + cusparseHandle_t handle_native; + int m_native = 0; + int n_native = 0; + int nnz_native = 0; + void * csrVal_native = nullptr; + int * csrRowPtr_native = nullptr; + int * csrColInd_native = nullptr; + void * cscVal_native = nullptr; + int * cscColPtr_native = nullptr; + int * cscRowInd_native = nullptr; + cudaDataType valType_native; + cusparseAction_t copyValues_native; + cusparseIndexBase_t idxBase_native; + cusparseCsr2CscAlg_t alg_native; + void * buffer_native = nullptr; + + // Native arguments + handle_native = (cusparseHandle_t)getNativePointerValue(env, handle); + m_native = (int)m; + n_native = (int)n; + nnz_native = (int)nnz; + csrVal_native = (void *)getPointer(env, csrVal); + csrRowPtr_native = (int *)getPointer(env, csrRowPtr); + csrColInd_native = (int *)getPointer(env, csrColInd); + cscVal_native = (void *)getPointer(env, cscVal); + cscColPtr_native = (int *)getPointer(env, cscColPtr); + cscRowInd_native = (int *)getPointer(env, cscRowInd); + valType_native = (cudaDataType)valType; + copyValues_native = (cusparseAction_t)copyValues; + idxBase_native = (cusparseIndexBase_t)idxBase; + alg_native = (cusparseCsr2CscAlg_t)alg; + buffer_native = (void *)getPointer(env, buffer); + + cusparseStatus_t jniResult_native = cusparseCsr2cscEx2(handle_native, m_native, n_native, nnz_native, + csrVal_native, csrRowPtr_native, csrColInd_native, cscVal_native, cscColPtr_native, cscRowInd_native, + valType_native, copyValues_native, idxBase_native, alg_native, buffer_native); + + jint jniResult = (jint)jniResult_native; + return jniResult; +} + + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseCsr2cscEx2_1bufferSizeNative + (JNIEnv *env, jclass cls, jobject handle, jint m, jint n, jint nnz, jobject csrVal, jobject csrRowPtr, jobject csrColInd, + jobject cscVal, jobject cscColPtr, jobject cscRowInd, jint valType, jint copyValues, jint idxBase, jint alg, jlongArray bufferSize) { + + if (handle == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'handle' is null for cusparseCsr2cscEx2_bufferSize"); + return CUJAVA_INTERNAL_ERROR; + } + if (csrVal == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'csrVal' is null for cusparseCsr2cscEx2_bufferSize"); + return CUJAVA_INTERNAL_ERROR; + } + if (csrRowPtr == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'csrRowPtr' is null for cusparseCsr2cscEx2_bufferSize"); + return CUJAVA_INTERNAL_ERROR; + } + if (csrColInd == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'csrColInd' is null for cusparseCsr2cscEx2_bufferSize"); + return CUJAVA_INTERNAL_ERROR; + } + if (cscVal == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'cscVal' is null for cusparseCsr2cscEx2_bufferSize"); + return CUJAVA_INTERNAL_ERROR; + } + if (cscColPtr == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'cscColPtr' is null for cusparseCsr2cscEx2_bufferSize"); + return CUJAVA_INTERNAL_ERROR; + } + if (cscRowInd == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'cscRowInd' is null for cusparseCsr2cscEx2_bufferSize"); + return CUJAVA_INTERNAL_ERROR; + } + if (bufferSize == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'bufferSize' is null for cusparseCsr2cscEx2_bufferSize"); + return CUJAVA_INTERNAL_ERROR; + } + + Logger::log(LOG_TRACE, "Executing cusparseCsr2cscEx2_bufferSize(handle=%p, m=%d, n=%d, nnz=%d, csrVal=%p, csrRowPtr=%p, csrColInd=%p, cscVal=%p, cscColPtr=%p, cscRowInd=%p, valType=%d, copyValues=%d, idxBase=%d, alg=%d, bufferSize=%p)\n", + handle, m, n, nnz, csrVal, csrRowPtr, csrColInd, cscVal, cscColPtr, cscRowInd, valType, copyValues, idxBase, alg, bufferSize); + + // declare native arguments + cusparseHandle_t handle_native; + int m_native = 0; + int n_native = 0; + int nnz_native = 0; + void * csrVal_native = NULL; + int * csrRowPtr_native = NULL; + int * csrColInd_native = NULL; + void * cscVal_native = NULL; + int * cscColPtr_native = NULL; + int * cscRowInd_native = NULL; + cudaDataType valType_native; + cusparseAction_t copyValues_native; + cusparseIndexBase_t idxBase_native; + cusparseCsr2CscAlg_t alg_native; + size_t * bufferSize_native = NULL; + + // get Native arguments + handle_native = (cusparseHandle_t)getNativePointerValue(env, handle); + m_native = (int)m; + n_native = (int)n; + nnz_native = (int)nnz; + csrVal_native = (void *)getPointer(env, csrVal); + csrRowPtr_native = (int *)getPointer(env, csrRowPtr); + csrColInd_native = (int *)getPointer(env, csrColInd); + cscVal_native = (void *)getPointer(env, cscVal); + cscColPtr_native = (int *)getPointer(env, cscColPtr); + cscRowInd_native = (int *)getPointer(env, cscRowInd); + valType_native = (cudaDataType)valType; + copyValues_native = (cusparseAction_t)copyValues; + idxBase_native = (cusparseIndexBase_t)idxBase; + alg_native = (cusparseCsr2CscAlg_t)alg; + if (!initNative(env, bufferSize, bufferSize_native, true)) return CUJAVA_INTERNAL_ERROR; + + cusparseStatus_t jniResult_native = cusparseCsr2cscEx2_bufferSize + (handle_native, m_native, n_native, nnz_native, csrVal_native, csrRowPtr_native, csrColInd_native, cscVal_native, + cscColPtr_native, cscRowInd_native, valType_native, copyValues_native, idxBase_native, alg_native, bufferSize_native); + if (!releaseNative(env, bufferSize_native, bufferSize, true)) return CUJAVA_INTERNAL_ERROR; + + jint jniResult = (jint)jniResult_native; + return jniResult; +} + + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseDcsrgeam2Native + (JNIEnv *env, jclass cls, jobject handle, jint m, jint n, jobject alpha, jobject descrA, jint nnzA, jobject csrSortedValA, + jobject csrSortedRowPtrA, jobject csrSortedColIndA, jobject beta, jobject descrB, jint nnzB, jobject csrSortedValB, + jobject csrSortedRowPtrB, jobject csrSortedColIndB, jobject descrC, jobject csrSortedValC, jobject csrSortedRowPtrC, jobject csrSortedColIndC, jobject pBuffer) { + if (handle == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'handle' is null for cusparseDcsrgeam2"); + return CUJAVA_INTERNAL_ERROR; + } + if (alpha == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'alpha' is null for cusparseDcsrgeam2"); + return CUJAVA_INTERNAL_ERROR; + } + if (descrA == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'descrA' is null for cusparseDcsrgeam2"); + return CUJAVA_INTERNAL_ERROR; + } + // nnzA is primitive + if (csrSortedValA == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'csrSortedValA' is null for cusparseDcsrgeam2"); + return CUJAVA_INTERNAL_ERROR; + } + if (csrSortedRowPtrA == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'csrSortedRowPtrA' is null for cusparseDcsrgeam2"); + return CUJAVA_INTERNAL_ERROR; + } + if (csrSortedColIndA == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'csrSortedColIndA' is null for cusparseDcsrgeam2"); + return CUJAVA_INTERNAL_ERROR; + } + if (beta == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'beta' is null for cusparseDcsrgeam2"); + return CUJAVA_INTERNAL_ERROR; + } + if (descrB == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'descrB' is null for cusparseDcsrgeam2"); + return CUJAVA_INTERNAL_ERROR; + } + // nnzB is primitive + if (csrSortedValB == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'csrSortedValB' is null for cusparseDcsrgeam2"); + return CUJAVA_INTERNAL_ERROR; + } + if (csrSortedRowPtrB == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'csrSortedRowPtrB' is null for cusparseDcsrgeam2"); + return CUJAVA_INTERNAL_ERROR; + } + if (csrSortedColIndB == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'csrSortedColIndB' is null for cusparseDcsrgeam2"); + return CUJAVA_INTERNAL_ERROR; + } + if (descrC == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'descrC' is null for cusparseDcsrgeam2"); + return CUJAVA_INTERNAL_ERROR; + } + if (csrSortedValC == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'csrSortedValC' is null for cusparseDcsrgeam2"); + return CUJAVA_INTERNAL_ERROR; + } + if (csrSortedRowPtrC == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'csrSortedRowPtrC' is null for cusparseDcsrgeam2"); + return CUJAVA_INTERNAL_ERROR; + } + if (csrSortedColIndC == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'csrSortedColIndC' is null for cusparseDcsrgeam2"); + return CUJAVA_INTERNAL_ERROR; + } + if (pBuffer == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'pBuffer' is null for cusparseDcsrgeam2"); + return CUJAVA_INTERNAL_ERROR; + } + + // Log message + Logger::log(LOG_TRACE, "Executing cusparseDcsrgeam2(handle=%p, m=%d, n=%d, alpha=%p, descrA=%p, nnzA=%d, csrSortedValA=%p, csrSortedRowPtrA=%p, csrSortedColIndA=%p, beta=%p, descrB=%p, nnzB=%d, csrSortedValB=%p, csrSortedRowPtrB=%p, csrSortedColIndB=%p, descrC=%p, csrSortedValC=%p, csrSortedRowPtrC=%p, csrSortedColIndC=%p, pBuffer=%p)\n", + handle, m, n, alpha, descrA, nnzA, csrSortedValA, csrSortedRowPtrA, csrSortedColIndA, beta, descrB, nnzB, csrSortedValB, csrSortedRowPtrB, csrSortedColIndB, descrC, csrSortedValC, csrSortedRowPtrC, csrSortedColIndC, pBuffer); + + // Native variable declarations + cusparseHandle_t handle_native; + int m_native = 0; + int n_native = 0; + double * alpha_native = nullptr; + cusparseMatDescr_t descrA_native; + int nnzA_native = 0; + double * csrSortedValA_native = nullptr; + int * csrSortedRowPtrA_native = NULL; + int * csrSortedColIndA_native = NULL; + double * beta_native = NULL; + cusparseMatDescr_t descrB_native; + int nnzB_native = 0; + double * csrSortedValB_native = NULL; + int * csrSortedRowPtrB_native = NULL; + int * csrSortedColIndB_native = NULL; + cusparseMatDescr_t descrC_native; + double * csrSortedValC_native = NULL; + int * csrSortedRowPtrC_native = NULL; + int * csrSortedColIndC_native = NULL; + void * pBuffer_native = NULL; + + // Obtain native variable values + handle_native = (cusparseHandle_t)getNativePointerValue(env, handle); + m_native = (int)m; + n_native = (int)n; + PointerData *alpha_pointerData = initPointerData(env, alpha); + if (alpha_pointerData == nullptr) { + return CUJAVA_INTERNAL_ERROR; + } + alpha_native = (double *)alpha_pointerData->getPointer(env); + descrA_native = (cusparseMatDescr_t)getNativePointerValue(env, descrA); + nnzA_native = (int)nnzA; + csrSortedValA_native = (double *)getPointer(env, csrSortedValA); + csrSortedRowPtrA_native = (int *)getPointer(env, csrSortedRowPtrA); + csrSortedColIndA_native = (int *)getPointer(env, csrSortedColIndA); + PointerData *beta_pointerData = initPointerData(env, beta); + if (beta_pointerData == nullptr) { + return CUJAVA_INTERNAL_ERROR; + } + beta_native = (double *)beta_pointerData->getPointer(env); + descrB_native = (cusparseMatDescr_t)getNativePointerValue(env, descrB); + nnzB_native = (int)nnzB; + csrSortedValB_native = (double *)getPointer(env, csrSortedValB); + csrSortedRowPtrB_native = (int *)getPointer(env, csrSortedRowPtrB); + csrSortedColIndB_native = (int *)getPointer(env, csrSortedColIndB); + descrC_native = (cusparseMatDescr_t)getNativePointerValue(env, descrC); + csrSortedValC_native = (double *)getPointer(env, csrSortedValC); + csrSortedRowPtrC_native = (int *)getPointer(env, csrSortedRowPtrC); + csrSortedColIndC_native = (int *)getPointer(env, csrSortedColIndC); + pBuffer_native = (void *)getPointer(env, pBuffer); + + cusparseStatus_t jniResult_native = cusparseDcsrgeam2(handle_native, m_native, n_native, alpha_native, descrA_native, + nnzA_native, csrSortedValA_native, csrSortedRowPtrA_native, csrSortedColIndA_native, beta_native, descrB_native, + nnzB_native, csrSortedValB_native, csrSortedRowPtrB_native, csrSortedColIndB_native, descrC_native, csrSortedValC_native, + csrSortedRowPtrC_native, csrSortedColIndC_native, pBuffer_native); + + if (!releasePointerData(env, alpha_pointerData, JNI_ABORT)) return CUJAVA_INTERNAL_ERROR; + if (!releasePointerData(env, beta_pointerData, JNI_ABORT)) return CUJAVA_INTERNAL_ERROR; + + jint jniResult = (jint)jniResult_native; + return jniResult; +} + + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseDcsrgeam2_1bufferSizeExtNative + (JNIEnv *env, jclass cls, jobject handle, jint m, jint n, jobject alpha, jobject descrA, jint nnzA, jobject csrSortedValA, + jobject csrSortedRowPtrA, jobject csrSortedColIndA, jobject beta, jobject descrB, jint nnzB, jobject csrSortedValB, jobject csrSortedRowPtrB, + jobject csrSortedColIndB, jobject descrC, jobject csrSortedValC, jobject csrSortedRowPtrC, jobject csrSortedColIndC, jlongArray pBufferSizeInBytes) { + if (handle == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'handle' is null for cusparseDcsrgeam2_bufferSizeExt"); + return CUJAVA_INTERNAL_ERROR; + } + if (alpha == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'alpha' is null for cusparseDcsrgeam2_bufferSizeExt"); + return CUJAVA_INTERNAL_ERROR; + } + if (descrA == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'descrA' is null for cusparseDcsrgeam2_bufferSizeExt"); + return CUJAVA_INTERNAL_ERROR; + } + // nnzA is primitive + if (csrSortedValA == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'csrSortedValA' is null for cusparseDcsrgeam2_bufferSizeExt"); + return CUJAVA_INTERNAL_ERROR; + } + if (csrSortedRowPtrA == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'csrSortedRowPtrA' is null for cusparseDcsrgeam2_bufferSizeExt"); + return CUJAVA_INTERNAL_ERROR; + } + if (csrSortedColIndA == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'csrSortedColIndA' is null for cusparseDcsrgeam2_bufferSizeExt"); + return CUJAVA_INTERNAL_ERROR; + } + if (beta == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'beta' is null for cusparseDcsrgeam2_bufferSizeExt"); + return CUJAVA_INTERNAL_ERROR; + } + if (descrB == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'descrB' is null for cusparseDcsrgeam2_bufferSizeExt"); + return CUJAVA_INTERNAL_ERROR; + } + // nnzB is primitive + if (csrSortedValB == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'csrSortedValB' is null for cusparseDcsrgeam2_bufferSizeExt"); + return CUJAVA_INTERNAL_ERROR; + } + if (csrSortedRowPtrB == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'csrSortedRowPtrB' is null for cusparseDcsrgeam2_bufferSizeExt"); + return CUJAVA_INTERNAL_ERROR; + } + if (csrSortedColIndB == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'csrSortedColIndB' is null for cusparseDcsrgeam2_bufferSizeExt"); + return CUJAVA_INTERNAL_ERROR; + } + if (descrC == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'descrC' is null for cusparseDcsrgeam2_bufferSizeExt"); + return CUJAVA_INTERNAL_ERROR; + } + if (csrSortedValC == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'csrSortedValC' is null for cusparseDcsrgeam2_bufferSizeExt"); + return CUJAVA_INTERNAL_ERROR; + } + if (csrSortedRowPtrC == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'csrSortedRowPtrC' is null for cusparseDcsrgeam2_bufferSizeExt"); + return CUJAVA_INTERNAL_ERROR; + } + if (csrSortedColIndC == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'csrSortedColIndC' is null for cusparseDcsrgeam2_bufferSizeExt"); + return CUJAVA_INTERNAL_ERROR; + } + if (pBufferSizeInBytes == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'pBufferSizeInBytes' is null for cusparseDcsrgeam2_bufferSizeExt"); + return CUJAVA_INTERNAL_ERROR; + } + + Logger::log(LOG_TRACE, "Executing cusparseDcsrgeam2_bufferSizeExt(handle=%p, m=%d, n=%d, alpha=%p, descrA=%p, nnzA=%d, csrSortedValA=%p, csrSortedRowPtrA=%p, csrSortedColIndA=%p, beta=%p, descrB=%p, nnzB=%d, csrSortedValB=%p, csrSortedRowPtrB=%p, csrSortedColIndB=%p, descrC=%p, csrSortedValC=%p, csrSortedRowPtrC=%p, csrSortedColIndC=%p, pBufferSizeInBytes=%p)\n", + handle, m, n, alpha, descrA, nnzA, csrSortedValA, csrSortedRowPtrA, csrSortedColIndA, beta, descrB, nnzB, csrSortedValB, csrSortedRowPtrB, csrSortedColIndB, descrC, csrSortedValC, csrSortedRowPtrC, csrSortedColIndC, pBufferSizeInBytes); + + cusparseHandle_t handle_native; + int m_native = 0; + int n_native = 0; + double * alpha_native = NULL; + cusparseMatDescr_t descrA_native; + int nnzA_native = 0; + double * csrSortedValA_native = NULL; + int * csrSortedRowPtrA_native = NULL; + int * csrSortedColIndA_native = NULL; + double * beta_native = NULL; + cusparseMatDescr_t descrB_native; + int nnzB_native = 0; + double * csrSortedValB_native = NULL; + int * csrSortedRowPtrB_native = NULL; + int * csrSortedColIndB_native = NULL; + cusparseMatDescr_t descrC_native; + double * csrSortedValC_native = NULL; + int * csrSortedRowPtrC_native = NULL; + int * csrSortedColIndC_native = NULL; + size_t * pBufferSizeInBytes_native = NULL; + + handle_native = (cusparseHandle_t)getNativePointerValue(env, handle); + m_native = (int)m; + n_native = (int)n; + PointerData *alpha_pointerData = initPointerData(env, alpha); + if (alpha_pointerData == nullptr) { + return CUJAVA_INTERNAL_ERROR; + } + alpha_native = (double *)alpha_pointerData->getPointer(env); + descrA_native = (cusparseMatDescr_t)getNativePointerValue(env, descrA); + nnzA_native = (int)nnzA; + csrSortedValA_native = (double *)getPointer(env, csrSortedValA); + csrSortedRowPtrA_native = (int *)getPointer(env, csrSortedRowPtrA); + csrSortedColIndA_native = (int *)getPointer(env, csrSortedColIndA); + PointerData *beta_pointerData = initPointerData(env, beta); + if (beta_pointerData == nullptr) { + return CUJAVA_INTERNAL_ERROR; + } + beta_native = (double *)beta_pointerData->getPointer(env); + descrB_native = (cusparseMatDescr_t)getNativePointerValue(env, descrB); + nnzB_native = (int)nnzB; + csrSortedValB_native = (double *)getPointer(env, csrSortedValB); + csrSortedRowPtrB_native = (int *)getPointer(env, csrSortedRowPtrB); + csrSortedColIndB_native = (int *)getPointer(env, csrSortedColIndB); + descrC_native = (cusparseMatDescr_t)getNativePointerValue(env, descrC); + csrSortedValC_native = (double *)getPointer(env, csrSortedValC); + csrSortedRowPtrC_native = (int *)getPointer(env, csrSortedRowPtrC); + csrSortedColIndC_native = (int *)getPointer(env, csrSortedColIndC); + if (!initNative(env, pBufferSizeInBytes, pBufferSizeInBytes_native, true)) return CUJAVA_INTERNAL_ERROR; + + cusparseStatus_t jniResult_native = cusparseDcsrgeam2_bufferSizeExt(handle_native, m_native, n_native, alpha_native, + descrA_native, nnzA_native, csrSortedValA_native, csrSortedRowPtrA_native, csrSortedColIndA_native, beta_native, + descrB_native, nnzB_native, csrSortedValB_native, csrSortedRowPtrB_native, csrSortedColIndB_native, descrC_native, + csrSortedValC_native, csrSortedRowPtrC_native, csrSortedColIndC_native, pBufferSizeInBytes_native); + + if (!releasePointerData(env, alpha_pointerData, JNI_ABORT)) return CUJAVA_INTERNAL_ERROR; + if (!releasePointerData(env, beta_pointerData, JNI_ABORT)) return CUJAVA_INTERNAL_ERROR; + if (!releaseNative(env, pBufferSizeInBytes_native, pBufferSizeInBytes, true)) return CUJAVA_INTERNAL_ERROR; + + jint jniResult = (jint)jniResult_native; + return jniResult; +} diff --git a/src/main/cpp/jni/cusparse/cujava_cusparse.hpp b/src/main/cpp/jni/cusparse/cujava_cusparse.hpp index 1592dcfd511..d98480e3f36 100644 --- a/src/main/cpp/jni/cusparse/cujava_cusparse.hpp +++ b/src/main/cpp/jni/cusparse/cujava_cusparse.hpp @@ -41,6 +41,12 @@ extern "C" { * - cusparseDestroySpMat * - cusparseSpMM * - cusparseSpMM_bufferSize + * - cusparseCreateDnMat + * - cusparseCsrSetPointers + * - cusparseCsr2cscEx2 + * - cusparseCsr2cscEx2_bufferSize + * - cusparseDcsrgeam2 + * - cusparseDcsrgeam2_bufferSizeEx */ JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseSpGEMM_1copyNative @@ -86,6 +92,32 @@ JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusp (JNIEnv *env, jclass cls, jobject handle, jint opA, jint opB, jobject alpha, jobject matA, jobject matB, jobject beta, jobject matC, jint computeType, jint alg, jlongArray bufferSize); +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseCreateDnMatNative + (JNIEnv *env, jclass cls, jobject dnMatDescr, jlong rows, jlong cols, jlong ld, jobject values, jint valueType, jint order); + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseCsrSetPointersNative + (JNIEnv *env, jclass cls, jobject spMatDescr, jobject csrRowOffsets, jobject csrColInd, jobject csrValues); + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseCsr2cscEx2Native + (JNIEnv *env, jclass cls, jobject handle, jint m, jint n, jint nnz, jobject csrVal, jobject csrRowPtr, + jobject csrColInd, jobject cscVal, jobject cscColPtr, jobject cscRowInd, jint valType, jint copyValues, jint idxBase, jint alg, jobject buffer); + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseCsr2cscEx2_1bufferSizeNative + (JNIEnv *env, jclass cls, jobject handle, jint m, jint n, jint nnz, jobject csrVal, jobject csrRowPtr, jobject csrColInd, + jobject cscVal, jobject cscColPtr, jobject cscRowInd, jint valType, jint copyValues, jint idxBase, jint alg, jlongArray bufferSize); + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseDcsrgeam2Native + (JNIEnv *env, jclass cls, jobject handle, jint m, jint n, jobject alpha, jobject descrA, jint nnzA, jobject csrSortedValA, + jobject csrSortedRowPtrA, jobject csrSortedColIndA, jobject beta, jobject descrB, jint nnzB, jobject csrSortedValB, + jobject csrSortedRowPtrB, jobject csrSortedColIndB, jobject descrC, jobject csrSortedValC, jobject csrSortedRowPtrC, jobject csrSortedColIndC, jobject pBuffer); + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseDcsrgeam2_1bufferSizeExtNative + (JNIEnv *env, jclass cls, jobject handle, jint m, jint n, jobject alpha, jobject descrA, jint nnzA, jobject csrSortedValA, + jobject csrSortedRowPtrA, jobject csrSortedColIndA, jobject beta, jobject descrB, jint nnzB, jobject csrSortedValB, jobject csrSortedRowPtrB, + jobject csrSortedColIndB, jobject descrC, jobject csrSortedValC, jobject csrSortedRowPtrC, jobject csrSortedColIndC, jlongArray pBufferSizeInBytes); + #ifdef __cplusplus } #endif diff --git a/src/main/cpp/lib/libcujava_cusparse.so b/src/main/cpp/lib/libcujava_cusparse.so index 0f9e1d5131d9e45b3e3bd398fee1963e066ecb00..a558814ddba9f945d271994bf3bd1b20609d7a57 100755 GIT binary patch literal 75608 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 aTSrt`FI7An>usR&ohL+<))pGNcK;82BX+U? diff --git a/src/main/java/org/apache/sysds/cujava/cusparse/CuJavaCusparse.java b/src/main/java/org/apache/sysds/cujava/cusparse/CuJavaCusparse.java index d58920900da..34be188ee8c 100644 --- a/src/main/java/org/apache/sysds/cujava/cusparse/CuJavaCusparse.java +++ b/src/main/java/org/apache/sysds/cujava/cusparse/CuJavaCusparse.java @@ -153,4 +153,78 @@ private static native int cusparseSpMM_bufferSizeNative(cusparseHandle handle, i cusparseConstSpMatDescr matA, cusparseConstDnMatDescr matB, Pointer beta, cusparseDnMatDescr matC, int computeType, int alg, long[] bufferSize); + public static int cusparseCreateDnMat(cusparseDnMatDescr dnMatDescr, long rows, long cols, long ld, Pointer values, + int valueType, int order) { + return checkCusparseStatus(cusparseCreateDnMatNative(dnMatDescr, rows, cols, ld, values, valueType, order)); + } + + private static native int cusparseCreateDnMatNative(cusparseDnMatDescr dnMatDescr, long rows, long cols, long ld, + Pointer values, int valueType, int order); + + public static int cusparseCsrSetPointers(cusparseSpMatDescr spMatDescr, Pointer csrRowOffsets, Pointer csrColInd, + Pointer csrValues) { + return checkCusparseStatus(cusparseCsrSetPointersNative(spMatDescr, csrRowOffsets, csrColInd, csrValues)); + } + + private static native int cusparseCsrSetPointersNative(cusparseSpMatDescr spMatDescr, Pointer csrRowOffsets, + Pointer csrColInd, Pointer csrValues); + + public static int cusparseCsr2cscEx2(cusparseHandle handle, int m, int n, int nnz, Pointer csrVal, + Pointer csrRowPtr, Pointer csrColInd, Pointer cscVal, Pointer cscColPtr, Pointer cscRowInd, int valType, + int copyValues, int idxBase, int alg, Pointer buffer) { + return checkCusparseStatus( + cusparseCsr2cscEx2Native(handle, m, n, nnz, csrVal, csrRowPtr, csrColInd, cscVal, cscColPtr, cscRowInd, + valType, copyValues, idxBase, alg, buffer)); + } + + private static native int cusparseCsr2cscEx2Native(cusparseHandle handle, int m, int n, int nnz, Pointer csrVal, + Pointer csrRowPtr, Pointer csrColInd, Pointer cscVal, Pointer cscColPtr, Pointer cscRowInd, int valType, + int copyValues, int idxBase, int alg, Pointer buffer); + + public static int cusparseCsr2cscEx2_bufferSize(cusparseHandle handle, int m, int n, int nnz, Pointer csrVal, + Pointer csrRowPtr, Pointer csrColInd, Pointer cscVal, Pointer cscColPtr, Pointer cscRowInd, int valType, + int copyValues, int idxBase, int alg, long[] bufferSize) { + return checkCusparseStatus( + cusparseCsr2cscEx2_bufferSizeNative(handle, m, n, nnz, csrVal, csrRowPtr, csrColInd, cscVal, cscColPtr, + cscRowInd, valType, copyValues, idxBase, alg, bufferSize)); + } + + private static native int cusparseCsr2cscEx2_bufferSizeNative(cusparseHandle handle, int m, int n, int nnz, + Pointer csrVal, Pointer csrRowPtr, Pointer csrColInd, Pointer cscVal, Pointer cscColPtr, Pointer cscRowInd, + int valType, int copyValues, int idxBase, int alg, long[] bufferSize); + + public static int cusparseDcsrgeam2(cusparseHandle handle, int m, int n, Pointer alpha, cusparseMatDescr descrA, + int nnzA, Pointer csrSortedValA, Pointer csrSortedRowPtrA, Pointer csrSortedColIndA, Pointer beta, + cusparseMatDescr descrB, int nnzB, Pointer csrSortedValB, Pointer csrSortedRowPtrB, Pointer csrSortedColIndB, + cusparseMatDescr descrC, Pointer csrSortedValC, Pointer csrSortedRowPtrC, Pointer csrSortedColIndC, + Pointer pBuffer) { + return checkCusparseStatus( + cusparseDcsrgeam2Native(handle, m, n, alpha, descrA, nnzA, csrSortedValA, csrSortedRowPtrA, + csrSortedColIndA, beta, descrB, nnzB, csrSortedValB, csrSortedRowPtrB, csrSortedColIndB, descrC, + csrSortedValC, csrSortedRowPtrC, csrSortedColIndC, pBuffer)); + } + + private static native int cusparseDcsrgeam2Native(cusparseHandle handle, int m, int n, Pointer alpha, + cusparseMatDescr descrA, int nnzA, Pointer csrSortedValA, Pointer csrSortedRowPtrA, Pointer csrSortedColIndA, + Pointer beta, cusparseMatDescr descrB, int nnzB, Pointer csrSortedValB, Pointer csrSortedRowPtrB, + Pointer csrSortedColIndB, cusparseMatDescr descrC, Pointer csrSortedValC, Pointer csrSortedRowPtrC, + Pointer csrSortedColIndC, Pointer pBuffer); + + public static int cusparseDcsrgeam2_bufferSizeExt(cusparseHandle handle, int m, int n, Pointer alpha, + cusparseMatDescr descrA, int nnzA, Pointer csrSortedValA, Pointer csrSortedRowPtrA, Pointer csrSortedColIndA, + Pointer beta, cusparseMatDescr descrB, int nnzB, Pointer csrSortedValB, Pointer csrSortedRowPtrB, + Pointer csrSortedColIndB, cusparseMatDescr descrC, Pointer csrSortedValC, Pointer csrSortedRowPtrC, + Pointer csrSortedColIndC, long[] pBufferSizeInBytes) { + return checkCusparseStatus( + cusparseDcsrgeam2_bufferSizeExtNative(handle, m, n, alpha, descrA, nnzA, csrSortedValA, csrSortedRowPtrA, + csrSortedColIndA, beta, descrB, nnzB, csrSortedValB, csrSortedRowPtrB, csrSortedColIndB, descrC, + csrSortedValC, csrSortedRowPtrC, csrSortedColIndC, pBufferSizeInBytes)); + } + + private static native int cusparseDcsrgeam2_bufferSizeExtNative(cusparseHandle handle, int m, int n, Pointer alpha, + cusparseMatDescr descrA, int nnzA, Pointer csrSortedValA, Pointer csrSortedRowPtrA, Pointer csrSortedColIndA, + Pointer beta, cusparseMatDescr descrB, int nnzB, Pointer csrSortedValB, Pointer csrSortedRowPtrB, + Pointer csrSortedColIndB, cusparseMatDescr descrC, Pointer csrSortedValC, Pointer csrSortedRowPtrC, + Pointer csrSortedColIndC, long[] pBufferSizeInBytes); + } From d981d2c3d1ef2eba7d91861d96733a47a0ae7e9a Mon Sep 17 00:00:00 2001 From: ReneEnjilian Date: Sun, 31 Aug 2025 01:57:43 +0200 Subject: [PATCH 51/57] next batch --- src/main/cpp/jni/cusparse/CMakeLists.txt | 1 + src/main/cpp/jni/cusparse/cujava_cusparse.cpp | 265 ++++++++++++++++++ src/main/cpp/jni/cusparse/cujava_cusparse.hpp | 45 +++ src/main/cpp/lib/libcujava_cusparse.so | Bin 75608 -> 80904 bytes .../sysds/cujava/cusparse/CuJavaCusparse.java | 49 ++++ 5 files changed, 360 insertions(+) diff --git a/src/main/cpp/jni/cusparse/CMakeLists.txt b/src/main/cpp/jni/cusparse/CMakeLists.txt index ab589ab9808..2b728bd0da4 100644 --- a/src/main/cpp/jni/cusparse/CMakeLists.txt +++ b/src/main/cpp/jni/cusparse/CMakeLists.txt @@ -51,6 +51,7 @@ target_link_libraries(CuJavaCusparse PRIVATE CuJavaCommonJNI CUDA::cusparse + CUDA::cudart # needed for cudaDeviceSynchronize() ${JNI_LIBRARIES} ) diff --git a/src/main/cpp/jni/cusparse/cujava_cusparse.cpp b/src/main/cpp/jni/cusparse/cujava_cusparse.cpp index 298ab90cab4..938fbd298c0 100644 --- a/src/main/cpp/jni/cusparse/cujava_cusparse.cpp +++ b/src/main/cpp/jni/cusparse/cujava_cusparse.cpp @@ -1085,3 +1085,268 @@ JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusp jint jniResult = (jint)jniResult_native; return jniResult; } + + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseSparseToDenseNative + (JNIEnv *env, jclass cls, jobject handle, jobject matA, jobject matB, jint alg, jobject externalBuffer) { + + if (handle == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'handle' is null for cusparseSparseToDense"); + return CUJAVA_INTERNAL_ERROR; + } + if (matA == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'matA' is null for cusparseSparseToDense"); + return CUJAVA_INTERNAL_ERROR; + } + if (matB == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'matB' is null for cusparseSparseToDense"); + return CUJAVA_INTERNAL_ERROR; + } + + Logger::log(LOG_TRACE, "Executing cusparseSparseToDense(handle=%p, matA=%p, matB=%p, alg=%d, externalBuffer=%p)\n", + handle, matA, matB, alg, externalBuffer); + + cusparseHandle_t handle_native; + cusparseConstSpMatDescr_t matA_native; + cusparseDnMatDescr_t matB_native; + cusparseSparseToDenseAlg_t alg_native; + void * externalBuffer_native = NULL; + + handle_native = (cusparseHandle_t)getNativePointerValue(env, handle); + matA_native = (cusparseConstSpMatDescr_t)getNativePointerValue(env, matA); + matB_native = (cusparseDnMatDescr_t)getNativePointerValue(env, matB); + alg_native = (cusparseSparseToDenseAlg_t)alg; + externalBuffer_native = (void *)getPointer(env, externalBuffer); + + cusparseStatus_t jniResult_native = cusparseSparseToDense(handle_native, matA_native, matB_native, alg_native, externalBuffer_native); + + jint jniResult = (jint)jniResult_native; + return jniResult; +} + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseSparseToDense_1bufferSizeNative + (JNIEnv *env, jclass cls, jobject handle, jobject matA, jobject matB, jint alg, jlongArray bufferSize) { + if (handle == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'handle' is null for cusparseSparseToDense_bufferSize"); + return CUJAVA_INTERNAL_ERROR; + } + if (matA == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'matA' is null for cusparseSparseToDense_bufferSize"); + return CUJAVA_INTERNAL_ERROR; + } + if (matB == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'matB' is null for cusparseSparseToDense_bufferSize"); + return CUJAVA_INTERNAL_ERROR; + } + if (bufferSize == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'bufferSize' is null for cusparseSparseToDense_bufferSize"); + return CUJAVA_INTERNAL_ERROR; + } + + Logger::log(LOG_TRACE, "Executing cusparseSparseToDense_bufferSize(handle=%p, matA=%p, matB=%p, alg=%d, bufferSize=%p)\n", + handle, matA, matB, alg, bufferSize); + + cusparseHandle_t handle_native; + cusparseConstSpMatDescr_t matA_native; + cusparseDnMatDescr_t matB_native; + cusparseSparseToDenseAlg_t alg_native; + size_t * bufferSize_native = NULL; + + handle_native = (cusparseHandle_t)getNativePointerValue(env, handle); + matA_native = (cusparseConstSpMatDescr_t)getNativePointerValue(env, matA); + matB_native = (cusparseDnMatDescr_t)getNativePointerValue(env, matB); + alg_native = (cusparseSparseToDenseAlg_t)alg; + if (!initNative(env, bufferSize, bufferSize_native, true)) return CUJAVA_INTERNAL_ERROR; + + cusparseStatus_t jniResult_native = cusparseSparseToDense_bufferSize(handle_native, matA_native, matB_native, alg_native, bufferSize_native); + + if (!releaseNative(env, bufferSize_native, bufferSize, true)) return CUJAVA_INTERNAL_ERROR; + + jint jniResult = (jint)jniResult_native; + return jniResult; +} + + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseDenseToSparse_1bufferSizeNative + (JNIEnv *env, jclass cls, jobject handle, jobject matA, jobject matB, jint alg, jlongArray bufferSize) { + // Null-checks for non-primitive arguments + if (handle == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'handle' is null for cusparseDenseToSparse_bufferSize"); + return CUJAVA_INTERNAL_ERROR; + } + if (matA == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'matA' is null for cusparseDenseToSparse_bufferSize"); + return CUJAVA_INTERNAL_ERROR; + } + if (matB == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'matB' is null for cusparseDenseToSparse_bufferSize"); + return CUJAVA_INTERNAL_ERROR; + } + if (bufferSize == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'bufferSize' is null for cusparseDenseToSparse_bufferSize"); + return CUJAVA_INTERNAL_ERROR; + } + + Logger::log(LOG_TRACE, "Executing cusparseDenseToSparse_bufferSize(handle=%p, matA=%p, matB=%p, alg=%d, bufferSize=%p)\n", handle, matA, matB, alg, bufferSize); + + cusparseHandle_t handle_native; + cusparseConstDnMatDescr_t matA_native; + cusparseSpMatDescr_t matB_native; + cusparseDenseToSparseAlg_t alg_native; + size_t * bufferSize_native = nullptr; + + handle_native = (cusparseHandle_t)getNativePointerValue(env, handle); + matA_native = (cusparseConstDnMatDescr_t)getNativePointerValue(env, matA); + matB_native = (cusparseSpMatDescr_t)getNativePointerValue(env, matB); + alg_native = (cusparseDenseToSparseAlg_t)alg; + if (!initNative(env, bufferSize, bufferSize_native, true)) return CUJAVA_INTERNAL_ERROR; + + cusparseStatus_t jniResult_native = cusparseDenseToSparse_bufferSize(handle_native, matA_native, matB_native, alg_native, bufferSize_native); + + if (!releaseNative(env, bufferSize_native, bufferSize, true)) return CUJAVA_INTERNAL_ERROR; + + jint jniResult = (jint)jniResult_native; + return jniResult; +} + + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseDenseToSparse_1analysisNative + (JNIEnv *env, jclass cls, jobject handle, jobject matA, jobject matB, jint alg, jobject externalBuffer) { + if (handle == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'handle' is null for cusparseDenseToSparse_analysis"); + return CUJAVA_INTERNAL_ERROR; + } + if (matA == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'matA' is null for cusparseDenseToSparse_analysis"); + return CUJAVA_INTERNAL_ERROR; + } + if (matB == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'matB' is null for cusparseDenseToSparse_analysis"); + return CUJAVA_INTERNAL_ERROR; + } + + Logger::log(LOG_TRACE, "Executing cusparseDenseToSparse_analysis(handle=%p, matA=%p, matB=%p, alg=%d, externalBuffer=%p)\n", + handle, matA, matB, alg, externalBuffer); + + cusparseHandle_t handle_native; + cusparseConstDnMatDescr_t matA_native; + cusparseSpMatDescr_t matB_native; + cusparseDenseToSparseAlg_t alg_native; + void * externalBuffer_native = NULL; + + handle_native = (cusparseHandle_t)getNativePointerValue(env, handle); + matA_native = (cusparseConstDnMatDescr_t)getNativePointerValue(env, matA); + matB_native = (cusparseSpMatDescr_t)getNativePointerValue(env, matB); + alg_native = (cusparseDenseToSparseAlg_t)alg; + externalBuffer_native = (void *)getPointer(env, externalBuffer); + + cusparseStatus_t jniResult_native = cusparseDenseToSparse_analysis(handle_native, matA_native, matB_native, alg_native, externalBuffer_native); + + jint jniResult = (jint)jniResult_native; + return jniResult; +} + + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseDenseToSparse_1convertNative + (JNIEnv *env, jclass cls, jobject handle, jobject matA, jobject matB, jint alg, jobject externalBuffer) { + if (handle == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'handle' is null for cusparseDenseToSparse_convert"); + return CUJAVA_INTERNAL_ERROR; + } + if (matA == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'matA' is null for cusparseDenseToSparse_convert"); + return CUJAVA_INTERNAL_ERROR; + } + if (matB == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'matB' is null for cusparseDenseToSparse_convert"); + return CUJAVA_INTERNAL_ERROR; + } + + Logger::log(LOG_TRACE, "Executing cusparseDenseToSparse_convert(handle=%p, matA=%p, matB=%p, alg=%d, externalBuffer=%p)\n", + handle, matA, matB, alg, externalBuffer); + + cusparseHandle_t handle_native; + cusparseConstDnMatDescr_t matA_native; + cusparseSpMatDescr_t matB_native; + cusparseDenseToSparseAlg_t alg_native; + void * externalBuffer_native = nullptr; + + handle_native = (cusparseHandle_t)getNativePointerValue(env, handle); + matA_native = (cusparseConstDnMatDescr_t)getNativePointerValue(env, matA); + matB_native = (cusparseSpMatDescr_t)getNativePointerValue(env, matB); + alg_native = (cusparseDenseToSparseAlg_t)alg; + externalBuffer_native = (void *)getPointer(env, externalBuffer); + + cusparseStatus_t jniResult_native = cusparseDenseToSparse_convert(handle_native, matA_native, matB_native, alg_native, externalBuffer_native); + + jint jniResult = (jint)jniResult_native; + return jniResult; +} + + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseDnnzNative + (JNIEnv *env, jclass cls, jobject handle, jint dirA, jint m, jint n, jobject descrA, jobject A, jint lda, jobject nnzPerRowCol, jobject nnzTotalDevHostPtr) { + if (handle == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'handle' is null for cusparseDnnz"); + return CUJAVA_INTERNAL_ERROR; + } + if (descrA == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'descrA' is null for cusparseDnnz"); + return CUJAVA_INTERNAL_ERROR; + } + if (A == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'A' is null for cusparseDnnz"); + return CUJAVA_INTERNAL_ERROR; + } + if (nnzPerRowCol == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'nnzPerRowCol' is null for cusparseDnnz"); + return CUJAVA_INTERNAL_ERROR; + } + if (nnzTotalDevHostPtr == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'nnzTotalDevHostPtr' is null for cusparseDnnz"); + return CUJAVA_INTERNAL_ERROR; + } + + Logger::log(LOG_TRACE, "Executing cusparseDnnz(handle=%p, dirA=%d, m=%d, n=%d, descrA=%p, A=%p, lda=%d, nnzPerRowCol=%p, nnzTotalDevHostPtr=%p)\n", + handle, dirA, m, n, descrA, A, lda, nnzPerRowCol, nnzTotalDevHostPtr); + + cusparseHandle_t handle_native; + cusparseDirection_t dirA_native; + int m_native = 0; + int n_native = 0; + cusparseMatDescr_t descrA_native; + double * A_native = NULL; + int lda_native = 0; + int * nnzPerRowCol_native = NULL; + int * nnzTotalDevHostPtr_native = NULL; + + handle_native = (cusparseHandle_t)getNativePointerValue(env, handle); + dirA_native = (cusparseDirection_t)dirA; + m_native = (int)m; + n_native = (int)n; + descrA_native = (cusparseMatDescr_t)getNativePointerValue(env, descrA); + A_native = (double *)getPointer(env, A); + lda_native = (int)lda; + nnzPerRowCol_native = (int *)getPointer(env, nnzPerRowCol); + PointerData *nnzTotalDevHostPtr_pointerData = initPointerData(env, nnzTotalDevHostPtr); + if (nnzTotalDevHostPtr_pointerData == nullptr) { + return CUJAVA_INTERNAL_ERROR; + } + nnzTotalDevHostPtr_native = (int *)nnzTotalDevHostPtr_pointerData->getPointer(env); + + cusparseStatus_t jniResult_native = cusparseDnnz(handle_native, dirA_native, m_native, n_native, descrA_native, A_native, lda_native, nnzPerRowCol_native, nnzTotalDevHostPtr_native); + + if (!isPointerBackedByNativeMemory(env, nnzTotalDevHostPtr)) { + cudaDeviceSynchronize(); + } + if (!releasePointerData(env, nnzTotalDevHostPtr_pointerData, 0)) return CUJAVA_INTERNAL_ERROR; + + jint jniResult = (jint)jniResult_native; + return jniResult; +} diff --git a/src/main/cpp/jni/cusparse/cujava_cusparse.hpp b/src/main/cpp/jni/cusparse/cujava_cusparse.hpp index d98480e3f36..0ad90b00b73 100644 --- a/src/main/cpp/jni/cusparse/cujava_cusparse.hpp +++ b/src/main/cpp/jni/cusparse/cujava_cusparse.hpp @@ -47,43 +47,60 @@ extern "C" { * - cusparseCsr2cscEx2_bufferSize * - cusparseDcsrgeam2 * - cusparseDcsrgeam2_bufferSizeEx + * - cusparseSparseToDense + * - cusparseSparseToDense_bufferSize + * - cusparseDenseToSparse_bufferSize + * - cusparseDenseToSparse_analysis + * - cusparseDenseToSparse_convert + * - cusparseDnnz */ + JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseSpGEMM_1copyNative (JNIEnv *env, jclass, jobject handle, jint opA, jint opB, jobject alpha, jobject matA, jobject matB, jobject beta, jobject matC, jint computeType, jint alg, jobject spgemmDescr); + JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseGetMatIndexBaseNative (JNIEnv *env, jclass cls, jobject descrA); + JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseCreateCsrNative (JNIEnv *env, jclass cls, jobject spMatDescr, jlong rows, jlong cols, jlong nnz, jobject csrRowOffsets, jobject csrColInd, jobject csrValues, jint csrRowOffsetsType, jint csrColIndType, jint idxBase, jint valueType); + JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseCreateDnVecNative (JNIEnv *env, jclass cls, jobject dnVecDescr, jlong size, jobject values, jint valueType); + JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseSpMV_1bufferSizeNative (JNIEnv *env, jclass cls, jobject handle, jint opA, jobject alpha, jobject matA, jobject vecX, jobject beta, jobject vecY, jint computeType, jint alg, jlongArray bufferSize); + JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseSpMVNative (JNIEnv *env, jclass cls, jobject handle, jint opA, jobject alpha, jobject matA, jobject vecX, jobject beta, jobject vecY, jint computeType, jint alg, jobject externalBuffer); + JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseDestroyNative (JNIEnv *env, jclass cls, jobject handle); + JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseDestroyDnVecNative (JNIEnv *env, jclass cls, jobject dnVecDescr); + JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseDestroyDnMatNative (JNIEnv *env, jclass cls, jobject dnMatDescr); + JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseDestroySpMatNative (JNIEnv *env, jclass cls, jobject spMatDescr); + JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseSpMMNative (JNIEnv *env, jclass cls, jobject handle, jint opA, jint opB, jobject alpha, jobject matA, jobject matB, jobject beta, jobject matC, jint computeType, jint alg, jobject externalBuffer); @@ -92,12 +109,15 @@ JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusp (JNIEnv *env, jclass cls, jobject handle, jint opA, jint opB, jobject alpha, jobject matA, jobject matB, jobject beta, jobject matC, jint computeType, jint alg, jlongArray bufferSize); + JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseCreateDnMatNative (JNIEnv *env, jclass cls, jobject dnMatDescr, jlong rows, jlong cols, jlong ld, jobject values, jint valueType, jint order); + JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseCsrSetPointersNative (JNIEnv *env, jclass cls, jobject spMatDescr, jobject csrRowOffsets, jobject csrColInd, jobject csrValues); + JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseCsr2cscEx2Native (JNIEnv *env, jclass cls, jobject handle, jint m, jint n, jint nnz, jobject csrVal, jobject csrRowPtr, jobject csrColInd, jobject cscVal, jobject cscColPtr, jobject cscRowInd, jint valType, jint copyValues, jint idxBase, jint alg, jobject buffer); @@ -107,6 +127,7 @@ JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusp (JNIEnv *env, jclass cls, jobject handle, jint m, jint n, jint nnz, jobject csrVal, jobject csrRowPtr, jobject csrColInd, jobject cscVal, jobject cscColPtr, jobject cscRowInd, jint valType, jint copyValues, jint idxBase, jint alg, jlongArray bufferSize); + JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseDcsrgeam2Native (JNIEnv *env, jclass cls, jobject handle, jint m, jint n, jobject alpha, jobject descrA, jint nnzA, jobject csrSortedValA, jobject csrSortedRowPtrA, jobject csrSortedColIndA, jobject beta, jobject descrB, jint nnzB, jobject csrSortedValB, @@ -118,6 +139,30 @@ JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusp jobject csrSortedRowPtrA, jobject csrSortedColIndA, jobject beta, jobject descrB, jint nnzB, jobject csrSortedValB, jobject csrSortedRowPtrB, jobject csrSortedColIndB, jobject descrC, jobject csrSortedValC, jobject csrSortedRowPtrC, jobject csrSortedColIndC, jlongArray pBufferSizeInBytes); + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseSparseToDenseNative + (JNIEnv *env, jclass cls, jobject handle, jobject matA, jobject matB, jint alg, jobject externalBuffer); + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseSparseToDense_1bufferSizeNative + (JNIEnv *env, jclass cls, jobject handle, jobject matA, jobject matB, jint alg, jlongArray bufferSize); + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseDenseToSparse_1bufferSizeNative + (JNIEnv *env, jclass cls, jobject handle, jobject matA, jobject matB, jint alg, jlongArray bufferSize); + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseDenseToSparse_1analysisNative + (JNIEnv *env, jclass cls, jobject handle, jobject matA, jobject matB, jint alg, jobject externalBuffer); + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseDenseToSparse_1convertNative + (JNIEnv *env, jclass cls, jobject handle, jobject matA, jobject matB, jint alg, jobject externalBuffer); + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseDnnzNative + (JNIEnv *env, jclass cls, jobject handle, jint dirA, jint m, jint n, jobject descrA, jobject A, jint lda, jobject nnzPerRowCol, jobject nnzTotalDevHostPtr); + #ifdef __cplusplus } #endif diff --git a/src/main/cpp/lib/libcujava_cusparse.so b/src/main/cpp/lib/libcujava_cusparse.so index a558814ddba9f945d271994bf3bd1b20609d7a57..3d276eb5bf13f5997de6aac7172c917318fd339f 100755 GIT binary patch literal 80904 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 delta 22564 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 wwO>=5@DRfS?zC~)9#F%5Df1n{5y8r+H diff --git a/src/main/java/org/apache/sysds/cujava/cusparse/CuJavaCusparse.java b/src/main/java/org/apache/sysds/cujava/cusparse/CuJavaCusparse.java index 34be188ee8c..92aef65757f 100644 --- a/src/main/java/org/apache/sysds/cujava/cusparse/CuJavaCusparse.java +++ b/src/main/java/org/apache/sysds/cujava/cusparse/CuJavaCusparse.java @@ -227,4 +227,53 @@ private static native int cusparseDcsrgeam2_bufferSizeExtNative(cusparseHandle h Pointer csrSortedColIndB, cusparseMatDescr descrC, Pointer csrSortedValC, Pointer csrSortedRowPtrC, Pointer csrSortedColIndC, long[] pBufferSizeInBytes); + public static int cusparseSparseToDense(cusparseHandle handle, cusparseConstSpMatDescr matA, + cusparseDnMatDescr matB, int alg, Pointer externalBuffer) { + return checkCusparseStatus(cusparseSparseToDenseNative(handle, matA, matB, alg, externalBuffer)); + } + + private static native int cusparseSparseToDenseNative(cusparseHandle handle, cusparseConstSpMatDescr matA, + cusparseDnMatDescr matB, int alg, Pointer externalBuffer); + + public static int cusparseSparseToDense_bufferSize(cusparseHandle handle, cusparseConstSpMatDescr matA, + cusparseDnMatDescr matB, int alg, long[] bufferSize) { + return checkCusparseStatus(cusparseSparseToDense_bufferSizeNative(handle, matA, matB, alg, bufferSize)); + } + + private static native int cusparseSparseToDense_bufferSizeNative(cusparseHandle handle, + cusparseConstSpMatDescr matA, cusparseDnMatDescr matB, int alg, long[] bufferSize); + + public static int cusparseDenseToSparse_bufferSize(cusparseHandle handle, cusparseConstDnMatDescr matA, + cusparseSpMatDescr matB, int alg, long[] bufferSize) { + return checkCusparseStatus(cusparseDenseToSparse_bufferSizeNative(handle, matA, matB, alg, bufferSize)); + } + + private static native int cusparseDenseToSparse_bufferSizeNative(cusparseHandle handle, + cusparseConstDnMatDescr matA, cusparseSpMatDescr matB, int alg, long[] bufferSize); + + public static int cusparseDenseToSparse_analysis(cusparseHandle handle, cusparseConstDnMatDescr matA, + cusparseSpMatDescr matB, int alg, Pointer externalBuffer) { + return checkCusparseStatus(cusparseDenseToSparse_analysisNative(handle, matA, matB, alg, externalBuffer)); + } + + private static native int cusparseDenseToSparse_analysisNative(cusparseHandle handle, cusparseConstDnMatDescr matA, + cusparseSpMatDescr matB, int alg, Pointer externalBuffer); + + public static int cusparseDenseToSparse_convert(cusparseHandle handle, cusparseConstDnMatDescr matA, + cusparseSpMatDescr matB, int alg, Pointer externalBuffer) { + return checkCusparseStatus(cusparseDenseToSparse_convertNative(handle, matA, matB, alg, externalBuffer)); + } + + private static native int cusparseDenseToSparse_convertNative(cusparseHandle handle, cusparseConstDnMatDescr matA, + cusparseSpMatDescr matB, int alg, Pointer externalBuffer); + + public static int cusparseDnnz(cusparseHandle handle, int dirA, int m, int n, cusparseMatDescr descrA, Pointer A, + int lda, Pointer nnzPerRowCol, Pointer nnzTotalDevHostPtr) { + return checkCusparseStatus( + cusparseDnnzNative(handle, dirA, m, n, descrA, A, lda, nnzPerRowCol, nnzTotalDevHostPtr)); + } + + private static native int cusparseDnnzNative(cusparseHandle handle, int dirA, int m, int n, cusparseMatDescr descrA, + Pointer A, int lda, Pointer nnzPerRowCol, Pointer nnzTotalDevHostPtr); + } From 6cb7ddd16b200633d964d8f8c30363481607c0d2 Mon Sep 17 00:00:00 2001 From: ReneEnjilian Date: Sun, 31 Aug 2025 15:05:00 +0200 Subject: [PATCH 52/57] next --- src/main/cpp/jni/cusparse/cujava_cusparse.cpp | 459 ++++++++++++++++++ src/main/cpp/jni/cusparse/cujava_cusparse.hpp | 57 +++ src/main/cpp/lib/libcujava_cusparse.so | Bin 80904 -> 95184 bytes .../sysds/cujava/cusparse/CuJavaCusparse.java | 94 ++++ 4 files changed, 610 insertions(+) diff --git a/src/main/cpp/jni/cusparse/cujava_cusparse.cpp b/src/main/cpp/jni/cusparse/cujava_cusparse.cpp index 938fbd298c0..a1741c0659e 100644 --- a/src/main/cpp/jni/cusparse/cujava_cusparse.cpp +++ b/src/main/cpp/jni/cusparse/cujava_cusparse.cpp @@ -21,6 +21,15 @@ #include "cujava_cusparse.hpp" #include "cujava_cusparse_common.hpp" +#define CUJAVA_REQUIRE_NONNULL(env, obj, name, method) \ + do { \ + if ((obj) == nullptr) { \ + ThrowByName((env), "java/lang/NullPointerException", \ + "Parameter '" name "' is null for " method); \ + return CUJAVA_INTERNAL_ERROR; \ + } \ + } while (0) + JNIEXPORT jint JNICALL JNI_OnLoad(JavaVM *jvm, void *reserved) { JNIEnv *env = nullptr; @@ -1350,3 +1359,453 @@ JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusp jint jniResult = (jint)jniResult_native; return jniResult; } + + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseSetMatTypeNative + (JNIEnv *env, jclass cls, jobject descrA, jint type) { + if (descrA == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'descrA' is null for cusparseSetMatType"); + return CUJAVA_INTERNAL_ERROR; + } + + Logger::log(LOG_TRACE, "Executing cusparseSetMatType(descrA=%p, type=%d)\n", descrA, type); + + cusparseMatDescr_t descrA_native; + cusparseMatrixType_t type_native; + + descrA_native = (cusparseMatDescr_t)getNativePointerValue(env, descrA); + type_native = (cusparseMatrixType_t)type; + + cusparseStatus_t jniResult_native = cusparseSetMatType(descrA_native, type_native); + + jint jniResult = (jint)jniResult_native; + return jniResult; +} + + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseSetMatIndexBaseNative + (JNIEnv *env, jclass cls, jobject descrA, jint base) { + if (descrA == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'descrA' is null for cusparseSetMatIndexBase"); + return CUJAVA_INTERNAL_ERROR; + } + + Logger::log(LOG_TRACE, "Executing cusparseSetMatIndexBase(descrA=%p, base=%d)\n", descrA, base); + + cusparseMatDescr_t descrA_native; + cusparseIndexBase_t base_native; + + descrA_native = (cusparseMatDescr_t)getNativePointerValue(env, descrA); + base_native = (cusparseIndexBase_t)base; + + cusparseStatus_t jniResult_native = cusparseSetMatIndexBase(descrA_native, base_native); + + jint jniResult = (jint)jniResult_native; + return jniResult; +} + + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseSetPointerModeNative + (JNIEnv *env, jclass cls, jobject handle, jint mode) { + if (handle == nullptr) { + ThrowByName(env, "java/lang/NullPointerException", "Parameter 'handle' is null for cusparseSetPointerMode"); + return CUJAVA_INTERNAL_ERROR; + } + + Logger::log(LOG_TRACE, "Executing cusparseSetPointerMode(handle=%p, mode=%d)\n", handle, mode); + + cusparseHandle_t handle_native; + cusparsePointerMode_t mode_native; + + handle_native = (cusparseHandle_t)getNativePointerValue(env, handle); + mode_native = (cusparsePointerMode_t)mode; + + cusparseStatus_t jniResult_native = cusparseSetPointerMode(handle_native, mode_native); + + jint jniResult = (jint)jniResult_native; + return jniResult; +} + + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseXcsrgeam2NnzNative + (JNIEnv *env, jclass cls, jobject handle, jint m, jint n, jobject descrA, jint nnzA, jobject csrSortedRowPtrA, jobject csrSortedColIndA, + jobject descrB, jint nnzB, jobject csrSortedRowPtrB, jobject csrSortedColIndB, jobject descrC, jobject csrSortedRowPtrC, jobject nnzTotalDevHostPtr, jobject workspace) { + + // Validate: all jobject parameters must be non-null + CUJAVA_REQUIRE_NONNULL(env, handle, "handle", "cusparseXcsrgeam2Nnz"); + CUJAVA_REQUIRE_NONNULL(env, descrA, "descrA", "cusparseXcsrgeam2Nnz"); + CUJAVA_REQUIRE_NONNULL(env, csrSortedRowPtrA, "csrSortedRowPtrA", "cusparseXcsrgeam2Nnz"); + CUJAVA_REQUIRE_NONNULL(env, csrSortedColIndA, "csrSortedColIndA", "cusparseXcsrgeam2Nnz"); + CUJAVA_REQUIRE_NONNULL(env, descrB, "descrB", "cusparseXcsrgeam2Nnz"); + CUJAVA_REQUIRE_NONNULL(env, csrSortedRowPtrB, "csrSortedRowPtrB", "cusparseXcsrgeam2Nnz"); + CUJAVA_REQUIRE_NONNULL(env, csrSortedColIndB, "csrSortedColIndB", "cusparseXcsrgeam2Nnz"); + CUJAVA_REQUIRE_NONNULL(env, descrC, "descrC", "cusparseXcsrgeam2Nnz"); + CUJAVA_REQUIRE_NONNULL(env, csrSortedRowPtrC, "csrSortedRowPtrC", "cusparseXcsrgeam2Nnz"); + CUJAVA_REQUIRE_NONNULL(env, nnzTotalDevHostPtr, "nnzTotalDevHostPtr", "cusparseXcsrgeam2Nnz"); + CUJAVA_REQUIRE_NONNULL(env, workspace, "workspace", "cusparseXcsrgeam2Nnz"); + + // Log message + Logger::log(LOG_TRACE, "Executing cusparseXcsrgeam2Nnz(handle=%p, m=%d, n=%d, descrA=%p, nnzA=%d, csrSortedRowPtrA=%p, csrSortedColIndA=%p, descrB=%p, nnzB=%d, csrSortedRowPtrB=%p, csrSortedColIndB=%p, descrC=%p, csrSortedRowPtrC=%p, nnzTotalDevHostPtr=%p, workspace=%p)\n", + handle, m, n, descrA, nnzA, csrSortedRowPtrA, csrSortedColIndA, descrB, nnzB, csrSortedRowPtrB, csrSortedColIndB, descrC, csrSortedRowPtrC, nnzTotalDevHostPtr, workspace); + + // Declare native variables + cusparseHandle_t handle_native; + int m_native = 0; + int n_native = 0; + cusparseMatDescr_t descrA_native; + int nnzA_native = 0; + int * csrSortedRowPtrA_native = NULL; + int * csrSortedColIndA_native = NULL; + cusparseMatDescr_t descrB_native; + int nnzB_native = 0; + int * csrSortedRowPtrB_native = NULL; + int * csrSortedColIndB_native = NULL; + cusparseMatDescr_t descrC_native; + int * csrSortedRowPtrC_native = NULL; + int * nnzTotalDevHostPtr_native = NULL; + void * workspace_native = NULL; + + // Copy Java inputs into native locals + handle_native = (cusparseHandle_t)getNativePointerValue(env, handle); + m_native = (int)m; + n_native = (int)n; + descrA_native = (cusparseMatDescr_t)getNativePointerValue(env, descrA); + nnzA_native = (int)nnzA; + csrSortedRowPtrA_native = (int *)getPointer(env, csrSortedRowPtrA); + csrSortedColIndA_native = (int *)getPointer(env, csrSortedColIndA); + descrB_native = (cusparseMatDescr_t)getNativePointerValue(env, descrB); + nnzB_native = (int)nnzB; + csrSortedRowPtrB_native = (int *)getPointer(env, csrSortedRowPtrB); + csrSortedColIndB_native = (int *)getPointer(env, csrSortedColIndB); + descrC_native = (cusparseMatDescr_t)getNativePointerValue(env, descrC); + csrSortedRowPtrC_native = (int *)getPointer(env, csrSortedRowPtrC); + PointerData *nnzTotalDevHostPtr_pointerData = initPointerData(env, nnzTotalDevHostPtr); + + if (nnzTotalDevHostPtr_pointerData == nullptr) { + return CUJAVA_INTERNAL_ERROR; + } + nnzTotalDevHostPtr_native = (int *)nnzTotalDevHostPtr_pointerData->getPointer(env); + workspace_native = (void *)getPointer(env, workspace); + + cusparseStatus_t jniResult_native = cusparseXcsrgeam2Nnz(handle_native, m_native, n_native, descrA_native, nnzA_native, + csrSortedRowPtrA_native, csrSortedColIndA_native, descrB_native, nnzB_native, csrSortedRowPtrB_native, csrSortedColIndB_native, + descrC_native, csrSortedRowPtrC_native, nnzTotalDevHostPtr_native, workspace_native); + + if (!isPointerBackedByNativeMemory(env, nnzTotalDevHostPtr)) { + cudaDeviceSynchronize(); + } + if (!releasePointerData(env, nnzTotalDevHostPtr_pointerData, 0)) return CUJAVA_INTERNAL_ERROR; + + jint jniResult = (jint)jniResult_native; + return jniResult; +} + + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseSpGEMM_1workEstimationNative + (JNIEnv *env, jclass cls, jobject handle, jint opA, jint opB, jobject alpha, jobject matA, jobject matB, jobject beta, + jobject matC, jint computeType, jint alg, jobject spgemmDescr, jlongArray bufferSize1, jobject externalBuffer1) { + + // Validate: all jobject parameters must be non-null + CUJAVA_REQUIRE_NONNULL(env, handle, "handle", "cusparseSpGEMM_workEstimation"); + CUJAVA_REQUIRE_NONNULL(env, alpha, "alpha", "cusparseSpGEMM_workEstimation"); + CUJAVA_REQUIRE_NONNULL(env, matA, "matA", "cusparseSpGEMM_workEstimation"); + CUJAVA_REQUIRE_NONNULL(env, matB, "matB", "cusparseSpGEMM_workEstimation"); + CUJAVA_REQUIRE_NONNULL(env, beta, "beta", "cusparseSpGEMM_workEstimation"); + CUJAVA_REQUIRE_NONNULL(env, matC, "matC", "cusparseSpGEMM_workEstimation"); + CUJAVA_REQUIRE_NONNULL(env, spgemmDescr, "spgemmDescr", "cusparseSpGEMM_workEstimation"); + CUJAVA_REQUIRE_NONNULL(env, bufferSize1, "bufferSize1", "cusparseSpGEMM_workEstimation"); + + Logger::log(LOG_TRACE, "Executing cusparseSpGEMM_workEstimation(handle=%p, opA=%d, opB=%d, alpha=%p, matA=%p, matB=%p, beta=%p, matC=%p, computeType=%d, alg=%d, spgemmDescr=%p, bufferSize1=%p, externalBuffer1=%p)\n", + handle, opA, opB, alpha, matA, matB, beta, matC, computeType, alg, spgemmDescr, bufferSize1, externalBuffer1); + + // Declare native variables + cusparseHandle_t handle_native; + cusparseOperation_t opA_native; + cusparseOperation_t opB_native; + void * alpha_native = NULL; + cusparseConstSpMatDescr_t matA_native; + cusparseConstSpMatDescr_t matB_native; + void * beta_native = NULL; + cusparseSpMatDescr_t matC_native; + cudaDataType computeType_native; + cusparseSpGEMMAlg_t alg_native; + cusparseSpGEMMDescr_t spgemmDescr_native; + size_t * bufferSize1_native = NULL; + void * externalBuffer1_native = NULL; + + // Copy Java inputs into native locals + handle_native = (cusparseHandle_t)getNativePointerValue(env, handle); + opA_native = (cusparseOperation_t)opA; + opB_native = (cusparseOperation_t)opB; + PointerData *alpha_pointerData = initPointerData(env, alpha); + if (alpha_pointerData == nullptr) { + return CUJAVA_INTERNAL_ERROR; + } + alpha_native = (void *)alpha_pointerData->getPointer(env); + matA_native = (cusparseConstSpMatDescr_t)getNativePointerValue(env, matA); + matB_native = (cusparseConstSpMatDescr_t)getNativePointerValue(env, matB); + PointerData *beta_pointerData = initPointerData(env, beta); + if (beta_pointerData == nullptr) { + return CUJAVA_INTERNAL_ERROR; + } + beta_native = (void *)beta_pointerData->getPointer(env); + matC_native = (cusparseSpMatDescr_t)getNativePointerValue(env, matC); + computeType_native = (cudaDataType)computeType; + alg_native = (cusparseSpGEMMAlg_t)alg; + spgemmDescr_native = (cusparseSpGEMMDescr_t)getNativePointerValue(env, spgemmDescr); + if (!initNative(env, bufferSize1, bufferSize1_native, true)) return CUJAVA_INTERNAL_ERROR; + externalBuffer1_native = (void *)getPointer(env, externalBuffer1); + + cusparseStatus_t jniResult_native = cusparseSpGEMM_workEstimation(handle_native, opA_native, opB_native, alpha_native, + matA_native, matB_native, beta_native, matC_native, computeType_native, alg_native, spgemmDescr_native, bufferSize1_native, externalBuffer1_native); + + if (!releasePointerData(env, alpha_pointerData, JNI_ABORT)) return CUJAVA_INTERNAL_ERROR; + if (!releasePointerData(env, beta_pointerData, JNI_ABORT)) return CUJAVA_INTERNAL_ERROR; + if (!releaseNative(env, bufferSize1_native, bufferSize1, true)) return CUJAVA_INTERNAL_ERROR; + + jint jniResult = (jint)jniResult_native; + return jniResult; +} + + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseSpGEMM_1computeNative + (JNIEnv *env, jclass cls, jobject handle, jint opA, jint opB, jobject alpha, jobject matA, jobject matB, jobject beta, + jobject matC, jint computeType, jint alg, jobject spgemmDescr, jlongArray bufferSize2, jobject externalBuffer2) { + + // Validate: all jobject parameters must be non-null + CUJAVA_REQUIRE_NONNULL(env, handle, "handle", "cusparseSpGEMM_compute"); + CUJAVA_REQUIRE_NONNULL(env, alpha, "alpha", "cusparseSpGEMM_compute"); + CUJAVA_REQUIRE_NONNULL(env, matA, "matA", "cusparseSpGEMM_compute"); + CUJAVA_REQUIRE_NONNULL(env, matB, "matB", "cusparseSpGEMM_compute"); + CUJAVA_REQUIRE_NONNULL(env, beta, "beta", "cusparseSpGEMM_compute"); + CUJAVA_REQUIRE_NONNULL(env, matC, "matC", "cusparseSpGEMM_compute"); + CUJAVA_REQUIRE_NONNULL(env, spgemmDescr, "spgemmDescr", "cusparseSpGEMM_compute"); + CUJAVA_REQUIRE_NONNULL(env, bufferSize2, "bufferSize2", "cusparseSpGEMM_compute"); + + Logger::log(LOG_TRACE, "Executing cusparseSpGEMM_compute(handle=%p, opA=%d, opB=%d, alpha=%p, matA=%p, matB=%p, beta=%p, matC=%p, computeType=%d, alg=%d, spgemmDescr=%p, bufferSize2=%p, externalBuffer2=%p)\n", + handle, opA, opB, alpha, matA, matB, beta, matC, computeType, alg, spgemmDescr, bufferSize2, externalBuffer2); + + // Declare native variables + cusparseHandle_t handle_native; + cusparseOperation_t opA_native; + cusparseOperation_t opB_native; + void * alpha_native = NULL; + cusparseConstSpMatDescr_t matA_native; + cusparseConstSpMatDescr_t matB_native; + void * beta_native = NULL; + cusparseSpMatDescr_t matC_native; + cudaDataType computeType_native; + cusparseSpGEMMAlg_t alg_native; + cusparseSpGEMMDescr_t spgemmDescr_native; + size_t * bufferSize2_native = NULL; + void * externalBuffer2_native = nullptr; + + // Copy Java inputs into native locals + handle_native = (cusparseHandle_t)getNativePointerValue(env, handle); + opA_native = (cusparseOperation_t)opA; + opB_native = (cusparseOperation_t)opB; + PointerData *alpha_pointerData = initPointerData(env, alpha); + if (alpha_pointerData == nullptr) { + return CUJAVA_INTERNAL_ERROR; + } + alpha_native = (void *)alpha_pointerData->getPointer(env); + matA_native = (cusparseConstSpMatDescr_t)getNativePointerValue(env, matA); + matB_native = (cusparseConstSpMatDescr_t)getNativePointerValue(env, matB); + PointerData *beta_pointerData = initPointerData(env, beta); + if (beta_pointerData == nullptr) { + return CUJAVA_INTERNAL_ERROR; + } + beta_native = (void *)beta_pointerData->getPointer(env); + matC_native = (cusparseSpMatDescr_t)getNativePointerValue(env, matC); + computeType_native = (cudaDataType)computeType; + alg_native = (cusparseSpGEMMAlg_t)alg; + spgemmDescr_native = (cusparseSpGEMMDescr_t)getNativePointerValue(env, spgemmDescr); + if (!initNative(env, bufferSize2, bufferSize2_native, true)) return CUJAVA_INTERNAL_ERROR; + externalBuffer2_native = (void *)getPointer(env, externalBuffer2); + + cusparseStatus_t jniResult_native = cusparseSpGEMM_compute(handle_native, opA_native, opB_native, alpha_native, matA_native, + matB_native, beta_native, matC_native, computeType_native, alg_native, spgemmDescr_native, bufferSize2_native, externalBuffer2_native); + + if (!releasePointerData(env, alpha_pointerData, JNI_ABORT)) return CUJAVA_INTERNAL_ERROR; + if (!releasePointerData(env, beta_pointerData, JNI_ABORT)) return CUJAVA_INTERNAL_ERROR; + if (!releaseNative(env, bufferSize2_native, bufferSize2, true)) return CUJAVA_INTERNAL_ERROR; + + jint jniResult = (jint)jniResult_native; + return jniResult; +} + + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseSpMatGetSizeNative + (JNIEnv *env, jclass cls, jobject spMatDescr, jlongArray rows, jlongArray cols, jlongArray nnz) { + + // Validate: all jobject parameters must be non-null + CUJAVA_REQUIRE_NONNULL(env, spMatDescr, "spMatDescr", "cusparseSpMatGetSize"); + CUJAVA_REQUIRE_NONNULL(env, rows, "rows", "cusparseSpMatGetSize"); + CUJAVA_REQUIRE_NONNULL(env, cols, "cols", "cusparseSpMatGetSize"); + CUJAVA_REQUIRE_NONNULL(env, nnz, "nnz", "cusparseSpMatGetSize"); + + Logger::log(LOG_TRACE, "Executing cusparseSpMatGetSize(spMatDescr=%p, rows=%p, cols=%p, nnz=%p)\n", spMatDescr, rows, cols, nnz); + + // Declare native variables + cusparseConstSpMatDescr_t spMatDescr_native; + int64_t rows_native; + int64_t cols_native; + int64_t nnz_native; + + // Copy Java inputs into native locals + spMatDescr_native = (cusparseConstSpMatDescr_t)getNativePointerValue(env, spMatDescr); + + cusparseStatus_t jniResult_native = cusparseSpMatGetSize(spMatDescr_native, &rows_native, &cols_native, &nnz_native); + + if (!set(env, rows, 0, (jlong)rows_native)) return CUJAVA_INTERNAL_ERROR; + if (!set(env, cols, 0, (jlong)cols_native)) return CUJAVA_INTERNAL_ERROR; + if (!set(env, nnz, 0, (jlong)nnz_native)) return CUJAVA_INTERNAL_ERROR; + + // Return the result + jint jniResult = (jint)jniResult_native; + return jniResult; +} + + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseXcsrsortNative +(JNIEnv *env, jclass cls, jobject handle, jint m, jint n, jint nnz, jobject descrA, jobject csrRowPtrA, jobject csrColIndA, jobject P, jobject pBuffer) { + + // Validate: all jobject parameters must be non-null + CUJAVA_REQUIRE_NONNULL(env, handle, "handle", "cusparseXcsrsort"); + CUJAVA_REQUIRE_NONNULL(env, descrA, "descrA", "cusparseXcsrsort"); + CUJAVA_REQUIRE_NONNULL(env, csrRowPtrA, "csrRowPtrA", "cusparseXcsrsort"); + CUJAVA_REQUIRE_NONNULL(env, csrColIndA, "csrColIndA", "cusparseXcsrsort"); + CUJAVA_REQUIRE_NONNULL(env, P, "P", "cusparseXcsrsort"); + CUJAVA_REQUIRE_NONNULL(env, pBuffer, "pBuffer", "cusparseXcsrsort"); + + Logger::log(LOG_TRACE, "Executing cusparseXcsrsort(handle=%p, m=%d, n=%d, nnz=%d, descrA=%p, csrRowPtrA=%p, csrColIndA=%p, P=%p, pBuffer=%p)\n", + handle, m, n, nnz, descrA, csrRowPtrA, csrColIndA, P, pBuffer); + + // Declare native variables + cusparseHandle_t handle_native; + int m_native = 0; + int n_native = 0; + int nnz_native = 0; + cusparseMatDescr_t descrA_native; + int * csrRowPtrA_native = nullptr; + int * csrColIndA_native = nullptr; + int * P_native = nullptr; + void * pBuffer_native = nullptr; + + // Copy Java inputs into native locals + handle_native = (cusparseHandle_t)getNativePointerValue(env, handle); + m_native = (int)m; + n_native = (int)n; + nnz_native = (int)nnz; + descrA_native = (cusparseMatDescr_t)getNativePointerValue(env, descrA); + csrRowPtrA_native = (int *)getPointer(env, csrRowPtrA); + csrColIndA_native = (int *)getPointer(env, csrColIndA); + P_native = (int *)getPointer(env, P); + pBuffer_native = (void *)getPointer(env, pBuffer); + + // Cusparse API call + cusparseStatus_t jniResult_native = cusparseXcsrsort(handle_native, m_native, n_native, nnz_native, descrA_native, + csrRowPtrA_native, csrColIndA_native, P_native, pBuffer_native); + + jint jniResult = (jint)jniResult_native; + return jniResult; +} + + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseXcsrsort_1bufferSizeExtNative +(JNIEnv *env, jclass cls, jobject handle, jint m, jint n, jint nnz, jobject csrRowPtrA, jobject csrColIndA, jlongArray pBufferSizeInBytes) { + + // Validate: all jobject parameters must be non-null + CUJAVA_REQUIRE_NONNULL(env, handle, "handle", "cusparseXcsrsort_bufferSizeExt"); + CUJAVA_REQUIRE_NONNULL(env, csrRowPtrA, "csrRowPtrA", "cusparseXcsrsort_bufferSizeExt"); + CUJAVA_REQUIRE_NONNULL(env, csrColIndA, "csrColIndA", "cusparseXcsrsort_bufferSizeExt"); + CUJAVA_REQUIRE_NONNULL(env, pBufferSizeInBytes, "pBufferSizeInBytes", "cusparseXcsrsort_bufferSizeExt"); + + Logger::log(LOG_TRACE, "Executing cusparseXcsrsort_bufferSizeExt(handle=%p, m=%d, n=%d, nnz=%d, csrRowPtrA=%p, csrColIndA=%p, pBufferSizeInBytes=%p)\n", + handle, m, n, nnz, csrRowPtrA, csrColIndA, pBufferSizeInBytes); + + // Declare native variables + cusparseHandle_t handle_native; + int m_native = 0; + int n_native = 0; + int nnz_native = 0; + int * csrRowPtrA_native = nullptr; + int * csrColIndA_native = nullptr; + size_t * pBufferSizeInBytes_native = nullptr; + + // Copy Java inputs into native locals + handle_native = (cusparseHandle_t)getNativePointerValue(env, handle); + m_native = (int)m; + n_native = (int)n; + nnz_native = (int)nnz; + csrRowPtrA_native = (int *)getPointer(env, csrRowPtrA); + csrColIndA_native = (int *)getPointer(env, csrColIndA); + if (!initNative(env, pBufferSizeInBytes, pBufferSizeInBytes_native, true)) return CUJAVA_INTERNAL_ERROR; + + // Cusparse API call + cusparseStatus_t jniResult_native = cusparseXcsrsort_bufferSizeExt(handle_native, m_native, n_native, nnz_native, + csrRowPtrA_native, csrColIndA_native, pBufferSizeInBytes_native); + + if (!releaseNative(env, pBufferSizeInBytes_native, pBufferSizeInBytes, true)) return CUJAVA_INTERNAL_ERROR; + + // Return the result + jint jniResult = (jint)jniResult_native; + return jniResult; +} + + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseCreateNative(JNIEnv *env, jclass cls, jobject handle) { + + // Validate: all jobject parameters must be non-null + CUJAVA_REQUIRE_NONNULL(env, handle, "handle", "cusparseCreate"); + + Logger::log(LOG_TRACE, "Executing cusparseCreate(handle=%p)\n", handle); + + // Declare native variables + cusparseHandle_t handle_native; + + // Cusparse API call + cusparseStatus_t jniResult_native = cusparseCreate(&handle_native); + setNativePointerValue(env, handle, (jlong)handle_native); + + jint jniResult = (jint)jniResult_native; + return jniResult; +} + + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseCreateIdentityPermutationNative + (JNIEnv *env, jclass cls, jobject handle, jint n, jobject p) { + + // Validate: all jobject parameters must be non-null + CUJAVA_REQUIRE_NONNULL(env, handle, "handle", "cusparseCreateIdentityPermutation"); + CUJAVA_REQUIRE_NONNULL(env, p, "p", "cusparseCreateIdentityPermutation"); + + Logger::log(LOG_TRACE, "Executing cusparseCreateIdentityPermutation(handle=%p, n=%d, p=%p)\n", handle, n, p); + + // Declare native variables + cusparseHandle_t handle_native; + int n_native = 0; + int * p_native = nullptr; + + // Copy Java inputs into native locals + handle_native = (cusparseHandle_t)getNativePointerValue(env, handle); + n_native = (int)n; + p_native = (int *)getPointer(env, p); + + // Cusparse API call + cusparseStatus_t jniResult_native = cusparseCreateIdentityPermutation(handle_native, n_native, p_native); + + jint jniResult = (jint)jniResult_native; + return jniResult; +} diff --git a/src/main/cpp/jni/cusparse/cujava_cusparse.hpp b/src/main/cpp/jni/cusparse/cujava_cusparse.hpp index 0ad90b00b73..213bc8a015f 100644 --- a/src/main/cpp/jni/cusparse/cujava_cusparse.hpp +++ b/src/main/cpp/jni/cusparse/cujava_cusparse.hpp @@ -53,6 +53,17 @@ extern "C" { * - cusparseDenseToSparse_analysis * - cusparseDenseToSparse_convert * - cusparseDnnz + * - cusparseSetMatType + * - cusparseSetMatIndexBase + * - cusparseSetPointerMode + * - cusparseXcsrgeam2Nnz + * - cusparseSpGEMM_workEstimation + * - cusparseSpGEMM_compute + * - cusparseSpMatGetSize + * - cusparseXcsrsort + * - cusparseXcsrsort_bufferSizeExt + * - cusparseCreate + * - cusparseCreateIdentityPermutation */ @@ -163,6 +174,52 @@ JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusp JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseDnnzNative (JNIEnv *env, jclass cls, jobject handle, jint dirA, jint m, jint n, jobject descrA, jobject A, jint lda, jobject nnzPerRowCol, jobject nnzTotalDevHostPtr); + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseSetMatTypeNative + (JNIEnv *env, jclass cls, jobject descrA, jint type); + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseSetMatIndexBaseNative + (JNIEnv *env, jclass cls, jobject descrA, jint base); + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseSetPointerModeNative + (JNIEnv *env, jclass cls, jobject handle, jint mode); + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseXcsrgeam2NnzNative + (JNIEnv *env, jclass cls, jobject handle, jint m, jint n, jobject descrA, jint nnzA, jobject csrSortedRowPtrA, jobject csrSortedColIndA, + jobject descrB, jint nnzB, jobject csrSortedRowPtrB, jobject csrSortedColIndB, jobject descrC, jobject csrSortedRowPtrC, jobject nnzTotalDevHostPtr, jobject workspace); + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseSpGEMM_1workEstimationNative + (JNIEnv *env, jclass cls, jobject handle, jint opA, jint opB, jobject alpha, jobject matA, jobject matB, jobject beta, + jobject matC, jint computeType, jint alg, jobject spgemmDescr, jlongArray bufferSize1, jobject externalBuffer1); + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseSpGEMM_1computeNative + (JNIEnv *env, jclass cls, jobject handle, jint opA, jint opB, jobject alpha, jobject matA, jobject matB, jobject beta, + jobject matC, jint computeType, jint alg, jobject spgemmDescr, jlongArray bufferSize2, jobject externalBuffer2); + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseSpMatGetSizeNative + (JNIEnv *env, jclass cls, jobject spMatDescr, jlongArray rows, jlongArray cols, jlongArray nnz); + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseXcsrsortNative +(JNIEnv *env, jclass cls, jobject handle, jint m, jint n, jint nnz, jobject descrA, jobject csrRowPtrA, jobject csrColIndA, jobject P, jobject pBuffer); + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseXcsrsort_1bufferSizeExtNative +(JNIEnv *env, jclass cls, jobject handle, jint m, jint n, jint nnz, jobject csrRowPtrA, jobject csrColIndA, jlongArray pBufferSizeInBytes); + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseCreateNative(JNIEnv *env, jclass cls, jobject handle); + + +JNIEXPORT jint JNICALL Java_org_apache_sysds_cujava_cusparse_CuJavaCusparse_cusparseCreateIdentityPermutationNative + (JNIEnv *env, jclass cls, jobject handle, jint n, jobject p); + #ifdef __cplusplus } #endif diff --git a/src/main/cpp/lib/libcujava_cusparse.so b/src/main/cpp/lib/libcujava_cusparse.so index 3d276eb5bf13f5997de6aac7172c917318fd339f..6f94c133703624e1be21f9adfcf9c795cc488892 100755 GIT binary patch literal 95184 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

KU?xA}EU&GNnBn1V2q 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 delta 24987 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