Thank you for responding.  Below is the diff of the curl Makefile, against
that included in the Attitude Adjustment v12.09 packages
here<https://dev.openwrt.org/browser/branches/packages_12.09/libs/curl/Makefile>
.

Note that the addition of "-lm" to libraries for curl to link to came from
my own research in pending OpenWRT issues about compiling curl with
cyassl.  However, the error about long long size mismatch occurs whether
libm.so is included or not.

Index: libs/curl/Makefile
===================================================================
--- libs/curl/Makefile    (revision 36652)
+++ libs/curl/Makefile    (working copy)
@@ -43,7 +43,7 @@
   $(call Package/curl/Default)
   SECTION:=libs
   CATEGORY:=Libraries
-  DEPENDS:=+libopenssl +zlib
+  DEPENDS:=+libcyassl +zlib
   TITLE:=A client-side URL transfer library
 endef

@@ -70,7 +70,8 @@
     --enable-tftp \
     --disable-verbose \
     --with-random="/dev/urandom" \
-    --with-ssl="$(STAGING_DIR)/usr" \
+    --with-cyassl="$(STAGING_DIR)/usr" \
+    --without-ssl
     --without-ca-bundle \
     --without-gnutls \
     --without-krb4 \
@@ -81,7 +82,7 @@
     $(call autoconf_bool,CONFIG_IPV6,ipv6) \

 CONFIGURE_VARS += \
-    LIBS="-lcrypto -lssl -lz" \
+    LIBS="-lm -lcyassl -lz" \
     CC="$(filter-out ccache,$(TARGET_CC))"

 define Build/Compile

On Fri, May 17, 2013 at 2:10 AM, Massimo Vellucci <[email protected]> wrote:

> CyaSSL must determine the environment to recognize the size of the types,
> there is a conflict on the size of the long type. Can you attach the
> changes on curl makefile for using CyaSSL ?
>
>
>
> 2013/5/16 Ben West <[email protected]>
>
>> Thank you for sharing this patch!
>>
>> I'm trying this very patch to see if I can use cyassl with curl, instead
>> of openssl.  (cyassl v1.6.5 is apparently old enough that the current
>> version of curl can no longer use libcyassl.so.)
>>
>> However, my build on ar71xx target fails when libcurl tries to link to
>> libcyassl on the rather esoteric error "bad math long / long long
>> settings."  Are there platform limitations to the new version of cyassl?
>>
>> OpenWrt-libtool: compile:  mips-openwrt-linux-uclibc-gcc -DHAVE_CONFIG_H
>> -I../include/curl -I../include -I../include -I../lib -I../lib
>> -DCURL_HIDDEN_SYMBOLS -isystem
>> /blah/blah/openwrt/staging_dir/target-mips_r2_uClibc-0.9.33.2/usr/include
>> -isystem
>> /blah/blah/openwrt/staging_dir/target-mips_r2_uClibc-0.9.33.2/include
>> -isystem
>> /blah/blah/openwrt/staging_dir/toolchain-mips_r2_gcc-4.7-linaro_uClibc-0.9.33.2/usr/include
>> -isystem
>> /blah/blah/openwrt/staging_dir/toolchain-mips_r2_gcc-4.7-linaro_uClibc-0.9.33.2/include
>> -I/blah/blah/openwrt/staging_dir/target-mips_r2_uClibc-0.9.33.2/usr/include
>> -I/blah/blah/openwrt/staging_dir/target-mips_r2_uClibc-0.9.33.2/usr/include
>> -fvisibility=hidden -Os -pipe -mips32r2 -mtune=mips32r2 -fno-caller-saves
>> -funit-at-a-time -fhonour-copts -Wno-error=unused-but-set-variable
>> -msoft-float -fpic -Wno-system-headers -MT libcurl_la-cyassl.lo -MD -MP -MF
>> .deps/libcurl_la-cyassl.Tpo -c cyassl.c  -fPIC -DPIC -o
>> .libs/libcurl_la-cyassl.o
>> In file included from
>> /blah/blah/openwrt/staging_dir/target-mips_r2_uClibc-0.9.33.2/usr/include/cyassl/ctaocrypt/error.h:26:0,
>>                  from
>> /blah/blah/openwrt/staging_dir/target-mips_r2_uClibc-0.9.33.2/usr/include/cyassl/error.h:26,
>>                  from cyassl.c:53:
>> /blah/blah/openwrt/staging_dir/target-mips_r2_uClibc-0.9.33.2/usr/include/cyassl/ctaocrypt/types.h:274:6:
>> error: #error "bad math long / long long settings"
>> /blah/blah/openwrt/staging_dir/target-mips_r2_uClibc-0.9.33.2/usr/include/cyassl/ctaocrypt/types.h:276:1:
>> error: expected identifier before '}' token
>> make[5]: *** [libcurl_la-cyassl.lo] Error 1
>>
>> The caveat, however, is that I'm trying to compile the newer cyassl for
>> Attitude Adjustment v36608, not trunk.  Not sure if that would make a
>> difference for this error.
>>
>> On Sun, May 5, 2013 at 5:50 AM, Massimo Vellucci <[email protected]>wrote:
>>
>>> Sorry I made a big mistake, I attached the wrong patch. For x86 you
>>> need to disable the PIC optimization otherwise you get an error at
>>> compile time.
>>>
>>>
>>> diff -r -u a/package/libs/cyassl/Makefile b/package/libs/cyassl/Makefile
>>> --- a/package/libs/cyassl/Makefile    2013-03-21 08:08:18.000000000 +0100
>>> +++ b/package/libs/cyassl/Makefile    2013-05-05 10:27:06.000000000+0200
>>>
>>> @@ -8,16 +8,14 @@
>>>  include $(TOPDIR)/rules.mk
>>>
>>>  PKG_NAME:=cyassl
>>> -PKG_VERSION:=1.6.5
>>> -PKG_RELEASE:=2
>>> +PKG_VERSION:=2.6.0
>>> +PKG_RELEASE:=1
>>>
>>>  PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).zip
>>>  PKG_SOURCE_URL:=http://www.yassl.com/
>>> -PKG_MD5SUM:=98c2c6350acf1d089756a1de9ccb9903
>>> +PKG_MD5SUM:=9c48fd4ab677c11b4612fb4eb15444d9
>>>
>>> -PKG_FIXUP:=patch-libtool
>>>  PKG_INSTALL:=1
>>> -PKG_BUILD_PARALLEL:=1
>>>
>>>  include $(INCLUDE_DIR)/package.mk
>>>
>>> @@ -37,8 +35,12 @@
>>>
>>>  TARGET_CFLAGS += $(FPIC)
>>>
>>>  CONFIGURE_ARGS += \
>>> -       --without-zlib \
>>> -       --enable-singleThreaded
>>> +       --without-pic \
>>>
>>> +       --enable-dtls \
>>> +       --enable-static \
>>> +       --enable-opensslextra \
>>> +       --enable-singlethreaded \
>>>
>>> +       --disable-examples
>>>
>>>  define Build/InstallDev
>>>         $(INSTALL_DIR) $(1)/usr/include
>>>
>>>
>>>
>>> I'm sorry again for the mistake
>>> Massimo
>>>
>>>
>>>
>>>
>>>
>>> _______________________________________________
>>> openwrt-devel mailing list
>>> [email protected]
>>> https://lists.openwrt.org/mailman/listinfo/openwrt-devel
>>>
>>>
>>
>>
>> --
>> Ben West
>> http://gowasabi.net
>> [email protected]
>> 314-246-9434
>>
>> _______________________________________________
>> openwrt-devel mailing list
>> [email protected]
>> https://lists.openwrt.org/mailman/listinfo/openwrt-devel
>>
>>
>
> _______________________________________________
> openwrt-devel mailing list
> [email protected]
> https://lists.openwrt.org/mailman/listinfo/openwrt-devel
>
>


-- 
Ben West
http://gowasabi.net
[email protected]
314-246-9434
_______________________________________________
openwrt-devel mailing list
[email protected]
https://lists.openwrt.org/mailman/listinfo/openwrt-devel

Reply via email to