Browse Source

Merge pull request #106 from Naoir/perl

perl: Modernize build, re-enable building external perl modules, remove microperl
sbyx 10 years ago
parent
commit
d977fbafcb

+ 33
- 115
lang/perl/Makefile View File

@@ -9,7 +9,7 @@ include $(TOPDIR)/rules.mk
9 9
 
10 10
 PKG_NAME:=perl
11 11
 PKG_VERSION:=5.20.0
12
-PKG_RELEASE:=1
12
+PKG_RELEASE:=2
13 13
 PKG_MD5SUM:=406ec049ebe3afcc80d9c76ec78ca4f8
14 14
 
15 15
 PKG_SOURCE_URL:=ftp://ftp.cpan.org/pub/CPAN/src/5.0 \
@@ -26,16 +26,24 @@ PKG_LICENSE:=GPLv1 ARTISTIC
26 26
 PKG_LICENSE_FILES:=Copying Artistic README
27 27
 PKG_MAINTAINER:=Marcel Denia <naoir@gmx.net>
28 28
 
29
+# Build settings
29 30
 PKG_BUILD_DIR:=$(BUILD_DIR)/perl/$(PKG_NAME)-$(PKG_VERSION)
31
+PKG_INSTALL:=1
32
+PKG_BUILD_DEPENDS:=perl/host
33
+PKG_BUILD_PARALLEL:=1
34
+HOST_BUILD_PARALLEL:=1
30 35
 
31
-include $(INCLUDE_DIR)/package.mk
32
-
36
+# Variables used during configuration/build
37
+HOST_PERL_PREFIX:=$(STAGING_DIR_HOST)/usr
33 38
 ifneq ($(CONFIG_USE_EGLIBC),)
34
-EXTRA_LIBS:=bsd
35
-EXTRA_LIBDIRS:=$(STAGING_DIR)/lib
39
+	EXTRA_LIBS:=bsd
40
+	EXTRA_LIBDIRS:=$(STAGING_DIR)/lib
36 41
 endif
37 42
 
38
-define Package/perl/Default
43
+include $(INCLUDE_DIR)/package.mk
44
+include $(INCLUDE_DIR)/host-build.mk
45
+
46
+define Package/perl
39 47
   SUBMENU:=Perl
40 48
   SECTION:=lang
41 49
   CATEGORY:=Languages
@@ -44,75 +52,24 @@ define Package/perl/Default
44 52
   DEPENDS:=+USE_EGLIBC:libbsd
45 53
 endef
46 54
 
47
-define Package/microperl
48
-$(call Package/perl/Default)
49
-  TITLE+=(minimal version)
50
-endef
51
-
52
-define Package/microperl/description
53
-  A perl package without operating-specific functions such as readdir.
54
-endef
55
-
56
-define Build/Template
57
-
58
-$(STAMP_CONFIGURED)-$(1): $(STAMP_PREPARED)
59
-	-$(MAKE) -C $(PKG_BUILD_DIR) clean
60
-	$(call Build/$(1)/Configure)
61
-	touch $$@
62
-
63
-$(STAMP_BUILT)-$(1): $(STAMP_CONFIGURED)-$(1)
64
-	$(call Build/$(1)/Compile)
65
-	touch $$@
66
-
67
-$(STAMP_BUILT): $(STAMP_BUILT)-$(1)
68
-
69
-endef
70
-
71
-define Build/microperl/Configure
72
-endef
73
-
74
-define Build/microperl/Compile
75
-	+$(MAKE) $(MAKE_J) -C $(PKG_BUILD_DIR) -f Makefile.micro \
76
-		CC="gcc" ugenerate_uudmap
77
-	+$(MAKE) $(MAKE_J) -C $(PKG_BUILD_DIR) -f Makefile.micro \
78
-		CC="$(TARGET_CC)" OPTIMIZE="$(TARGET_CFLAGS)"
79
-	$(INSTALL_DIR) $(PKG_INSTALL_DIR)/usr/bin/
80
-	$(CP) $(PKG_BUILD_DIR)/microperl $(PKG_INSTALL_DIR)/usr/bin/
81
-endef
82
-
83
-define Package/microperl/install
84
-	$(INSTALL_DIR) $(1)/usr/bin
85
-	$(INSTALL_BIN) $(PKG_BUILD_DIR)/microperl $(1)/usr/bin/
86
-endef
87
-
88
-include perlmod.mk
89
-
90
-define Package/perl
91
-$(call Package/perl/Default)
92
-endef
93
-
94 55
 define Package/perl/description
