libunwind: initial version 1.1
The package Makefile was based on work at link [1] with the following
changes
 1. Disable minidebuginfo support thus no dependency on liblzma
 2. Add 2 patches for building against musl-libc and building with
    mips16 enabled
 3. Add LICENSE and DEPENDS info, etc.
[1] https://github.com/rpi-openwrt/rpi-packages/tree/master/libs/libunwind
Signed-off-by: Yousong Zhou <yszhou4tech@gmail.com>
			
			
This commit is contained in:
		 Yousong Zhou
					Yousong Zhou
				
			
				
					committed by
					
						 John Crispin
						John Crispin
					
				
			
			
				
	
			
			
			 John Crispin
						John Crispin
					
				
			
						parent
						
							9a4935687d
						
					
				
				
					commit
					987f14ab23
				
			
							
								
								
									
										53
									
								
								package/libs/libunwind/Makefile
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										53
									
								
								package/libs/libunwind/Makefile
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,53 @@ | |||||||
|  | # | ||||||
|  | # Copyright (C) 2008-2013 OpenWrt.org | ||||||
|  | # | ||||||
|  | # This is free software, licensed under the GNU General Public License v2. | ||||||
|  | # See /LICENSE for more information. | ||||||
|  | # | ||||||
|  |  | ||||||
|  | include $(TOPDIR)/rules.mk | ||||||
|  |  | ||||||
|  | PKG_NAME:=libunwind | ||||||
|  | PKG_VERSION:=1.1 | ||||||
|  | PKG_RELEASE:=1 | ||||||
|  |  | ||||||
|  | PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz | ||||||
|  | PKG_SOURCE_URL:=http://download.savannah.gnu.org/releases/libunwind | ||||||
|  | PKG_MD5SUM:=fb4ea2f6fbbe45bf032cd36e586883ce | ||||||
|  | PKG_FIXUP:=autoreconf | ||||||
|  | PKG_INSTALL:=1 | ||||||
|  |  | ||||||
|  | PKG_LICENSE:=X11 | ||||||
|  | PKG_LICENSE_FILES:=LICENSE | ||||||
|  |  | ||||||
|  | PKG_MAINTAINER:=Yousong Zhou <yszhou4tech@gmail.com> | ||||||
|  |  | ||||||
|  | include $(INCLUDE_DIR)/package.mk | ||||||
|  |  | ||||||
|  | define Package/libunwind | ||||||
|  |   SECTION:=libs | ||||||
|  |   CATEGORY:=Libraries | ||||||
|  |   TITLE:=The libunwind project | ||||||
|  |   URL:=http://www.nongnu.org/libunwind/ | ||||||
|  |   DEPENDS:=@(mips||mipsel||powerpc||i386||x86_64) | ||||||
|  | endef | ||||||
|  |  | ||||||
|  | define Package/libunwind/description | ||||||
|  |   Libunwind defines a portable and efficient C programming interface (API) to determine the call-chain of a program. | ||||||
|  | endef | ||||||
|  |  | ||||||
|  | CONFIGURE_ARGS += --enable-minidebuginfo=no | ||||||
|  |  | ||||||
|  | define Package/libunwind/install | ||||||
|  | 	$(INSTALL_DIR) $(1)/usr/lib | ||||||
|  | 	$(CP) $(PKG_INSTALL_DIR)/usr/lib/libunwin*.so* $(1)/usr/lib/ | ||||||
|  | endef | ||||||
|  |  | ||||||
|  | define Build/InstallDev | ||||||
|  | 	$(INSTALL_DIR) $(1)/usr/include $(1)/usr/lib/pkgconfig | ||||||
|  | 	$(CP) $(PKG_INSTALL_DIR)/usr/include/*.h $(1)/usr/include | ||||||
|  | 	$(CP) $(PKG_INSTALL_DIR)/usr/lib/libunwin*.so* $(1)/usr/lib | ||||||
|  | 	$(CP) $(PKG_INSTALL_DIR)/usr/lib/pkgconfig/* $(1)/usr/lib/pkgconfig/ | ||||||
|  | endef | ||||||
|  |  | ||||||
|  | $(eval $(call BuildPackage,libunwind)) | ||||||
							
								
								
									
										22
									
								
								package/libs/libunwind/patches/001-disable-tests.patch
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										22
									
								
								package/libs/libunwind/patches/001-disable-tests.patch
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,22 @@ | |||||||
|  | --- a/Makefile.am | ||||||
|  | +++ b/Makefile.am | ||||||
|  | @@ -36,7 +36,7 @@ | ||||||
|  |   | ||||||
|  |  nodist_include_HEADERS = include/libunwind-common.h | ||||||
|  |   | ||||||
|  | -SUBDIRS = src tests doc | ||||||
|  | +SUBDIRS = src doc | ||||||
|  |   | ||||||
|  |  noinst_HEADERS = include/dwarf.h include/dwarf_i.h include/dwarf-eh.h	\ | ||||||
|  |  	include/compiler.h include/libunwind_i.h include/mempool.h	\ | ||||||
|  | --- a/Makefile.in | ||||||
|  | +++ b/Makefile.in | ||||||
|  | @@ -313,7 +313,7 @@ | ||||||
|  |  	$(am__append_7) $(am__append_8) $(am__append_9) \ | ||||||
|  |  	$(am__append_10) | ||||||
|  |  nodist_include_HEADERS = include/libunwind-common.h | ||||||
|  | -SUBDIRS = src tests doc | ||||||
|  | +SUBDIRS = src doc | ||||||
|  |  noinst_HEADERS = include/dwarf.h include/dwarf_i.h include/dwarf-eh.h	\ | ||||||
|  |  	include/compiler.h include/libunwind_i.h include/mempool.h	\ | ||||||
|  |  	include/remote.h						\ | ||||||
| @@ -0,0 +1,19 @@ | |||||||
|  | diff -uprN a/src/mips/getcontext.S b/src/mips/getcontext.S | ||||||
|  | --- a/src/mips/getcontext.S	2012-10-06 12:54:38.000000000 +0800 | ||||||
|  | +++ b/src/mips/getcontext.S	2016-06-08 13:35:25.033051679 +0800 | ||||||
|  | @@ -24,12 +24,12 @@ OF CONTRACT, TORT OR OTHERWISE, ARISING | ||||||
|  |  WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.  */ | ||||||
|  |   | ||||||
|  |  #include "offsets.h" | ||||||
|  | -#include <endian.h> | ||||||
|  |   | ||||||
|  |  	.text | ||||||
|  | +	.set nomips16 | ||||||
|  |   | ||||||
|  |  #if _MIPS_SIM == _ABIO32 | ||||||
|  | -# if __BYTE_ORDER == __BIG_ENDIAN | ||||||
|  | +# if __BYTE_ORDER__ == __ORDER_BIG_ENDIAN__ | ||||||
|  |  #  define OFFSET 4 | ||||||
|  |  # else | ||||||
|  |  #  define OFFSET 0 | ||||||
|  |  | ||||||
| @@ -0,0 +1,47 @@ | |||||||
|  | diff -uprN a/include/libunwind-mips.h b/include/libunwind-mips.h | ||||||
|  | --- a/include/libunwind-mips.h	2012-10-06 12:54:38.000000000 +0800 | ||||||
|  | +++ b/include/libunwind-mips.h	2016-06-08 13:55:55.029436442 +0800 | ||||||
|  | @@ -111,6 +111,42 @@ typedef enum | ||||||
|  |    } | ||||||
|  |  mips_regnum_t; | ||||||
|  |   | ||||||
|  | +#ifndef __GLIBC__ | ||||||
|  | +#include <sys/reg.h> | ||||||
|  | + | ||||||
|  | +/* musl as of 1.1.14 does not export these */ | ||||||
|  | +#define EF_REG0			6 | ||||||
|  | +#define EF_REG1			7 | ||||||
|  | +#define EF_REG2			8 | ||||||
|  | +#define EF_REG3			9 | ||||||
|  | +#define EF_REG4			10 | ||||||
|  | +#define EF_REG5			11 | ||||||
|  | +#define EF_REG6			12 | ||||||
|  | +#define EF_REG7			13 | ||||||
|  | +#define EF_REG8			14 | ||||||
|  | +#define EF_REG9			15 | ||||||
|  | +#define EF_REG10		16 | ||||||
|  | +#define EF_REG11		17 | ||||||
|  | +#define EF_REG12		18 | ||||||
|  | +#define EF_REG13		19 | ||||||
|  | +#define EF_REG14		20 | ||||||
|  | +#define EF_REG15		21 | ||||||
|  | +#define EF_REG16		22 | ||||||
|  | +#define EF_REG17		23 | ||||||
|  | +#define EF_REG18		24 | ||||||
|  | +#define EF_REG19		25 | ||||||
|  | +#define EF_REG20		26 | ||||||
|  | +#define EF_REG21		27 | ||||||
|  | +#define EF_REG22		28 | ||||||
|  | +#define EF_REG23		29 | ||||||
|  | +#define EF_REG24		30 | ||||||
|  | +#define EF_REG25		31 | ||||||
|  | +#define EF_REG28		34 | ||||||
|  | +#define EF_REG29		35 | ||||||
|  | +#define EF_REG30		36 | ||||||
|  | +#define EF_REG31		37 | ||||||
|  | +#endif | ||||||
|  | + | ||||||
|  |  typedef enum | ||||||
|  |    { | ||||||
|  |      UNW_MIPS_ABI_O32, | ||||||
|  |  | ||||||
		Reference in New Issue
	
	Block a user