diff --git a/include/polarssl/oid.h b/include/polarssl/oid.h
index 27a3cce..e63c169 100644
--- a/include/polarssl/oid.h
+++ b/include/polarssl/oid.h
@@ -28,11 +28,21 @@
 #define POLARSSL_OID_H
 
 #include <string.h>
+#include "config.h"
 #include "asn1.h"
-#include "cipher.h"
-#include "md.h"
 #include "pk.h"
+
+#if defined(POLARSSL_CIPHER_C)
+#include "cipher.h"
+#endif
+
+#if defined(POLARSSL_MD_C)
+#include "md.h"
+#endif
+
+#if defined(POLARSSL_X509_PARSE_C)
 #include "x509.h"
+#endif
 
 #define POLARSSL_ERR_OID_NOT_FOUND                         -0x002E  /**< OID is not found. */
 
@@ -283,6 +293,7 @@
  */
 int oid_get_pk_alg( const asn1_buf *oid, pk_type_t *pk_alg );
 
+#if defined(POLARSSL_MD_C)
 /**
  * \brief          Translate SignatureAlgorithm OID into md_type and pk_type
  *
@@ -326,6 +337,7 @@
  * \return         0 if successful, or POLARSSL_ERR_OID_NOT_FOUND
  */
 int oid_get_md_alg( const asn1_buf *oid, md_type_t *md_alg );
+#endif /* POLARSSL_MD_C */
 
 /**
  * \brief          Translate Extended Key Usage OID into description
@@ -347,6 +359,7 @@
  */
 int oid_get_oid_by_md( md_type_t md_alg, const char **oid_str );
 
+#if defined(POLARSSL_CIPHER_C)
 /**
  * \brief          Translate encryption algorithm OID into cipher_type
  *
@@ -356,6 +369,7 @@
  * \return         0 if successful, or POLARSSL_ERR_OID_NOT_FOUND
  */
 int oid_get_cipher_alg( const asn1_buf *oid, cipher_type_t *cipher_alg );
+#endif /* POLARSSL_CIPHER_C */
 
 #if defined(POLARSSL_PKCS12_C)
 /**
diff --git a/library/oid.c b/library/oid.c
index 7c17901..c4edcc5 100644
--- a/library/oid.c
+++ b/library/oid.c
@@ -214,6 +214,7 @@
 
 #endif /* POLARSSL_X509_PARSE_C || POLARSSL_X509_WRITE_C */
 
+#if defined(POLARSSL_MD_C)
 /*
  * For SignatureAlgorithmIdentifier
  */
@@ -290,6 +291,7 @@
 
     return( POLARSSL_ERR_OID_NOT_FOUND );
 }
+#endif /* POLARSSL_MD_C */
 
 /*
  * For PublicKeyInfo
@@ -314,6 +316,7 @@
 FN_OID_TYPED_FROM_ASN1(oid_pk_alg_t, pk_alg, oid_pk_alg);
 FN_OID_GET_ATTR1(oid_get_pk_alg, oid_pk_alg_t, pk_alg, pk_type_t, pk_alg);
 
+#if defined(POLARSSL_CIPHER_C)
 /*
  * For PKCS#5 PBES2 encryption algorithm
  */
@@ -340,7 +343,9 @@
 
 FN_OID_TYPED_FROM_ASN1(oid_cipher_alg_t, cipher_alg, oid_cipher_alg);
 FN_OID_GET_ATTR1(oid_get_cipher_alg, oid_cipher_alg_t, cipher_alg, cipher_type_t, cipher_alg);
+#endif /* POLARSSL_CIPHER_C */
 
+#if defined(POLARSSL_MD_C)
 /*
  * For digestAlgorithm
  */
@@ -413,7 +418,9 @@
 
     return( POLARSSL_ERR_OID_NOT_FOUND );
 }
+#endif /* POLARSSL_MD_C */
 
+#if defined(POLARSSL_PKCS12_C)
 /*
  * For PKCS#12 PBEs
  */
@@ -441,6 +448,7 @@
 
 FN_OID_TYPED_FROM_ASN1(oid_pkcs12_pbe_alg_t, pkcs12_pbe_alg, oid_pkcs12_pbe_alg);
 FN_OID_GET_ATTR2(oid_get_pkcs12_pbe_alg, oid_pkcs12_pbe_alg_t, pkcs12_pbe_alg, md_type_t, md_alg, cipher_type_t, cipher_alg);
+#endif /* POLARSSL_PKCS12_C */
 
 #if defined _MSC_VER && !defined snprintf
 #include <stdarg.h>