95 56
   Perl is a stable, cross platform programming language.
96 57
   It is used for mission critical projects in the public and private sectors
97 58
   and is widely used to program web applications of all needs.
98 59
 endef
99 60
 
100
-define Build/perl/Configure
101
-	@echo
102
-	@echo "===> Stage 1: Configure host perl"
103
-	@echo
104
-	mkdir -p $(PKG_BUILD_DIR)/host-perl
105
-	(cd $(PKG_BUILD_DIR)/host-perl && sh ../Configure -der -Dmksymlinks -Uusedl -Dotherlibdirs=$(PERL_LIB))
106
-
107
-	@echo
108
-	@echo "===> Stage 2: Build host perl binary with static extensions"
109
-	@echo
110
-	+$(MAKE) $(MAKE_J) -C $(PKG_BUILD_DIR)/host-perl miniperl
111
-
112
-	@echo
113
-	@echo "===> Stage 3: Configure target perl"
114
-	@echo
115
-	-$(MAKE) -C $(PKG_BUILD_DIR) clean
61
+# Static host perl
62
+define Host/Configure
63
+	( cd $(HOST_BUILD_DIR); ./Configure -der -Uusedl -Duserelocatableinc -Dprefix=$(HOST_PERL_PREFIX) )
64
+endef
65
+
66
+define Host/Install
67
+	( cd $(HOST_BUILD_DIR); ./miniperl installperl )
68
+	$(CP) $(HOST_BUILD_DIR)/generate_uudmap $(HOST_PERL_PREFIX)/bin/
69
+endef
70
+
71
+# Target perl
72
+define Build/Configure
116 73
 	sed \
117 74
 		-e 's!%%CC%%!$(TARGET_CC)!g' \
118 75
 		-e 's!%%CFLAGS%%!$(TARGET_CFLAGS) $(TARGET_CPPFLAGS)!g' \
@@ -125,37 +82,16 @@ define Build/perl/Configure
125 82
 		-e 's!%%EXTRA_PERLLIBS%%!$(EXTRA_LIBS:%=-l%)!g' \
126 83
 		-e 's!%%EXTRA_PERLLIBDIRS%%!$(EXTRA_LIBDIRS:%=-L%)!g' \
127 84
 		-e 's!%%IPV6%%!$(if $($(CONFIG_IPV6)),define,undef)!g' \
128
-		-e 's!%%HOSTMINIPERL%%!$(PKG_BUILD_DIR)/host-perl/miniperl!g' \
129
-		-e 's!%%HOSTGENERATE%%!$(PKG_BUILD_DIR)/host-perl/generate_uudmap!g' \
85
+		-e 's!%%HOSTMINIPERL%%!$(HOST_PERL_PREFIX)/bin/perl!g' \
86
+		-e 's!%%HOSTGENERATE%%!$(HOST_PERL_PREFIX)/bin/generate_uudmap!g' \
130 87
 		files/config.sh-$(patsubst i386,i486,$(ARCH)).in \
131 88
 		> $(PKG_BUILD_DIR)/config.sh
132 89
 	(cd $(PKG_BUILD_DIR) && ./Configure -S)
90
+	install -m 0644 $(PKG_BUILD_DIR)/config.h $(PKG_BUILD_DIR)/xconfig.h
133 91
 endef
134 92
 
