* Use ATerm 2.5.
This commit is contained in:
		
							parent
							
								
									5ccb6f64f4
								
							
						
					
					
						commit
						7db2831d3a
					
				
					 4 changed files with 147 additions and 12 deletions
				
			
		
							
								
								
									
										16
									
								
								externals/Makefile.am
									
										
									
									
										vendored
									
									
								
							
							
						
						
									
										16
									
								
								externals/Makefile.am
									
										
									
									
										vendored
									
									
								
							|  | @ -1,16 +1,18 @@ | |||
| # CWI ATerm | ||||
| 
 | ||||
| ATERM = aterm-2.4.2-fixes-r2 | ||||
| ATERM = aterm-2.5 | ||||
| 
 | ||||
| $(ATERM).tar.bz2: | ||||
| $(ATERM).tar.gz: | ||||
| 	@echo "Nix requires the CWI ATerm library to build." | ||||
| 	@echo "Please download version 2.4.2-fixes-r2 from" | ||||
| 	@echo "  http://nixos.org/tarballs/aterm-2.4.2-fixes-r2.tar.bz2" | ||||
| 	@echo "Please download version 2.5 from" | ||||
| 	@echo "  http://nixos.org/tarballs/aterm-2.5.tar.gz" | ||||
| 	@echo "and place it in the externals/ directory." | ||||
| 	false | ||||
| 
 | ||||
| $(ATERM): $(ATERM).tar.bz2 | ||||
| 	bunzip2 < $(srcdir)/$(ATERM).tar.bz2 | tar xvf - | ||||
| $(ATERM): $(ATERM).tar.gz | ||||
| 	gzip -d < $(srcdir)/$(ATERM).tar.gz | tar xvf - | ||||
| 	patch -d $(ATERM) -p1 < ./max-long.patch | ||||
| 	patch -d $(ATERM) -p1 < ./sizeof.patch | ||||
| 
 | ||||
| have-aterm: | ||||
| 	$(MAKE) $(ATERM) | ||||
|  | @ -67,7 +69,7 @@ endif | |||
| 
 | ||||
| all: build-aterm build-bzip2 | ||||
| 
 | ||||
| EXTRA_DIST = $(ATERM).tar.bz2 $(BZIP2).tar.gz | ||||
| EXTRA_DIST = $(ATERM).tar.gz $(BZIP2).tar.gz max-long.patch sizeof.patch | ||||
| 
 | ||||
| ext-clean: | ||||
| 	$(RM) -f have-aterm build-aterm have-bzip2 build-bzip2 | ||||
|  |  | |||
							
								
								
									
										77
									
								
								externals/max-long.patch
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										77
									
								
								externals/max-long.patch
									
										
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,77 @@ | |||
| diff -rc aterm-2.8-orig/aterm/hash.c aterm-2.8/aterm/hash.c
 | ||||
| *** aterm-2.8-orig/aterm/hash.c	2008-11-10 13:54:22.000000000 +0100 | ||||
| --- aterm-2.8/aterm/hash.c	2009-01-27 18:14:14.000000000 +0100
 | ||||
| *************** | ||||
| *** 93,146 **** | ||||
|   } | ||||
|    | ||||
|   /*}}}  */ | ||||
| - /*{{{  static long calc_long_max() */
 | ||||
| - static long calc_long_max()
 | ||||
| - {
 | ||||
| -   long try_long_max;
 | ||||
| -   long long_max;
 | ||||
| -   long delta;
 | ||||
| - 
 | ||||
| -   try_long_max = 1;
 | ||||
| -   do {
 | ||||
| -     long_max = try_long_max;
 | ||||
| -     try_long_max = long_max * 2;
 | ||||
| -   } while (try_long_max > 0);
 | ||||
| - 
 | ||||
| -   delta = long_max;
 | ||||
| -   while (delta > 1) {
 | ||||
| -     while (long_max + delta < 0) {
 | ||||
| -       delta /= 2;
 | ||||
| -     }
 | ||||
| -     long_max += delta;
 | ||||
| -   }
 | ||||
| - 
 | ||||
| -   return long_max;
 | ||||
| - 
 | ||||
| - }
 | ||||
| - /*}}}  */
 | ||||
