diff --git a/datastore_server/build/build.xml b/datastore_server/build/build.xml
index 085742c19b1a8912e552abdd495049a5a28bf41e..a7ff25bcf070004221e3b73583aa463a4d69abb0 100644
--- a/datastore_server/build/build.xml
+++ b/datastore_server/build/build.xml
@@ -129,7 +129,7 @@
   <!-- parameters: 
           variant - will be used in the distribution file name  
     -->
-  <target name="create-distribution" depends="compute-checksum">
+  <target name="create-distribution">
     <property name="dist.file"
               value="${dist.file.prefix}${variant}-${version.number}-r${revision.number}.zip" />
     <move file="${checksum.file}" todir="${dist.datastore_server}" />
@@ -175,7 +175,7 @@
 	<!-- parameters: 
 					variant - will be used in the distribution file name  
 		-->
-	<target name="make-dist" depends="prepare-dist-libs, create-distribution" />
+	<target name="make-dist" depends="prepare-dist-libs, compute-checksum, create-distribution" />
   
   <!--  
     dss-client-jar is designed to be called from make-dist. Thus, it does not depend on compile, but
diff --git a/openbis/build/build.xml b/openbis/build/build.xml
index 310ffc2dd0add87d803c0b22db802248e6e23719..651e03b4b660f98e13aa5ae12b752c2b65a65199 100644
--- a/openbis/build/build.xml
+++ b/openbis/build/build.xml
@@ -152,8 +152,7 @@
   -->
 	<target name="compute-separate-checksums">
 		<checksum todir="${dist}" pattern="{0}  webapps/openbis/WEB-INF/classes/{1}">
-			<fileset dir="${sources}">
-				<include name="service.properties" />
+			<fileset dir="../openbis/${sources}">
 				<include name="applicationContext.xml" />
 				<include name="dbConfigurationContext.xml" />
 				<include name="genericApplicationContext.xml" />
@@ -161,6 +160,16 @@
 				<include name="hibernateContext.xml" />
 			</fileset>
 		</checksum>
+		<checksum todir="${dist}" pattern="{0}  webapps/openbis/WEB-INF/classes/{1}">
+			<fileset dir="dist/server">
+				<include name="service.properties" />
+			</fileset>
+		</checksum>
+		<checksum todir="${dist}" pattern="{0}  etc/{1}">
+			<fileset dir="dist/server">
+				<include name="web-client.properties" />
+			</fileset>
+		</checksum>
 	</target>
 
   <target name="admin-console-dist" depends="jar" 
diff --git a/screening/build/build.xml b/screening/build/build.xml
index dee92d11bfa70d0d0626252ccf2bdafb4adac219..e66090380750ec3aef636993635a1a7958aa6529 100644
--- a/screening/build/build.xml
+++ b/screening/build/build.xml
@@ -78,7 +78,7 @@
     </copy>
   </target>
 	
-  <target name="make-full-dss-dist" depends="datastore_server.prepare-dist-libs">
+  <target name="make-full-dss-dist" depends="datastore_server.prepare-dist-libs, compute-dss-checksum">
     <jar update="true" destfile="${dss-jar.file}">
     	<zipfileset src="${lib}/jhdf5/cisd-jhdf5-batteries_included_lin_win_mac.jar">
     		<exclude name="META_INF/*"/>
@@ -109,6 +109,32 @@
   	<antcall target="datastore_server.create-distribution" />
   </target>
 	
+	
+  <!-- 
+      Build the checksum file.
+  -->
+  <target name="compute-dss-checksum" depends="compute-separate-dss-checksums">
+  	<concat-checksums />
+  </target>
+	
+  <!-- 
+      Compute checksum files, one per configuration file, and place them
+      in the ${dist} dir. 
+      
+      The pattern shown in the file should be:
+        hash[two spaces]path_in_distribution_to_file
+      e.g.,
+        {0}  [folder of file]{1}
+  -->
+  <target name="compute-separate-dss-checksums">
+    <checksum todir="${dist}" pattern="{0}  etc/{1}">
+      <fileset dir="dist/etc">
+        <include name="service.properties" />
+        <include name="log.xml" />
+      </fileset>
+    </checksum>
+  </target>
+	
   <!--
         // Task for continuous integration server.
         -->