135
-define Build/perl/Compile
136
-	@echo
137
-	@echo "===> Stage 4: Build target perl binary"
138
-	@echo
139
-	install -m 0644 $(PKG_BUILD_DIR)/config.h $(PKG_BUILD_DIR)/xconfig.h
140
-	+$(MAKE) $(MAKE_J) -C $(PKG_BUILD_DIR) perl
141
-	mkdir -p $(PKG_BUILD_DIR)/target-bin
142
-	install -m 0755 $(PKG_BUILD_DIR)/perl $(PKG_BUILD_DIR)/target-bin/
143
-
144
-	@echo
145
-	@echo "===> Stage 5: Build target extensions and utils"
146
-	@echo
147
-	+$(MAKE) $(MAKE_J) -C $(PKG_BUILD_DIR)
148
-
149
-	@echo
150
-	@echo "===> Stage 6: Install Perl into staging dir"
151
-	@echo
152
-	(cd $(PKG_BUILD_DIR) && ./miniperl installperl --destdir=$(STAGING_DIR))
153
-
154
-	@echo
155
-	@echo "===> Stage 7: Install Perl into a temporary root"
156
-	@echo
157
-	mkdir -p $(PKG_INSTALL_DIR)
158
-	(cd $(PKG_BUILD_DIR) && ./miniperl installperl --destdir=$(PKG_INSTALL_DIR))
93
+define Build/Compile
94
+	+$(MAKE) $(PKG_JOBS) -C $(PKG_BUILD_DIR)
159 95
 endef
160 96
 
161 97
 define Package/perl/install
@@ -164,31 +100,13 @@ define Package/perl/install
164 100
 	ln -nsf perl$(PKG_VERSION) $(1)/usr/bin/perl
165 101
 endef
166 102
 
167
-ifneq ($(CONFIG_PACKAGE_microperl),)
168
-define Build/microperl
169
-	$(call Build/Template,microperl)
170
-endef
171
-endif
172
-$(eval $(Build/microperl))
173
-
174
-ifneq ($(CONFIG_PACKAGE_perl),)
175
-define Build/perl
176
-	$(call Build/Template,perl)
177
-endef
178
-endif
179
-$(eval $(Build/perl))
180
-
181
-define Build/Configure
182
-endef
183
-
184
-define Build/Compile
185
-endef
186 103
 
187 104
 $(eval $(call RequireCommand,rsync, \
188 105
 	$(PKG_NAME) requires rsync installed on the host-system. \
189 106
 ))
190 107
 
191
-$(eval $(call BuildPackage,microperl))
192 108
 $(eval $(call BuildPackage,perl))
109
+$(eval $(call HostBuild))
193 110
 
111
+include perlmod.mk
194 112
 -include perlbase.mk

+ 2
- 2
lang/perl/files/config.sh-arm.in View File

@@ -36,8 +36,6 @@ api_subversion='0'
36 36
 
37 37
 
38 38
 ar='ar'
39
-archlib=''
40
-archlibexp=''
41 39
 archname64=''
42 40
 archname='arm-linux-uclibc'
43 41
 archobjs=''
@@ -1151,6 +1149,8 @@ installsitelib='/usr/lib/perl5/5.20'
1151 1149
 nonxs_ext='Archive/Tar Attribute/Handlers AutoLoader B/Debug CGI CPAN CPAN/Meta CPAN/Meta/Requirements CPAN/Meta/YAML Carp Config/Perl/V Devel/SelfStubber Digest Dumpvalue Env Errno Exporter ExtUtils/CBuilder ExtUtils/Command ExtUtils/Constant ExtUtils/Install ExtUtils/MakeMaker ExtUtils/Manifest ExtUtils/Miniperl ExtUtils/ParseXS File/Fetch File/Find File/Path File/Temp FileCache Filter/Simple Getopt/Long HTTP/Tiny I18N/Collate I18N/LangTags IO/Compress IO/Socket/IP IO/Zlib IPC/Cmd IPC/Open3 JSON/PP Locale/Codes Locale/Maketext Locale/Maketext/Simple Math/BigInt Math/BigRat Math/Complex Memoize Module/Build Module/CoreList Module/Load Module/Load/Conditional Module/Loaded Module/Metadata NEXT Net/Ping Package/Constants Params/Check Parse/CPAN/Meta Perl/OSType PerlIO/via/QuotedPrint Pod/Checker Pod/Escapes Pod/Functions Pod/Html Pod/Parser Pod/Perldoc Pod/Simple Pod/Usage Safe Search/Dict SelfLoader Term/ANSIColor Term/Cap Term/Complete Term/ReadLine Test Test/Harness Test/Simple Text/Abbrev Text/Balanced Text/ParseWords Text/Tabs Thread/Queue Thread/Semaphore Tie/File Tie/Memoize Tie/RefHash Time/Local XSLoader autodie autouse base bignum constant encoding/warnings experimental if lib libnet parent perlfaq podlators version'