|   /*{{{  static long calculateNewSize(sizeMinus1, nrdel, nrentries) */ | ||||
|    | ||||
|   static long calculateNewSize | ||||
|   (long sizeMinus1, long nr_deletions, long nr_entries) | ||||
|   {  | ||||
| - 
 | ||||
| -   /* Hack: LONG_MAX (limits.h) is often unreliable, we need to find
 | ||||
| -    * out the maximum possible value of a signed long dynamically.
 | ||||
| -    */
 | ||||
| -   static long st_long_max = 0;
 | ||||
| - 
 | ||||
| -   /* the resulting length has the form 2^k-1 */
 | ||||
| - 
 | ||||
|     if (nr_deletions >= nr_entries/2) {  | ||||
|       return sizeMinus1; | ||||
|     } | ||||
|    | ||||
| !   if (st_long_max == 0) {
 | ||||
| !     st_long_max = calc_long_max();
 | ||||
| !   }
 | ||||
| ! 
 | ||||
| !   if (sizeMinus1 > st_long_max / 2) {
 | ||||
| !     return st_long_max-1;
 | ||||
|     } | ||||
|    | ||||
|     return (2*sizeMinus1)+1; | ||||
| --- 93,109 ----
 | ||||
|   } | ||||
|    | ||||
|   /*}}}  */ | ||||
|   /*{{{  static long calculateNewSize(sizeMinus1, nrdel, nrentries) */ | ||||
|    | ||||
|   static long calculateNewSize | ||||
|   (long sizeMinus1, long nr_deletions, long nr_entries) | ||||
|   {  | ||||
|     if (nr_deletions >= nr_entries/2) {  | ||||
|       return sizeMinus1; | ||||
|     } | ||||
|    | ||||
| !   if (sizeMinus1 > LONG_MAX / 2) {
 | ||||
| !     return LONG_MAX-1;
 | ||||
|     } | ||||
|    | ||||
|     return (2*sizeMinus1)+1; | ||||
							
								
								
									
										56
									
								
								externals/sizeof.patch
									
										
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										56
									
								
								externals/sizeof.patch
									
										
									
									
										vendored
									
									
										Normal file
									
								
							|  | @ -0,0 +1,56 @@ | |||
| diff -rc -x '*~' aterm-2.5-orig/aterm/aterm.c aterm-2.5/aterm/aterm.c
 | ||||
| *** aterm-2.5-orig/aterm/aterm.c	2007-02-27 23:41:31.000000000 +0100 | ||||
| --- aterm-2.5/aterm/aterm.c	2010-02-23 15:10:38.000000000 +0100
 | ||||
| *************** | ||||
| *** 150,155 **** | ||||
| --- 150,157 ----
 | ||||
|     if (initialized) | ||||
|       return; | ||||
|    | ||||
| +   assert(sizeof(long) == sizeof(void *));
 | ||||
| + 
 | ||||
|     /*{{{  Handle arguments */ | ||||
|    | ||||
|     for (lcv=1; lcv < argc; lcv++) { | ||||
| diff -rc -x '*~' aterm-2.5-orig/aterm/encoding.h aterm-2.5/aterm/encoding.h
 | ||||
| *** aterm-2.5-orig/aterm/encoding.h	2007-02-27 23:41:31.000000000 +0100 | ||||
| --- aterm-2.5/aterm/encoding.h	2010-02-23 15:36:05.000000000 +0100
 | ||||
| *************** | ||||
| *** 10,24 **** | ||||
|   { | ||||
|   #endif/* __cplusplus */ | ||||
|    | ||||
| ! #if SIZEOF_LONG > 4
 | ||||
| ! #define AT_64BIT
 | ||||
|   #endif | ||||
|    | ||||
| ! #if SIZEOF_LONG != SIZEOF_VOID_P
 | ||||
| ! #error Size of long is not the same as the size of a pointer
 | ||||
|   #endif | ||||
|    | ||||
| ! #if SIZEOF_INT > 4
 | ||||
|   #error Size of int is not 32 bits | ||||
|   #endif | ||||
|    | ||||
| --- 10,30 ----
 | ||||
|   { | ||||
|   #endif/* __cplusplus */ | ||||
|    | ||||
| ! #include <limits.h>
 | ||||
| ! 
 | ||||
| ! #ifndef SIZEOF_LONG
 | ||||
| ! #if ULONG_MAX > 4294967295
 | ||||
| ! #define SIZEOF_LONG 8
 | ||||
| ! #else
 | ||||
| ! #define SIZEOF_LONG 4
 | ||||
| ! #endif
 | ||||
|   #endif | ||||
|    | ||||
| ! #if SIZEOF_LONG > 4
 | ||||
| ! #define AT_64BIT
 | ||||
|   #endif | ||||
|    | ||||
| ! #if UINT_MAX > 4294967295
 | ||||
|   #error Size of int is not 32 bits | ||||
|   #endif | ||||
|    | ||||
							
								
								
									
										10
									
								
								release.nix
									
										
									
									
									
								
							
							
						
						
									
										10
									
								
								release.nix
									
										
									
									
									
								
							|  | @ -31,8 +31,8 @@ let | |||
| 
 | ||||
|         # Include the ATerm and Bzip2 tarballs in the distribution. | ||||
|         preConfigure = '' | ||||
|           stripHash ${aterm242fixes.src} | ||||
|           cp -pv ${aterm242fixes.src} externals/$strippedName | ||||
|           stripHash ${aterm.src} | ||||
|           cp -pv ${aterm.src} externals/$strippedName | ||||
| 
 | ||||
|           stripHash ${bzip2.src} | ||||
|           cp -pv ${bzip2.src} externals/$strippedName | ||||
|  | @ -77,7 +77,7 @@ let | |||
| 
 | ||||
|         configureFlags = '' | ||||
|           --disable-init-state | ||||
|           --with-aterm=${aterm242fixes} --with-bzip2=${bzip2} | ||||
|           --with-aterm=${aterm} --with-bzip2=${bzip2} | ||||
|         ''; | ||||
|       }; | ||||
| 
 | ||||
|  | @ -98,7 +98,7 @@ let | |||
| 
 | ||||
|         configureFlags = '' | ||||
|           --disable-init-state | ||||
|           --with-aterm=${aterm242fixes} --with-bzip2=${bzip2} | ||||
|           --with-aterm=${aterm} --with-bzip2=${bzip2} | ||||
|           --enable-static-nix | ||||
|         ''; | ||||
|       }; | ||||
|  | @ -123,7 +123,7 @@ let | |||
| 
 | ||||
|         configureFlags = '' | ||||
|           --disable-init-state --disable-shared | ||||
|           --with-aterm=${aterm242fixes} --with-bzip2=${bzip2} | ||||
|           --with-aterm=${aterm} --with-bzip2=${bzip2} | ||||
|         ''; | ||||
| 
 | ||||
|         lcovFilter = ["*/boost/*" "*-tab.*"]; | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue