Wow, this is so horrible! I really don't know why people come up with this idea of including C files in other C files.

Funny enough, it seems to work on the lwIP sources without problems, does it?

Keep in mind though that this is *not* how the sources were intended to use and I'm not prepared to fix naming clashes (if there should be any in the future when including C files in C files).

I'd strongly suggest to fix the build process here!

Simon


Amit Ashara wrote:
Hello Billy,

Try the following two files.

Regards
Amit

On Fri, May 19, 2017 at 4:30 PM, billium <bill...@bucknall.me.uk <mailto:bill...@bucknall.me.uk>> wrote:

    Thanks Simon

    This is what I mean, this is tivaware/utils/lwiplib.c

    
//*****************************************************************************
    //
    // lwiplib.c - lwIP TCP/IP Library Abstraction Layer.
    //
    // Copyright (c) 2008-2017 Texas Instruments Incorporated. All
    rights reserved.
    // Software License Agreement
    //
    // Texas Instruments (TI) is supplying this software for use
    solely and
    // exclusively on TI's microcontroller products. The software is
    owned by
    // TI and/or its suppliers, and is protected under applicable
    copyright
    // laws. You may not combine this software with "viral" open-source
    // software in order to form a larger program.
    //
    // THIS SOFTWARE IS PROVIDED "AS IS" AND WITH ALL FAULTS.
    // NO WARRANTIES, WHETHER EXPRESS, IMPLIED OR STATUTORY,
    INCLUDING, BUT
    // NOT LIMITED TO, IMPLIED WARRANTIES OF MERCHANTABILITY AND
    FITNESS FOR
    // A PARTICULAR PURPOSE APPLY TO THIS SOFTWARE. TI SHALL NOT,
    UNDER ANY
    // CIRCUMSTANCES, BE LIABLE FOR SPECIAL, INCIDENTAL, OR CONSEQUENTIAL
    // DAMAGES, FOR ANY REASON WHATSOEVER.
    //
    // This is part of revision 2.1.4.178 of the Tiva Utility Library.
    //
    
//*****************************************************************************

    
//*****************************************************************************
    //
    // Ensure that the lwIP compile time options are included first.
    //
    
//*****************************************************************************
    #include <stdint.h>
    #include <stdbool.h>
    #include "utils/lwiplib.h"

    
//*****************************************************************************
    //
    // Ensure that ICMP checksum offloading is enabled; otherwise the
    TM4C129
    // driver will not operate correctly.
    //
    
//*****************************************************************************
    #ifndef LWIP_OFFLOAD_ICMP_CHKSUM
    #define LWIP_OFFLOAD_ICMP_CHKSUM 1
    #endif

    
//*****************************************************************************
    //
    // Include lwIP high-level API code.
    //
    
//*****************************************************************************
    #include "third_party/lwip-1.4.1/src/api/api_lib.c"
    #include "third_party/lwip-1.4.1/src/api/api_msg.c"
    #include "third_party/lwip-1.4.1/src/api/err.c"
    #include "third_party/lwip-1.4.1/src/api/netbuf.c"
    #include "third_party/lwip-1.4.1/src/api/netdb.c"
    #include "third_party/lwip-1.4.1/src/api/netifapi.c"
    #include "third_party/lwip-1.4.1/src/api/sockets.c"
    #include "third_party/lwip-1.4.1/src/api/tcpip.c"

    
//*****************************************************************************
    //
    // Include the core lwIP TCP/IP stack code.
    //
    
//*****************************************************************************
    #include "third_party/lwip-1.4.1/src/core/def.c"
    #include "third_party/lwip-1.4.1/src/core/dhcp.c"
    #include "third_party/lwip-1.4.1/src/core/dns.c"
    #include "third_party/lwip-1.4.1/src/core/init.c"
    #include "third_party/lwip-1.4.1/src/core/mem.c"
    #include "third_party/lwip-1.4.1/src/core/memp.c"
    #include "third_party/lwip-1.4.1/src/core/netif.c"
    #include "third_party/lwip-1.4.1/src/core/pbuf.c"
    #include "third_party/lwip-1.4.1/src/core/raw.c"
    #include "third_party/lwip-1.4.1/src/core/stats.c"
    #include "third_party/lwip-1.4.1/src/core/sys.c"
    #include "third_party/lwip-1.4.1/src/core/tcp.c"
    #include "third_party/lwip-1.4.1/src/core/tcp_in.c"
    #include "third_party/lwip-1.4.1/src/core/tcp_out.c"
    #include "third_party/lwip-1.4.1/src/core/timers.c"
    #include "third_party/lwip-1.4.1/src/core/udp.c"

    