1152 1150
 privlib='/usr/lib/perl5/5.20'
1153 1151
 privlibexp='/usr/lib/perl5/5.20'
1152
+archlib='/usr/lib/perl5/5.20'
1153
+archlibexp='/usr/lib/perl5/5.20'
1154 1154
 version='5.20.0'
1155 1155
 version_patchlevel_string='version 20 subversion 0'
1156 1156
 PERL_VERSION=20

+ 2
- 2
lang/perl/files/config.sh-armeb.in View File

@@ -36,8 +36,6 @@ api_subversion='0'
36 36
 
37 37
 
38 38
 ar='ar'
39
-archlib=''
40
-archlibexp=''
41 39
 archname64=''
42 40
 archname='armeb-linux-uclibc'
43 41
 archobjs=''
@@ -1151,6 +1149,8 @@ installsitelib='/usr/lib/perl5/5.20'
1151 1149
 nonxs_ext='Archive/Tar Attribute/Handlers AutoLoader B/Debug CGI CPAN CPAN/Meta CPAN/Meta/Requirements CPAN/Meta/YAML Carp Config/Perl/V Devel/SelfStubber Digest Dumpvalue Env Errno Exporter ExtUtils/CBuilder ExtUtils/Command ExtUtils/Constant ExtUtils/Install ExtUtils/MakeMaker ExtUtils/Manifest ExtUtils/Miniperl ExtUtils/ParseXS File/Fetch File/Find File/Path File/Temp FileCache Filter/Simple Getopt/Long HTTP/Tiny I18N/Collate I18N/LangTags IO/Compress IO/Socket/IP IO/Zlib IPC/Cmd IPC/Open3 JSON/PP Locale/Codes Locale/Maketext Locale/Maketext/Simple Math/BigInt Math/BigRat Math/Complex Memoize Module/Build Module/CoreList Module/Load Module/Load/Conditional Module/Loaded Module/Metadata NEXT Net/Ping Package/Constants Params/Check Parse/CPAN/Meta Perl/OSType PerlIO/via/QuotedPrint Pod/Checker Pod/Escapes Pod/Functions Pod/Html Pod/Parser Pod/Perldoc Pod/Simple Pod/Usage Safe Search/Dict SelfLoader Term/ANSIColor Term/Cap Term/Complete Term/ReadLine Test Test/Harness Test/Simple Text/Abbrev Text/Balanced Text/ParseWords Text/Tabs Thread/Queue Thread/Semaphore Tie/File Tie/Memoize Tie/RefHash Time/Local XSLoader autodie autouse base bignum constant encoding/warnings experimental if lib libnet parent perlfaq podlators version'
1152 1150
 privlib='/usr/lib/perl5/5.20'
1153 1151
 privlibexp='/usr/lib/perl5/5.20'
1152
+archlib='/usr/lib/perl5/5.20'
1153
+archlibexp='/usr/lib/perl5/5.20'
1154 1154
 version='5.20.0'
1155 1155
 version_patchlevel_string='version 20 subversion 0'
1156 1156
 PERL_VERSION=20

+ 2
- 2
lang/perl/files/config.sh-avr32.in View File

@@ -36,8 +36,6 @@ api_subversion='0'
36 36
 
37 37
 
38 38
 ar='ar'
39
-archlib=''
40
-archlibexp=''
41 39
 archname64=''
42 40
 archname='avr32-linux-uclibc'
43 41
 archobjs=''
