Alright let's do this step by step... I don't know how much you know so, I'm going to make this a simple as possible. If you're offended, I'm sorry.
Precheck... This is for the latest versions of Dwarf Fortress. 0.31.01 to 0.31.06 (and on most likely) It WILL NOT work for 40d and below.
All of the work is going to take place in the Dwarf Fortress -> raw -> objects folder.
Step 1 - The building.
-You should have a file named building_custom.txt (you may not see the .txt)
-Open this file and add your building. The should look exactly like this now...
building_custom
[OBJECT:BUILDING]
[BUILDING_WORKSHOP:SOAP_MAKER]
[NAME:Soap Maker's Workshop]
[NAME_COLOR:7:0:1]
[DIM:3:3]
[WORK_LOCATION:2:2]
[BUILD_LABOR:SOAP_MAKER]
[BUILD_KEY:CUSTOM_SHIFT_S]
[BLOCK:1:0:0:0]
[BLOCK:2:0:0:0]
[BLOCK:3:0:0:0]
[TILE:0:1:' ':' ':150]
[TILE:0:2:' ':' ':'/']
[TILE:0:3:'-':' ':' ']
[COLOR:0:1:0:0:0:0:0:0:6:0:0]
[COLOR:0:2:0:0:0:0:0:0:6:0:0]
[COLOR:0:3:6:0:0:0:0:0:0:0:0]
[TILE:1:1:' ':' ':'=']
[TILE:1:2:'-':' ':8]
[TILE:1:3:' ':' ':150]
[COLOR:1:1:0:0:0:0:0:0:6:0:0]
[COLOR:1:2:6:0:0:0:0:0:6:0:0]
[COLOR:1:3:0:0:0:0:0:0:6:0:0]
[TILE:2:1:'-':' ':8]
[TILE:2:2:' ':' ':8]
[TILE:2:3:' ':150:' ']
[COLOR:2:1:6:0:0:0:0:0:6:0:0]
[COLOR:2:2:0:0:0:0:0:0:6:0:0]
[COLOR:2:3:0:0:0:6:0:0:0:0:0]
[TILE:3:1:150:' ':8]
[TILE:3:2:' ':' ':8]
[TILE:3:3:' ':240:' ']
[COLOR:3:1:6:0:0:0:0:0:6:7:0]
[COLOR:3:2:0:0:0:0:0:0:6:7:0]
[COLOR:3:3:0:0:0:7:0:1:0:0:0]
[BUILD_ITEM:1:BUCKET:NONE:NONE:NONE][EMPTY][CAN_USE_ARTIFACT]
[BUILD_ITEM:1:NONE:NONE:NONE:NONE][BUILDMAT][WORTHLESS_STONE_ONLY][CAN_USE_ARTIFACT]
[BUILDING_WORKSHOP:ZAJADIAN_SHOP]
[NAME:Zajadian Shop]
[NAME_COLOR:7:0:1]
[DIM:3:3]
[WORK_LOCATION:2:2]
[BUILD_LABOR:ZAJADIAN_SHOP]
[BUILD_KEY:CUSTOM_SHIFT_B]
[BLOCK:1:0:0:0]
[BLOCK:2:0:0:0]
[BLOCK:3:0:0:0]
[TILE:0:1:' ':' ':150]
[TILE:0:2:' ':' ':'/']
[TILE:0:3:'-':' ':' ']
[COLOR:0:1:0:0:0:0:0:0:6:0:0]
[COLOR:0:2:0:0:0:0:0:0:6:0:0]
[COLOR:0:3:6:0:0:0:0:0:0:0:0]
[TILE:1:1:' ':' ':'=']
[TILE:1:2:'-':' ':8]
[TILE:1:3:' ':' ':150]
[COLOR:1:1:0:0:0:0:0:0:6:0:0]
[COLOR:1:2:6:0:0:0:0:0:6:0:0]
[COLOR:1:3:0:0:0:0:0:0:6:0:0]
[TILE:2:1:'-':' ':8]
[TILE:2:2:' ':' ':8]
[TILE:2:3:' ':150:' ']
[COLOR:2:1:6:0:0:0:0:0:6:0:0]
[COLOR:2:2:0:0:0:0:0:0:6:0:0]
[COLOR:2:3:0:0:0:6:0:0:0:0:0]
[TILE:3:1:150:' ':8]
[TILE:3:2:' ':' ':8]
[TILE:3:3:' ':240:' ']
[COLOR:3:1:6:0:0:0:0:0:6:7:0]
[COLOR:3:2:0:0:0:0:0:0:6:7:0]
[COLOR:3:3:0:0:0:7:0:1:0:0:0]
[BUILD_ITEM:1:NONE:NONE:NONE:NONE][BUILDMAT][WORTHLESS_STONE_ONLY][CAN_USE_ARTIFACT]
~You can copy and paste the above code to replace what is in the "vanillla" version of the building_custom.txt
Step 2 - The Reaction.
-You should have a file named reaction_other.txt (I'm not going to copy and paste mine cause I have Deon's stuff in there as well.)
-Open this file and at the very bottom, make sure it's separated by a space and add this...
[REACTION:MAKE_STONE_BARREL]
[NAME:Shape stone into a barrel]
[BUILDING:ZAJADIAN_SHOP:b]
[REAGENT:A:1:BOULDER:NONE:INORGANIC:NONE]
[PRODUCT:100:1:BARREL:NONE:GET_MATERIAL_FROM_REAGENT:A:NONE]
[SKILL:MASONRY]
Step 3 - Permitting the use of both the reaction and the building.
-You should have a file entity_default.txt
-Open this file the beginning should look something like...
entity_default
[OBJECT:ENTITY]
[ENTITY:MOUNTAIN]
[ADVENTURE_TIER:1]
[CIV_CONTROLLABLE]
[CREATURE:DWARF]
[TRANSLATION:DWARF]
[DIGGER:ITEM_WEAPON_PICK]
[WEAPON:ITEM_WEAPON_DAGGER_LARGE]
[WEAPON:ITEM_WEAPON_AXE_BATTLE]
[WEAPON:ITEM_WEAPON_HAMMER_WAR]
[WEAPON:ITEM_WEAPON_SWORD_SHORT]
[WEAPON:ITEM_WEAPON_SPEAR]
[WEAPON:ITEM_WEAPON_MACE]
[WEAPON:ITEM_WEAPON_CROSSBOW]
[AMMO:ITEM_AMMO_BOLTS]
[WEAPON:ITEM_WEAPON_AXE_TRAINING]
[WEAPON:ITEM_WEAPON_SWORD_SHORT_TRAINING]
[WEAPON:ITEM_WEAPON_SPEAR_TRAINING]
[WEAPON:ITEM_WEAPON_HAMMER_TRAINING]
[WEAPON:ITEM_WEAPON_MACE_TRAINING]
[ARMOR:ITEM_ARMOR_BREASTPLATE:COMMON]
[ARMOR:ITEM_ARMOR_MAIL_SHIRT:COMMON]
[ARMOR:ITEM_ARMOR_LEATHER:COMMON]
[ARMOR:ITEM_ARMOR_COAT:COMMON]
[ARMOR:ITEM_ARMOR_SHIRT:COMMON]
[ARMOR:ITEM_ARMOR_CLOAK:COMMON]
[ARMOR:ITEM_ARMOR_TUNIC:COMMON]
[ARMOR:ITEM_ARMOR_TOGA:UNCOMMON]
[ARMOR:ITEM_ARMOR_VEST:COMMON]
[ARMOR:ITEM_ARMOR_DRESS:COMMON]
[ARMOR:ITEM_ARMOR_ROBE:COMMON]
[HELM:ITEM_HELM_HELM:COMMON]
[HELM:ITEM_HELM_CAP:COMMON]
[HELM:ITEM_HELM_HOOD:COMMON]
-This goes on quite a ways, I normally add my permitted stuff with the other ones, which look along the lines of... (I have Deon's stuff so yours won't look like mine.)
-You're going to add you permitted reaction and building right before this.
[PERMITTED_REACTION:TAN_A_HIDE]
[PERMITTED_REACTION:RENDER_FAT]
[PERMITTED_REACTION:MAKE_SOAP]
[PERMITTED_REACTION:MAKE_PEARLASH]
[PERMITTED_REACTION:MAKE_PLASTER_POWDER]
[PERMITTED_REACTION:BITUMINOUS_COAL_TO_COKE]
[PERMITTED_REACTION:LIGNITE_TO_COKE]
[PERMITTED_REACTION:PEAT_TO_COKE]
[PERMITTED_REACTION:BRASS_MAKING]
[PERMITTED_REACTION:BRASS_MAKING2]
[PERMITTED_REACTION:BRONZE_MAKING]
[PERMITTED_REACTION:BRONZE_MAKING2]
[PERMITTED_REACTION:ELECTRUM_MAKING]
[PERMITTED_REACTION:ELECTRUM_MAKING2]
[PERMITTED_REACTION:BILLON_MAKING]
[PERMITTED_REACTION:BILLON_MAKING2]
[PERMITTED_REACTION:PEWTER_FINE_MAKING]
[PERMITTED_REACTION:PEWTER_FINE_MAKING2]
[PERMITTED_REACTION:PEWTER_TRIFLE_MAKING]
[PERMITTED_REACTION:PEWTER_TRIFLE_MAKING2]
[PERMITTED_REACTION:PEWTER_LAY_MAKING]
[PERMITTED_REACTION:PIG_IRON_MAKING]
[PERMITTED_REACTION:NICKEL_SILVER_MAKING]
[PERMITTED_REACTION:BLACK_BRONZE_MAKING]
[PERMITTED_REACTION:STERLING_SILVER_MAKING]
[PERMITTED_REACTION:ROSE_GOLD_MAKING]
[PERMITTED_REACTION:BISMUTH_BRONZE_MAKING]
[PERMITTED_REACTION:ADAMANTINE_WAFERS]
[PERMITTED_REACTION:STEEL_MAKING_PATTERNWELD]
[PERMITTED_REACTION:STEEL_MAKING_PATTERNWELD_MAGMA]
[PERMITTED_REACTION:HARDEN_IRON]
[PERMITTED_REACTION:HARDEN_IRON_MAGMA]
[PERMITTED_REACTION:STEEL_MAKING_CRUCIBLE]
[PERMITTED_REACTION:STEEL_MAKING_MAGMA_CRUCIBLE]
[PERMITTED_REACTION:WOOTZ_STEEL_MAKING]
[PERMITTED_REACTION:WOOTZ_STEEL_MAKING_MAGMA]
[PERMITTED_REACTION:STEEL_MAKING_BATCH]
[PERMITTED_REACTION:STEEL_MAKING_BATCH_MAGMA]
[PERMITTED_REACTION:STEEL_MAKING_BATCH_BARS]
[PERMITTED_REACTION:STEEL_MAKING_BATCH_MAGMA_BARS]
[PERMITTED_REACTION:CHARCOAL_BURNING]
-Again, I have some of Deon's stuff in there potentially, so keep that in mind, you might not have all the entries I have.
-What you are going to add just before [PERMITTED_REACTION:TAN_A_HIDE] is the following
[PERMITTED_BUILDING:ZAJADIAN_SHOP]
[PERMITTED_REACTION:MAKE_STONE_BARREL]
Step 4 - Testing.
-It's safest to always generate a new world when you've been playing with the raws unless you know exactly what you're doing. A safe motto to follow is if you don't know if it needs a regen or not, just regen.
-You are going to need a stone available to be able to use the reaction, a stone block won't be accepted.
-If you don't have the required amount of reagents, the reaction WILL NOT show up.
-If you don't have the permitted building and permitted reaction, the both WILL NOT show up.
-If you only have the permitted building, but not the reaction or visa versa. You'll have trouble there too.
-------------
I hope that helps.