//*****************************************************************************
    //
    // Include the IPV4 code.
    //
    
//*****************************************************************************
    #include "third_party/lwip-1.4.1/src/core/ipv4/autoip.c"
    #include "third_party/lwip-1.4.1/src/core/ipv4/icmp.c"
    #include "third_party/lwip-1.4.1/src/core/ipv4/igmp.c"
    #include "third_party/lwip-1.4.1/src/core/ipv4/inet.c"
    #include "third_party/lwip-1.4.1/src/core/ipv4/inet_chksum.c"
    #include "third_party/lwip-1.4.1/src/core/ipv4/ip.c"
    #include "third_party/lwip-1.4.1/src/core/ipv4/ip_addr.c"
    #include "third_party/lwip-1.4.1/src/core/ipv4/ip_frag.c"

    
//*****************************************************************************
    //
    // Include the IPV6 code.
    // Note:  Code is experimental and not ready for use.
    // References are included for completeness.
    //
    
//*****************************************************************************
    #if 0
    #include "third_party/lwip-1.4.1/src/core/ipv6/icmp6.c"
    #include "third_party/lwip-1.4.1/src/core/ipv6/inet6.c"
    #include "third_party/lwip-1.4.1/src/core/ipv6/ip6.c"
    #include "third_party/lwip-1.4.1/src/core/ipv6/ip6_addr.c"
    #endif

    
//*****************************************************************************
    //
    // Include the lwIP SNMP code.
    //
    
//*****************************************************************************
    #include "third_party/lwip-1.4.1/src/core/snmp/asn1_dec.c"
    #include "third_party/lwip-1.4.1/src/core/snmp/asn1_enc.c"
    #include "third_party/lwip-1.4.1/src/core/snmp/mib2.c"
    #include "third_party/lwip-1.4.1/src/core/snmp/mib_structs.c"
    #include "third_party/lwip-1.4.1/src/core/snmp/msg_in.c"
    #include "third_party/lwip-1.4.1/src/core/snmp/msg_out.c"

    
//*****************************************************************************
    //
    // Include the network interface code.
    //
    
//*****************************************************************************
    #include "third_party/lwip-1.4.1/src/netif/etharp.c"

    
//*****************************************************************************
    //
    // Include the network interface PPP code.
    //
    
//*****************************************************************************
    #include "third_party/lwip-1.4.1/src/netif/ppp/auth.c"
    #include "third_party/lwip-1.4.1/src/netif/ppp/chap.c"
    #include "third_party/lwip-1.4.1/src/netif/ppp/chpms.c"
    #include "third_party/lwip-1.4.1/src/netif/ppp/fsm.c"
    #include "third_party/lwip-1.4.1/src/netif/ppp/ipcp.c"

    etc

    <snip>

    Not a build problem!

    I'll see what replacing the 1.4.1s with 2.0.2s will do.

    Billy




    On 19/05/17 19:41, goldsi...@gmx.de <mailto:goldsi...@gmx.de> wrote:

        billium wrote:

            No this did not make much difference, but I had forgot the
            TI lwiplib.c file has loads of includes, that was pulling
            in 1.4.1 files in!


        How could it pull in 1.4.1 files? You should remove those
        files and fix your include paths so this can't happen. That's
        not a TI problem but a problem of how you set up your build
        project.


        Simon

        _______________________________________________
        lwip-users mailing list
        lwip-users@nongnu.org <mailto:lwip-users@nongnu.org>
        https://lists.nongnu.org/mailman/listinfo/lwip-users
        <https://lists.nongnu.org/mailman/listinfo/lwip-users>




    _______________________________________________
    lwip-users mailing list
    lwip-users@nongnu.org <mailto:lwip-users@nongnu.org>
    https://lists.nongnu.org/mailman/listinfo/lwip-users
    <https://lists.nongnu.org/mailman/listinfo/lwip-users>




_______________________________________________
lwip-users mailing list
lwip-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/lwip-users


_______________________________________________
lwip-users mailing list
lwip-users@nongnu.org
https://lists.nongnu.org/mailman/listinfo/lwip-users

Reply via email to