@@ -1153,6 +1151,8 @@ installsitelib='/usr/lib/perl5/5.20'
1153 1151
 nonxs_ext='Archive/Tar Attribute/Handlers AutoLoader B/Debug CGI CPAN CPAN/Meta CPAN/Meta/Requirements CPAN/Meta/YAML Carp Config/Perl/V Devel/SelfStubber Digest Dumpvalue Env Errno Exporter ExtUtils/CBuilder ExtUtils/Command ExtUtils/Constant ExtUtils/Install ExtUtils/MakeMaker ExtUtils/Manifest ExtUtils/Miniperl ExtUtils/ParseXS File/Fetch File/Find File/Path File/Temp FileCache Filter/Simple Getopt/Long HTTP/Tiny I18N/Collate I18N/LangTags IO/Compress IO/Socket/IP IO/Zlib IPC/Cmd IPC/Open3 JSON/PP Locale/Codes Locale/Maketext Locale/Maketext/Simple Math/BigInt Math/BigRat Math/Complex Memoize Module/Build Module/CoreList Module/Load Module/Load/Conditional Module/Loaded Module/Metadata NEXT Net/Ping Package/Constants Params/Check Parse/CPAN/Meta Perl/OSType PerlIO/via/QuotedPrint Pod/Checker Pod/Escapes Pod/Functions Pod/Html Pod/Parser Pod/Perldoc Pod/Simple Pod/Usage Safe Search/Dict SelfLoader Term/ANSIColor Term/Cap Term/Complete Term/ReadLine Test Test/Harness Test/Simple Text/Abbrev Text/Balanced Text/ParseWords Text/Tabs Thread/Queue Thread/Semaphore Tie/File Tie/Memoize Tie/RefHash Time/Local XSLoader autodie autouse base bignum constant encoding/warnings experimental if lib libnet parent perlfaq podlators version'
1154 1152
 privlib='/usr/lib/perl5/5.20'
1155 1153
 privlibexp='/usr/lib/perl5/5.20'
1154
+archlib='/usr/lib/perl5/5.20'
1155
+archlibexp='/usr/lib/perl5/5.20'
1156 1156
 version='5.20.0'
1157 1157
 version_patchlevel_string='version 20 subversion 0'
1158 1158
 PERL_VERSION=20

+ 2
- 2
lang/perl/files/config.sh-i486.in View File

@@ -34,8 +34,6 @@ aphostname='/bin/hostname'
34 34
 api_revision='5'
35 35
 api_subversion='0'
36 36
 ar='ar'
37
-archlib=''
38
-archlibexp=''
39 37
 archname64=''
40 38
 archname='i386-linux-uclibc'
41 39
 archobjs=''
@@ -1136,6 +1134,8 @@ installsitelib='/usr/lib/perl5/5.20'
1136 1134
 nonxs_ext='Archive/Tar Attribute/Handlers AutoLoader B/Debug CGI CPAN CPAN/Meta CPAN/Meta/Requirements CPAN/Meta/YAML Carp Config/Perl/V Devel/SelfStubber Digest Dumpvalue Env Errno Exporter ExtUtils/CBuilder ExtUtils/Command ExtUtils/Constant ExtUtils/Install ExtUtils/MakeMaker ExtUtils/Manifest ExtUtils/Miniperl ExtUtils/ParseXS File/Fetch File/Find File/Path File/Temp FileCache Filter/Simple Getopt/Long HTTP/Tiny I18N/Collate I18N/LangTags IO/Compress IO/Socket/IP IO/Zlib IPC/Cmd IPC/Open3 JSON/PP Locale/Codes Locale/Maketext Locale/Maketext/Simple Math/BigInt Math/BigRat Math/Complex Memoize Module/Build Module/CoreList Module/Load Module/Load/Conditional Module/Loaded Module/Metadata NEXT Net/Ping Package/Constants Params/Check Parse/CPAN/Meta Perl/OSType PerlIO/via/QuotedPrint Pod/Checker Pod/Escapes Pod/Functions Pod/Html Pod/Parser Pod/Perldoc Pod/Simple Pod/Usage Safe Search/Dict SelfLoader Term/ANSIColor Term/Cap Term/Complete Term/ReadLine Test Test/Harness Test/Simple Text/Abbrev Text/Balanced Text/ParseWords Text/Tabs Thread/Queue Thread/Semaphore Tie/File Tie/Memoize Tie/RefHash Time/Local XSLoader autodie autouse base bignum constant encoding/warnings experimental if lib libnet parent perlfaq podlators version'
