Implement NO_SHA224 in MD layer as well
diff --git a/library/md.c b/library/md.c
index 303cdcb..b3525be 100644
--- a/library/md.c
+++ b/library/md.c
@@ -61,8 +61,10 @@
 
 #if defined(MBEDTLS_SHA256_C)
         MBEDTLS_MD_SHA256,
+#if !defined(MBEDTLS_SHA256_NO_SHA224)
         MBEDTLS_MD_SHA224,
 #endif
+#endif /* MBEDTLS_SHA256_C */
 
 #if defined(MBEDTLS_SHA1_C)
         MBEDTLS_MD_SHA1,
@@ -119,11 +121,13 @@
         return mbedtls_md_info_from_type( MBEDTLS_MD_SHA1 );
 #endif
 #if defined(MBEDTLS_SHA256_C)
+#if !defined(MBEDTLS_SHA256_NO_SHA224)
     if( !strcmp( "SHA224", md_name ) )
         return mbedtls_md_info_from_type( MBEDTLS_MD_SHA224 );
+#endif
     if( !strcmp( "SHA256", md_name ) )
         return mbedtls_md_info_from_type( MBEDTLS_MD_SHA256 );
-#endif
+#endif /* MBEDTLS_SHA256_C */
 #if defined(MBEDTLS_SHA512_C)
     if( !strcmp( "SHA384", md_name ) )
         return mbedtls_md_info_from_type( MBEDTLS_MD_SHA384 );
@@ -158,11 +162,13 @@
             return( &mbedtls_sha1_info );
 #endif
 #if defined(MBEDTLS_SHA256_C)
+#if !defined(MBEDTLS_SHA256_NO_SHA224)
         case MBEDTLS_MD_SHA224:
             return( &mbedtls_sha224_info );
+#endif
         case MBEDTLS_MD_SHA256:
             return( &mbedtls_sha256_info );
-#endif
+#endif /* MBEDTLS_SHA256_C */
 #if defined(MBEDTLS_SHA512_C)
         case MBEDTLS_MD_SHA384:
             return( &mbedtls_sha384_info );
diff --git a/library/md_wrap.c b/library/md_wrap.c
index 32f0871..0f8132f 100644
--- a/library/md_wrap.c
+++ b/library/md_wrap.c
@@ -391,10 +391,12 @@
  */
 #if defined(MBEDTLS_SHA256_C)
 
+#if !defined(MBEDTLS_SHA256_NO_SHA224)
 static int sha224_starts_wrap( void *ctx )
 {
     return( mbedtls_sha256_starts_ret( (mbedtls_sha256_context *) ctx, 1 ) );
 }
+#endif /* !MBEDTLS_SHA256_NO_SHA224 */
 
 static int sha224_update_wrap( void *ctx, const unsigned char *input,
                                 size_t ilen )
@@ -409,11 +411,13 @@
                                        output ) );
 }
 
+#if !defined(MBEDTLS_SHA256_NO_SHA224)
 static int sha224_wrap( const unsigned char *input, size_t ilen,
                         unsigned char *output )
 {
     return( mbedtls_sha256_ret( input, ilen, output, 1 ) );
 }
+#endif /* !MBEDTLS_SHA256_NO_SHA224 */
 
 static void *sha224_ctx_alloc( void )
 {
@@ -443,6 +447,7 @@
                                              data ) );
 }
 
+#if !defined(MBEDTLS_SHA256_NO_SHA224)
 const mbedtls_md_info_t mbedtls_sha224_info = {
     MBEDTLS_MD_SHA224,
     "SHA224",
@@ -457,6 +462,7 @@
     sha224_clone_wrap,
     sha224_process_wrap,
 };
+#endif /* !MBEDTLS_SHA256_NO_SHA224 */
 
 static int sha256_starts_wrap( void *ctx )
 {