From 27f215cfa36de073b4582f7cf91999c988fce534 Mon Sep 17 00:00:00 2001 From: Richard Levitte Date: Fri, 8 Jul 2016 14:11:43 +0200 Subject: Reorganize .gitignore to make better use of its features It's possible to have a very few rules for some directories and trust that other patterns further along will take care of whatever is left. .gitignore should therefore be loosely organised from least generic to most generic, allowing things like this: # Keep any file with extensions, such as foo.c, bar.h, ... !/dir/*.* # .... # Remove all object files *.o *.obj With this change, we implement some very generic rules for what will and will not be ignored in the fuzz subdirectory, and truse that patterns later on (such as *.o, *.obj, *.exe) will take care of everything we didn't specifically specify for the fuzz subdirectory. Reviewed-by: Rich Salz --- .gitignore | 135 +++++++++++++++++++++++++++++++------------------------------ 1 file changed, 68 insertions(+), 67 deletions(-) (limited to '.gitignore') diff --git a/.gitignore b/.gitignore index a7ca425168..7deae39a78 100644 --- a/.gitignore +++ b/.gitignore @@ -1,12 +1,4 @@ -# Object files -*.o -*.obj - -# editor artefacts -*.swp -.#* -\#*# -*~ +# Ignore editor artefacts /.dir-locals.el # Top level excludes @@ -25,56 +17,20 @@ # *all* Makefiles Makefile -/test/*.ss -/test/*.srl -/test/.rnd -/test/test*.pem -/test/newkey.pem -/test/*.log -/test/buildtest_* - -# Certificate symbolic links -*.0 - # Links under apps /apps/CA.pl /apps/tsget /apps/tsget.pl /apps/md4.c - # Auto generated headers /crypto/buildinf.h /crypto/include/internal/*_conf.h /openssl/include/opensslconf.h /util/domd -# Auto generated assembly language source files -*.s -!/crypto/*/asm/*.s -/crypto/arm*.S -/crypto/*/*.S -*.asm -!/crypto/*/asm/*.asm - # Executables /apps/openssl -/fuzz/asn1 -/fuzz/asn1-test -/fuzz/asn1parse -/fuzz/asn1parse-test -/fuzz/bignum -/fuzz/bignum-test -/fuzz/bndiv -/fuzz/bndiv-test -/fuzz/conf -/fuzz/conf-test -/fuzz/cms -/fuzz/cms-test -/fuzz/ct -/fuzz/ct-test -/fuzz/server -/fuzz/server-test /test/sha256t /test/sha512t /test/gost2814789t @@ -92,35 +48,32 @@ Makefile /test/ssltest_old /test/x509aux /test/v3ext -*.so* -*.dylib* -*.dll* -*.exe -*.pyc -*.exp -*.lib -*.pdb -*.ilk -*.def -*.rc -*.res -# Exceptions -!/test/bctest -!/crypto/des/times/486-50.sol + +# Certain files that get created by tests on the fly +/test/*.ss +/test/*.srl +/test/.rnd +/test/test*.pem +/test/newkey.pem +/test/*.log +/test/buildtest_* + +# Fuzz stuff. +# Anything without an extension is an executable on Unix, so we keep files +# with extensions. And we keep the corpora subddir versioned as well. +# Anything more generic with extensions that should be ignored will be taken +# care of by general ignores for those extensions (*.o, *.obj, *.exe, ...) +/fuzz/* +!/fuzz/README* +!/fuzz/corpora +!/fuzz/*.* # Misc auto generated files /include/openssl/opensslconf.h /tools/c_rehash /tools/c_rehash.pl -/crypto/**/lib -/engines/**/lib -/ssl/**/lib -Makefile.save -*.bak /tags /TAGS -cscope.* -*.d /crypto.map /ssl.map @@ -168,3 +121,51 @@ cscope.* /test/fips_shatest.c /test/fips_test_suite.c /test/shatest.c + +##### Generic patterns +# Auto generated assembly language source files +*.s +!/crypto/*/asm/*.s +/crypto/arm*.S +/crypto/*/*.S +*.asm +!/crypto/*/asm/*.asm + +# Object files +*.o +*.obj + +# editor artefacts +*.swp +.#* +\#*# +*~ + +# Certificate symbolic links +*.0 + +# All kinds of executables +*.so +*.so.* +*.dylib +*.dylib.* +*.dll +*.dll.* +*.exe +*.pyc +*.exp +*.lib +*.pdb +*.ilk +*.def +*.rc +*.res + +# Misc generated stuff +Makefile.save +/crypto/**/lib +/engines/**/lib +/ssl/**/lib +*.bak +cscope.* +*.d -- cgit v1.2.3