1137 1135
 privlib='/usr/lib/perl5/5.20'
1138 1136
 privlibexp='/usr/lib/perl5/5.20'
1137
+archlib='/usr/lib/perl5/5.20'
1138
+archlibexp='/usr/lib/perl5/5.20'
1139 1139
 version='5.20.0'
1140 1140
 version_patchlevel_string='version 20 subversion 0'
1141 1141
 PERL_VERSION=20

+ 2
- 2
lang/perl/files/config.sh-mips.in View File

@@ -36,8 +36,6 @@ api_subversion='0'
36 36
 
37 37
 
38 38
 ar='ar'
39
-archlib=''
40
-archlibexp=''
41 39
 archname64=''
42 40
 archname='mips-linux-uclibc'
43 41
 archobjs=''
@@ -1151,6 +1149,8 @@ installsitelib='/usr/lib/perl5/5.20'
1151 1149
 nonxs_ext='Archive/Tar Attribute/Handlers AutoLoader B/Debug CGI CPAN CPAN/Meta CPAN/Meta/Requirements CPAN/Meta/YAML Carp Config/Perl/V Devel/SelfStubber Digest Dumpvalue Env Errno Exporter ExtUtils/CBuilder ExtUtils/Command ExtUtils/Constant ExtUtils/Install ExtUtils/MakeMaker ExtUtils/Manifest ExtUtils/Miniperl ExtUtils/ParseXS File/Fetch File/Find File/Path File/Temp FileCache Filter/Simple Getopt/Long HTTP/Tiny I18N/Collate I18N/LangTags IO/Compress IO/Socket/IP IO/Zlib IPC/Cmd IPC/Open3 JSON/PP Locale/Codes Locale/Maketext Locale/Maketext/Simple Math/BigInt Math/BigRat Math/Complex Memoize Module/Build Module/CoreList Module/Load Module/Load/Conditional Module/Loaded Module/Metadata NEXT Net/Ping Package/Constants Params/Check Parse/CPAN/Meta Perl/OSType PerlIO/via/QuotedPrint Pod/Checker Pod/Escapes Pod/Functions Pod/Html Pod/Parser Pod/Perldoc Pod/Simple Pod/Usage Safe Search/Dict SelfLoader Term/ANSIColor Term/Cap Term/Complete Term/ReadLine Test Test/Harness Test/Simple Text/Abbrev Text/Balanced Text/ParseWords Text/Tabs Thread/Queue Thread/Semaphore Tie/File Tie/Memoize Tie/RefHash Time/Local XSLoader autodie autouse base bignum constant encoding/warnings experimental if lib libnet parent perlfaq podlators version'
1152 1150
 privlib='/usr/lib/perl5/5.20'
1153 1151
 privlibexp='/usr/lib/perl5/5.20'
1152
+archlib='/usr/lib/perl5/5.20'
1153
+archlibexp='/usr/lib/perl5/5.20'
1154 1154
 version='5.20.0'
1155 1155
 version_patchlevel_string='version 20 subversion 0'
1156 1156
 PERL_VERSION=20

+ 2
- 2
lang/perl/files/config.sh-mipsel.in View File

@@ -34,8 +34,6 @@ aphostname='/bin/hostname'
34 34
 api_revision='5'
35 35
 api_subversion='0'
36 36
 ar='ar'
37
-archlib=''
38
-archlibexp=''
39 37
 archname64=''
40 38
 archname='mipsel-linux-uclibc'
41 39
 archobjs=''
