diff --git a/av1/common/blockd.h b/av1/common/blockd.h
index 9364126..75297e2 100644
--- a/av1/common/blockd.h
+++ b/av1/common/blockd.h
@@ -846,7 +846,7 @@
 #endif  // USE_TXTYPE_SEARCH_FOR_SUB8X8_IN_CB4X4
   if (use_reduced_set)
     return is_inter ? EXT_TX_SET_DCT_IDTX : EXT_TX_SET_DTT4_IDTX;
-#if CONFIG_DAALA_TX32
+#if CONFIG_DAALA_TX_DST32
   if (tx_size_sqr_up > TX_32X32)
     return is_inter ? EXT_TX_SET_DCT_IDTX : EXT_TX_SET_DCTONLY;
   if (is_inter)
@@ -1082,7 +1082,7 @@
   return get_default_tx_type(plane_type, xd, block_raster_idx, tx_size);
 #endif  // FIXED_TX_TYPE
 
-#if CONFIG_DAALA_TX32
+#if CONFIG_DAALA_TX_DST32
   if (xd->lossless[mbmi->segment_id] || txsize_sqr_map[tx_size] > TX_32X32)
 #else
   if (xd->lossless[mbmi->segment_id] || txsize_sqr_map[tx_size] > TX_32X32 ||
diff --git a/av1/common/daala_tx.c b/av1/common/daala_tx.c
index d9de9fc..73f4596 100644
--- a/av1/common/daala_tx.c
+++ b/av1/common/daala_tx.c
@@ -6584,6 +6584,9 @@
   od_coeff tt;
   od_coeff tu;
   od_coeff tv;
+  #if !CONFIG_DAALA_TX_DST32
+    assert(0 && "od_bin_fdst32() called when !CONFIG_DAALA_TX_DST32");
+  #endif
   t0 = x[0*xstride];
   t1 = x[1*xstride];
   t2 = x[2*xstride];
@@ -6685,6 +6688,9 @@
   od_coeff tt;
   od_coeff tu;
   od_coeff tv;
+  #if !CONFIG_DAALA_TX_DST32
+    assert(0 && "od_bin_idst32() called when !CONFIG_DAALA_TX_DST32");
+  #endif
   t0 = y[0];
   tg = y[1];
   t8 = y[2];
diff --git a/build/cmake/aom_config_defaults.cmake b/build/cmake/aom_config_defaults.cmake
index de35525..747946d 100644
--- a/build/cmake/aom_config_defaults.cmake
+++ b/build/cmake/aom_config_defaults.cmake
@@ -120,6 +120,7 @@
 set(CONFIG_DAALA_TX4 0 CACHE NUMBER "AV1 experiment flag.")
 set(CONFIG_DAALA_TX64 0 CACHE NUMBER "AV1 experiment flag.")
 set(CONFIG_DAALA_TX8 0 CACHE NUMBER "AV1 experiment flag.")
+set(CONFIG_DAALA_TX_DST32 0 CACHE NUMBER "AV1 experiment flag.")
 set(CONFIG_DAALA_TX_DST8 0 CACHE NUMBER "AV1 experiment flag.")
 set(CONFIG_DCT_ONLY 0 CACHE NUMBER "AV1 experiment flag.")
 set(CONFIG_DEBLOCK_13TAP 1 CACHE NUMBER "AV1 experiment flag.")
diff --git a/build/cmake/aom_experiment_deps.cmake b/build/cmake/aom_experiment_deps.cmake
index f2707c2..d728487 100644
--- a/build/cmake/aom_experiment_deps.cmake
+++ b/build/cmake/aom_experiment_deps.cmake
@@ -51,6 +51,7 @@
      set(CONFIG_DAALA_TX16 1)
      set(CONFIG_DAALA_TX32 1)
      set(CONFIG_DAALA_TX64 1)
+     set(CONFIG_DAALA_TX_DST32 1)
   endif ()
 
   if (CONFIG_DAALA_TX_DST8)
@@ -60,6 +61,13 @@
     endif ()
   endif ()
 
+  if (CONFIG_DAALA_TX_DST32)
+    if (NOT CONFIG_DAALA_TX32)
+      set(CONFIG_DAALA_TX_DST32 0)
+      message("--- DAALA_TX_DST32 requires DAALA_TX32: disabled DAALA_TX_DST32")
+    endif ()
+  endif ()
+
   if (CONFIG_DAALA_TX64)
     if (NOT CONFIG_TX64X64)
       set(CONFIG_DAALA_TX64 0)
diff --git a/configure b/configure
index 31dab6f..9d300b8 100755
--- a/configure
+++ b/configure
@@ -280,6 +280,7 @@
     daala_tx32
     daala_tx64
     daala_tx_dst8
+    daala_tx_dst32
     frame_size
     ext_delta_q
     adapt_scan
@@ -560,6 +561,7 @@
       enable_feature daala_tx16
       enable_feature daala_tx32
       enable_feature daala_tx64
+      ! disabled daala_tx_dst32 && enable_feature daala_tx_dst32
     fi
     if enabled daala_tx64 && ! enabled tx64x64; then
       log_echo "daala_tx64 requires tx64x64, so disabling daala_tx64"
@@ -569,6 +571,10 @@
       log_echo "daala_tx_dst8 requires daala_tx8, so disabling daala_tx_dst8"
       disable_feature daala_tx_dst8
     fi
+    if enabled daala_tx_dst32 && ! enabled daala_tx32; then
+      log_echo "daala_tx_dst32 requires daala_tx32, so disabling daala_tx_dst32"
+      disable_feature daala_tx_dst32
+    fi
     if enabled daala_tx4 || enabled daala_tx8 || enabled daala_tx16 ||
         enabled daala_tx32 || enabled daala_tx64; then
       disable_feature txmg
