1#/* 2# * Copyright (c) 2017-2018 Cavium, Inc. 3# * All rights reserved. 4# * 5# * Redistribution and use in source and binary forms, with or without 6# * modification, are permitted provided that the following conditions 7# * are met: 8# * 9# * 1. Redistributions of source code must retain the above copyright 10# * notice, this list of conditions and the following disclaimer. 11# * 2. Redistributions in binary form must reproduce the above copyright 12# * notice, this list of conditions and the following disclaimer in the 13# * documentation and/or other materials provided with the distribution. 14# * 15# * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 16# * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 17# * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 18# * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE 19# * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 20# * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 21# * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS 22# * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN 23# * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) 24# * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE 25# * POSSIBILITY OF SUCH DAMAGE. 26# */ 27#/* 28# * File : Makefile 29# * Author : David C Somayajulu, Cavium, Inc., San Jose, CA 95131. 30# */ 31# 32# $FreeBSD$ 33# 34 35#.PATH: ${.CURDIR} 36#OFEDDIR= /usr/src/sys 37#ETHDRVR=${.CURDIR}/../qlnxe 38 39.PATH: ${SRCTOP}/sys/dev/qlnx/qlnxr 40OFEDDIR=${SRCTOP}/sys 41ETHDRVR=${SRCTOP}/sys/dev/qlnx/qlnxe 42 43KMOD= qlnxr 44SRCS= \ 45 qlnxr_os.c\ 46 qlnxr_cm.c\ 47 qlnxr_verbs.c 48SRCS+= ${LINUXKPI_GENSRCS} 49SRCS+= opt_inet.h opt_inet6.h 50 51.include <bsd.kmod.mk> 52 53CFLAGS+= -I${.CURDIR} 54CFLAGS+= -I${ETHDRVR} 55CFLAGS+= -I${OFEDDIR}/ofed/include 56CFLAGS+= -I${OFEDDIR}/ofed/include/uapi 57CFLAGS+= ${LINUXKPI_INCLUDES} 58 59CFLAGS+= -DLINUX_TYPES_DEFINED 60CFLAGS+= -DCONFIG_INFINIBAND_USER_MEM 61CFLAGS+= -DINET6 -DINET 62#CFLAGS+= -DDEFINE_NO_IP_BASED_GIDS 63 64CWARNEXTRA += -Wno-cast-qual 65CWARNEXTRA += -Wno-unused-function 66.if ${COMPILER_TYPE} == "clang" 67CWARNEXTRA += -Wno-gnu-variable-sized-type-not-at-end 68.endif 69CWARNEXTRA += -Wno-missing-prototypes 70CWARNEXTRA += ${NO_WCONSTANT_CONVERSION} 71CWARNEXTRA += -Wno-format 72 73CWARNEXTRA += ${NO_WSHIFT_COUNT_OVERFLOW} 74CWARNEXTRA += -Wno-empty-body 75 76CFLAGS += -DQLNX_DEBUG 77CFLAGS += -DECORE_PACKAGE 78CFLAGS += -DCONFIG_ECORE_L2 79CFLAGS += -DCONFIG_ECORE_LL2 80CFLAGS += -DCONFIG_ECORE_ROCE 81CFLAGS += -DCONFIG_ECORE_IWARP 82CFLAGS += -DCONFIG_ECORE_RDMA 83CFLAGS += -DECORE_CONFIG_DIRECT_HWFN 84CFLAGS += -g -fno-inline 85CFLAGS += -DQLNX_RDMA 86 87CFLAGS+= -Wno-cast-qual -Wno-pointer-arith 88 89