@@ -1136,6 +1134,8 @@ installsitelib='/usr/lib/perl5/5.20'
1136 1134
 nonxs_ext='Archive/Tar Attribute/Handlers AutoLoader B/Debug CGI CPAN CPAN/Meta CPAN/Meta/Requirements CPAN/Meta/YAML Carp Config/Perl/V Devel/SelfStubber Digest Dumpvalue Env Errno Exporter ExtUtils/CBuilder ExtUtils/Command ExtUtils/Constant ExtUtils/Install ExtUtils/MakeMaker ExtUtils/Manifest ExtUtils/Miniperl ExtUtils/ParseXS File/Fetch File/Find File/Path File/Temp FileCache Filter/Simple Getopt/Long HTTP/Tiny I18N/Collate I18N/LangTags IO/Compress IO/Socket/IP IO/Zlib IPC/Cmd IPC/Open3 JSON/PP Locale/Codes Locale/Maketext Locale/Maketext/Simple Math/BigInt Math/BigRat Math/Complex Memoize Module/Build Module/CoreList Module/Load Module/Load/Conditional Module/Loaded Module/Metadata NEXT Net/Ping Package/Constants Params/Check Parse/CPAN/Meta Perl/OSType PerlIO/via/QuotedPrint Pod/Checker Pod/Escapes Pod/Functions Pod/Html Pod/Parser Pod/Perldoc Pod/Simple Pod/Usage Safe Search/Dict SelfLoader Term/ANSIColor Term/Cap Term/Complete Term/ReadLine Test Test/Harness Test/Simple Text/Abbrev Text/Balanced Text/ParseWords Text/Tabs Thread/Queue Thread/Semaphore Tie/File Tie/Memoize Tie/RefHash Time/Local XSLoader autodie autouse base bignum constant encoding/warnings experimental if lib libnet parent perlfaq podlators version'
1137 1135
 privlib='/usr/lib/perl5/5.20'
1138 1136
 privlibexp='/usr/lib/perl5/5.20'
1137
+archlib='/usr/lib/perl5/5.20'
1138
+archlibexp='/usr/lib/perl5/5.20'
1139 1139
 version='5.20.0'
1140 1140
 version_patchlevel_string='version 20 subversion 0'
1141 1141
 PERL_VERSION=20

+ 2
- 2
lang/perl/files/config.sh-powerpc.in View File

@@ -36,8 +36,6 @@ api_subversion='0'
36 36
 
37 37
 
38 38
 ar='ar'
39
-archlib=''
40
-archlibexp=''
41 39
 archname64=''
42 40
 archname='powerpc-linux-uclibc'
43 41
 archobjs=''
@@ -1151,6 +1149,8 @@ installsitelib='/usr/lib/perl5/5.20'
1151 1149
 nonxs_ext='Archive/Tar Attribute/Handlers AutoLoader B/Debug CGI CPAN CPAN/Meta CPAN/Meta/Requirements CPAN/Meta/YAML Carp Config/Perl/V Devel/SelfStubber Digest Dumpvalue Env Errno Exporter ExtUtils/CBuilder ExtUtils/Command ExtUtils/Constant ExtUtils/Install ExtUtils/MakeMaker ExtUtils/Manifest ExtUtils/Miniperl ExtUtils/ParseXS File/Fetch File/Find File/Path File/Temp FileCache Filter/Simple Getopt/Long HTTP/Tiny I18N/Collate I18N/LangTags IO/Compress IO/Socket/IP IO/Zlib IPC/Cmd IPC/Open3 JSON/PP Locale/Codes Locale/Maketext Locale/Maketext/Simple Math/BigInt Math/BigRat Math/Complex Memoize Module/Build Module/CoreList Module/Load Module/Load/Conditional Module/Loaded Module/Metadata NEXT Net/Ping Package/Constants Params/Check Parse/CPAN/Meta Perl/OSType PerlIO/via/QuotedPrint Pod/Checker Pod/Escapes Pod/Functions Pod/Html Pod/Parser Pod/Perldoc Pod/Simple Pod/Usage Safe Search/Dict SelfLoader Term/ANSIColor Term/Cap Term/Complete Term/ReadLine Test Test/Harness Test/Simple Text/Abbrev Text/Balanced Text/ParseWords Text/Tabs Thread/Queue Thread/Semaphore Tie/File Tie/Memoize Tie/RefHash Time/Local XSLoader autodie autouse base bignum constant encoding/warnings experimental if lib libnet parent perlfaq podlators version'
1152 1150
 privlib='/usr/lib/perl5/5.20'
1153 1151
 privlibexp='/usr/lib/perl5/5.20'
1152
+archlib='/usr/lib/perl5/5.20'
1153
+archlibexp='/usr/lib/perl5/5.20'
1154 1154
 version='5.20.0'
