added : xxhash namespace enforced from xxhash.h.
added : xxhash namespace test. removed : -DXXH_NAMESPACE
This commit is contained in:
parent
8ded0b84aa
commit
666398e7ed
@ -46,7 +46,7 @@ PREFIX ?= /usr/local
|
||||
LIBDIR ?= $(PREFIX)/lib
|
||||
INCLUDEDIR=$(PREFIX)/include
|
||||
|
||||
CPPFLAGS= -I. -I./common -DXXH_NAMESPACE=ZSTD_
|
||||
CPPFLAGS= -I. -I./common
|
||||
CFLAGS ?= -O3
|
||||
CFLAGS += -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 \
|
||||
-Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef
|
||||
|
@ -71,6 +71,10 @@ XXH32 6.8 GB/s 6.0 GB/s
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
#ifndef XXH_NAMESPACE
|
||||
# define XXH_NAMESPACE ZSTD_ /* Zstandard specific */
|
||||
#endif
|
||||
|
||||
|
||||
/* ****************************
|
||||
* Definitions
|
||||
|
@ -44,7 +44,7 @@ else
|
||||
ALIGN_LOOP =
|
||||
endif
|
||||
|
||||
CPPFLAGS= -I$(ZSTDDIR) -I$(ZSTDDIR)/common -I$(ZSTDDIR)/dictBuilder -DXXH_NAMESPACE=ZSTD_
|
||||
CPPFLAGS= -I$(ZSTDDIR) -I$(ZSTDDIR)/common -I$(ZSTDDIR)/dictBuilder
|
||||
CFLAGS ?= -O3
|
||||
CFLAGS += -Wall -Wextra -Wcast-qual -Wcast-align -Wshadow -Wstrict-aliasing=1 \
|
||||
-Wswitch-enum -Wdeclaration-after-statement -Wstrict-prototypes -Wundef
|
||||
|
1
tests/.gitignore
vendored
1
tests/.gitignore
vendored
@ -2,6 +2,7 @@
|
||||
zstdtest
|
||||
speedTest
|
||||
versionsTest
|
||||
namespaceTest
|
||||
|
||||
# Local script
|
||||
startSpeedTest
|
||||
|
@ -25,18 +25,22 @@
|
||||
# versionstest : Compatibility test between zstd versions stored on Github (v0.1+)
|
||||
# ##########################################################################
|
||||
|
||||
PYTHON ?= python3
|
||||
TESTDIR := versionsTest
|
||||
PYTHON ?= python3
|
||||
TESTARTEFACT := versionsTest namespaceTest
|
||||
|
||||
.PHONY: default all clean versionsTest
|
||||
.PHONY: default all clean namespaceTest versionsTest
|
||||
|
||||
default: all
|
||||
|
||||
all: versionsTest
|
||||
all: namespaceTest versionsTest
|
||||
|
||||
namespaceTest:
|
||||
if $(CC) namespaceTest.c ../lib/common/xxhash.c -o $@ ; then echo compilation should fail; exit 1 ; fi
|
||||
$(RM) $@
|
||||
|
||||
versionsTest:
|
||||
$(PYTHON) test-zstd-versions.py
|
||||
|
||||
clean:
|
||||
@$(RM) -fR $(TESTDIR)
|
||||
@$(RM) -fR $(TESTARTEFACT)
|
||||
@echo Cleaning completed
|
||||
|
38
tests/namespaceTest.c
Normal file
38
tests/namespaceTest.c
Normal file
@ -0,0 +1,38 @@
|
||||
/* ##########################################################################
|
||||
# namespaceTest
|
||||
# ensure xxhash namespace emulation is properly triggered
|
||||
# Copyright (C) Yann Collet 2016
|
||||
#
|
||||
# GPL v2 License
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation; either version 2 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License along
|
||||
# with this program; if not, write to the Free Software Foundation, Inc.,
|
||||
# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
|
||||
#
|
||||
# You can contact the author at :
|
||||
# - zstd homepage : http://www.zstd.net/
|
||||
# ########################################################################*/
|
||||
|
||||
|
||||
#include <stddef.h> /* size_t */
|
||||
#include <string.h> /* strlen */
|
||||
|
||||
/* symbol definition */
|
||||
extern unsigned XXH32(const void* src, size_t srcSize, unsigned seed);
|
||||
|
||||
int main(int argc, const char** argv)
|
||||
{
|
||||
const char* exename = argv[0];
|
||||
unsigned result = XXH32(exename, strlen(exename), argc);
|
||||
return !result;
|
||||
}
|
Loading…
Reference in New Issue
Block a user