chrisdutz commented on code in PR #10742:
URL: https://github.com/apache/iotdb/pull/10742#discussion_r1283112458


##########
pom.xml:
##########
@@ -1109,88 +1115,116 @@
         </plugins>
     </build>
     <profiles>
-        <!-- spotless is too slow, so we put it into a profile to skip it if 
needed -->
-        <profile>
-            <id>spotless</id>
-            <activation>
-                <!-- activeByDefault does not take effect-->
-                <file>
-                    <exists>.</exists>
-                </file>
-            </activation>
-            <build>
-                <plugins>
-                    <plugin>
-                        <groupId>com.diffplug.spotless</groupId>
-                        <artifactId>spotless-maven-plugin</artifactId>
-                    </plugin>
-                </plugins>
-            </build>
-        </profile>
         <!--
           A set of profiles defining the different properties needed to 
download and run thrift
           They are automatically activated depending on the OS you are using.
         -->
         <profile>
-            <id>windows</id>
+            <id>.os-unix</id>
             <activation>
                 <os>
-                    <family>windows</family>
+                    <family>unix</family>
+                    <arch>!aarch64</arch>
                 </os>
             </activation>
             <properties>
-                <os.classifier>windows-x86_64</os.classifier>
-                
<thrift.download-url>http://archive.apache.org/dist/thrift/${thrift.version}/thrift-${thrift.version}.exe</thrift.download-url>
-                
<thrift.executable>thrift-${thrift.version}-win-x86_64.exe</thrift.executable>
-                
<thrift.skip-making-executable>true</thrift.skip-making-executable>
-                <thrift.exec-cmd.executable>echo</thrift.exec-cmd.executable>
-                <thrift.exec-cmd.args>"Do nothing"</thrift.exec-cmd.args>
+                <os.classifier>linux-x86_64</os.classifier>
+                <cmake.generator>Unix Makefiles</cmake.generator>
+                <thrift.executable>thrift</thrift.executable>

Review Comment:
   There are two profiles: 
   - with-cpp with will add the cpp-client and cpp-example
   - with-tools which will add the compilation of thrift
   The thing that I've changed, was that in the past we only had the thrift 
executable and not the shared libraries available as download. I've changed the 
thrift build to build an assembly that contains the executable, includes and 
shared libraries.
   If a user wants to compile without bison, boost etc, the build will - 
instead of downloading from git - will load a maven dependency: 
   `                                        <artifactItem>
                                               
<groupId>org.apache.iotdb</groupId>
                                               
<artifactId>iotdb-tools-thrift</artifactId>
                                               
<version>${project.version}</version>
                                               
<classifier>${os.classifier}</classifier>
                                               <type>zip</type>
                                               <overWrite>true</overWrite>
                                               
<outputDirectory>${project.build.directory}/thrift</outputDirectory>
                                           </artifactItem>
   `
   So he doesn't need to compile it on his machine. I think you still don't ned 
anything more than Java (cause you could even use the maven-wrapper and then 
not even need Maven). But I could double-check this as I have some VMs that I 
can reset to a clean OS installations for checks like this.
   
   This worked fine for mac and linux for both x86_64 and aarch64 ... just on 
Windows did I run into some issues.
   



-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to