1155 1155
 version_patchlevel_string='version 20 subversion 0'
1156 1156
 PERL_VERSION=20

+ 47
- 6
lang/perl/perlmod.mk View File

@@ -2,23 +2,64 @@
2 2
 #
3 3
 
4 4
 # Build environment
5
-PERL_CMD := $(STAGING_DIR)/usr/bin/perl
6
-PERL_LIB := $(STAGING_DIR)/usr/lib/perl5/5.20
5
+HOST_PERL_PREFIX:=$(STAGING_DIR_HOST)/usr
6
+ifneq ($(CONFIG_USE_EGLIBC),)
7
+	EXTRA_LIBS:=bsd
8
+	EXTRA_LIBDIRS:=$(STAGING_DIR)/lib
9
+endif
10
+PERL_CMD:=$(STAGING_DIR_HOST)/usr/bin/perl5.20.0
7 11
 
8 12
 # Module install prefix
9
-PERL_SITELIB := /usr/lib/perl5/5.20
13
+PERL_SITELIB:=/usr/lib/perl5/5.20
10 14
 
11 15
 define perlmod/Configure
12 16
 	(cd $(PKG_BUILD_DIR); \
13
-	PERL5LIB=$(PERL_LIB) \
14 17
 	PERL_MM_USE_DEFAULT=1 \
15 18
 	$(2) \
16 19
 	$(PERL_CMD) Makefile.PL \
17 20
 		$(1) \
18
-		PERL_LIB=$(PERL_LIB) \
19
-		PERL_ARCHLIB=$(PERL_LIB) \
21
+		AR=ar \
22
+		CC=$(GNU_TARGET_NAME)-gcc \
23
+		CCCDLFLAGS=-fPIC \
24
+		CCDLFLAGS=-Wl,-E \
25
+		DLEXT=so \
26
+		DLSRC=dl_dlopen.xs \
27
+		EXE_EXT=" " \
28
+		FULL_AR=$(GNU_TARGET_NAME)-ar \
29
+		LD=$(GNU_TARGET_NAME)-gcc \
30
+		LDDLFLAGS="-shared $(TARGET_LDFLAGS)"  \
31
+		LDFLAGS="$(EXTRA_LIBDIRS:%=-L%) $(EXTRA_LIBS:%=-l%) " \
32
+		LIBC=" " \
33
+		LIB_EXT=.a \
34
+		OBJ_EXT=.o \
35
+		OSNAME=linux \
36
+		OSVERS=2.4.30 \
37
+		RANLIB=: \
38
+		SITELIBEXP=" " \
39
+		SITEARCHEXP=" " \
40
+		SO=so  \
41
+		VENDORARCHEXP=" " \
42
+		VENDORLIBEXP=" " \
43
+		SITEPREFIX=/usr \
44
+		INSTALLPRIVLIB=$(PERL_SITELIB) \
20 45
 		INSTALLSITELIB=$(PERL_SITELIB) \
46
+		INSTALLVENDORLIB=" " \
47
+		INSTALLARCHLIB=$(PERL_SITELIB) \
21 48
 		INSTALLSITEARCH=$(PERL_SITELIB) \
49
+		INSTALLVENDORARCH=" " \
50
+		INSTALLBIN=/usr/bin \
51
+		INSTALLSITEBIN=/usr/bin \
52
+		INSTALLVENDORBIN=" " \
53
+		INSTALLSCRIPT=/usr/bin \
54
+		INSTALLSITESCRIPT=/usr/bin \
55
+		INSTALLVENDORSCRIPT=" " \
56
+		INSTALLMAN1DIR=/usr/man/man1 \
57
+		INSTALLSITEMAN1DIR=/usr/man/man1 \
58
+		INSTALLVENDORMAN1DIR=" " \
59
+		INSTALLMAN3DIR=/usr/man/man3 \
60
+		INSTALLSITEMAN3DIR=/usr/man/man3 \
61
+		INSTALLVENDORMAN3DIR=" " \
62
+		LINKTYPE=dynamic \
22 63
 		DESTDIR=$(PKG_INSTALL_DIR) \
23 64
 	);
24 65
 endef